Intrusion Detection System for a Healthcare Web Portal
Loading...
URL
Journal Title
Journal ISSN
Volume Title
Perustieteiden korkeakoulu |
Master's thesis
Unless otherwise stated, all rights belong to the author. You may download, display and print this publication for Your own personal use. Commercial use is prohibited.
Authors
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, TuomasThesis advisor
Nyrkkö, SeppoKeywords
intrusion detection, log data, web application, information security, machine learning