Intrusion Detection System for a Healthcare Web Portal

Loading...
Thumbnail Image

URL

Journal Title

Journal ISSN

Volume Title

Perustieteiden korkeakoulu | Master's thesis

Date

2021-01-25

Department

Major/Subject

Security and Cloud Computing

Mcode

SCI3084

Degree programme

Master’s Programme in Computer, Communication and Information Sciences

Language

en

Pages

47 + 3

Series

Abstract

Web application security is a growing concern as an increasing number of services leverage web platforms. Failure to implement proper monitoring of application security can lead to security breaches such as data leaks going unnoticed for long periods. Log data can be utilized as an asset for security monitoring as it provides detailed information about past events in the application. However, managing large volumes of log data from different sources and effectively processing them can be challenging. In this thesis, we implement a log monitoring pipeline coupled with a log-based intrusion detection system for a medical laboratory information management system (CLIMS). We show how multiple different types of log sources can be effectively used to detect suspicious activity. The thesis is focused on anomaly-based detection, which models normal application behavior and detects data outliers. The test results show that a hashing-based white-listing approach can be effectively used to detect SQL injections. We also show that Isolation Forest can be applied to detect malicious web-requests from web-proxy log data. Finally, we show that an LSTM neural network can detect anomalies in a sequence of application logs with varying results. In particular, single rare messages have a far more significant impact on the sequence anomaly score than a random ordering of more common messages. The experiments proved that the SQLI and web-request detectors are ready for production deployment, while the application log detector requires further optimization.

Web-sovellusten tietoturva on kasvava huolenaihe, sillä yhä useammat palvelut siirtyvät hyödyntämään verkkosovelluksia. Huonosti toteutettu sovelluksen tietoturvavalvonta voi johtaa tietoturvaloukkausten, kuten tietovuotojen, huomaamatta jäämiseen pitkiksikin ajoiksi. Lokidataa voidaan hyödyntää tietoturvavalvonnassa, sillä se sisältää yksityiskohtaista tietoa sovelluksen tapahtumista. Useista lähteistä peräisin olevat suuret lokidatamäärät voivat kuitenkin olla vaikeasti hallittavissa ja niiden tehokas hyödyntäminen haastavaa. Tässä diplomityössä toteutamme lokidataan perustuvan tunkeilijan havaitsemisjärjestelmän laboratorionäytteiden hallintaan tarkoitettua CLIMS-verkkosovellusta varten. Näytämme, kuinka useasta eri lähteestä tulevaa lokidataa voidaan hyödyntää tehokkaasti epäilyttävän toiminnan havaitsemiseksi. Diplomityö keskittyy erityisesti anomalioiden tunnistamiseen perustuvaan lähestymistapaan, jossa mallinnetaan sovellukselle tyypillinen käyttäytyminen ja pyritään havaitsemaan poikkeavuudet datassa. Koetulokset osoittavat, että lokidatasta koottua sallittujen tiivisteiden listaa voidaan hyödyntää tehokkaasti SQL-injektioiden havaitsemisessa. Näytämme myös, että Isolation Forest -koneoppimismallilla voidaan havaita tarkasti poikkeuksellisia palvelinpyyntöjä web-välityspalvelimen lokeista. Lisäksi näytämme, kuinka LSTM-neuroverkko kykenee havaitsemaan poikkeuksellisia aikasarjoja sovelluksen lokidatasta vaihtelevalla tarkkuudella. Erityisesti näytämme, kuinka yksittäiset harvinaiset lokiviestit aiheuttavat neuroverkossa huomattavasti suurempia anomalia-arvoja kuin poikkeavat järjestykset tyypillisissä lokiviesteissä. Kokeet osoittivat, että SQL-injektioiden ja haitallisten palvelinpyyntöjen tunnistamisen mallit ovat valmiita käytettäväksi tuotantoympäristöissä. Sovelluslokien anomaliantunnistamismalli sen sijaan vaatii lisää tutkimusta ja parannuksia.

Description

Supervisor

Aura, Tuomas

Thesis advisor

Nyrkkö, Seppo

Keywords

intrusion detection, log data, web application, information security, machine learning

Other note

Citation