Intrusion detection system for Android: Linux kernel system calls analysis

dc.contributorAalto-yliopistofi
dc.contributorAalto Universityen
dc.contributor.advisorCreech, Gideon
dc.contributor.authorBorek, Martin
dc.contributor.schoolPerustieteiden korkeakoulufi
dc.contributor.supervisorAura, Tuomas
dc.date.accessioned2017-09-04T10:33:00Z
dc.date.available2017-09-04T10:33:00Z
dc.date.issued2017-08-28
dc.description.abstractSmartphones provide access to a plethora of private information potentially leading to financial and personal hardship, hence they need to be well protected. With new Android malware obfuscation and evading techniques, including encrypted and downloaded malicious code, current protection approaches using static analysis are becoming less effective. A dynamic solution is needed that protects Android phones in real time. System calls have previously been researched as an effective method for Android dynamic analysis. However, these previous studies concentrated on analysing system calls captured in emulated sandboxed environments, which does not prove the suitability of this approach for real time analysis on the actual device. This thesis focuses on analysis of Linux kernel system calls on the ARMv8 architecture. Given the limitations of android phones it is necessary to minimise the resources required for the analyses, therefore we focused on the sequencing of system calls. With this approach, we sought a method that could be employed for a real time malware detection directly on Android phones. We also experimented with different data representation feature vectors; histogram, n-gram and co-occurrence matrix. All data collection was carried out on a real Android device as existing Android emulators proved to be unsuitable for emulating a system with the ARMv8 architecture. Moreover, data were collected on a human controlled device since reviewed Android event generators and crawlers did not accurately simulate real human interactions. The results show that Linux kernel sequencing carry enough information to detect malicious behaviour of malicious applications on the ARMv8 architecture. All feature vectors performed well. In particular, n-gram and co-occurrence matrix achieved excellent results. To reduce the computational complexity of the analysis, we experimented with including only the most commonly occurring system calls. While the accuracy degraded slightly, it was a worthwhile trade off as the computational complexity was substantially reduced.en
dc.format.extent90+1
dc.format.mimetypeapplication/pdfen
dc.identifier.urihttps://aaltodoc.aalto.fi/handle/123456789/27914
dc.identifier.urnURN:NBN:fi:aalto-201709046813
dc.language.isoenen
dc.programmeMaster's Degree Programme in Security and Mobile Computing (NordSecMob)en
dc.programme.majorSecurity and Mobile Computingen
dc.programme.mcodeT3011fi
dc.subject.keywordAndroiden
dc.subject.keywordseucurityen
dc.subject.keywordmalwareen
dc.subject.keyworddetectionen
dc.subject.keywordARMen
dc.subject.keywordsyscallsen
dc.titleIntrusion detection system for Android: Linux kernel system calls analysisen
dc.typeG2 Pro gradu, diplomityöfi
dc.type.ontasotMaster's thesisen
dc.type.ontasotDiplomityöfi
local.aalto.electroniconlyyes
local.aalto.openaccessyes

Files

Original bundle

Now showing 1 - 1 of 1
Loading...
Thumbnail Image
Name:
master_Borek_Martin_2017.pdf
Size:
478.87 KB
Format:
Adobe Portable Document Format