Research Article

Verbetering van Android-malwaredetectie via Swarm Intelligence en Autoencodertechnieken toegepast op API-aanroepanalyse

DOI:

10.3791/69398

December 30th, 2025

In This Article

Summary

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

Er wordt een hybride Android-malwaredetectieframework voorgesteld, waarbij geleerde feature-representaties en traditionele classifiers worden gebruikt om de detectienauwkeurigheid te verbeteren, handmatige feature engineering te verminderen en evoluerende malwaredreigingen effectief tegen te gaan.

Abstract

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

Malware Security Intelligence omvat het analyseren van applicaties en hun metadata om potentiële beveiligingsdreigingen te identificeren. Application Programming Interface (API)-aanroepen dienen als een waardevolle informatiebron voor het detecteren van malware. Het verkleinen van de feature-ruimte in malware-analyse verhoogt de efficiëntie van dreigingsidentificatie. Dit onderzoek streeft ernaar de belangrijkste API-aanroepfuncties te identificeren om de precisie van Android-malwaredetectie te verbeteren. Drie op zwermintelligentie gebaseerde optimalisatietechnieken – Firefly Optimization, Cuckoo Search Optimization en Ant Colony Optimization – worden naast Auto-Encoders gebruikt om de belangrijkste kenmerken te extraheren. Om deze op natuur geïnspireerde wrapper-gebaseerde methoden te evalueren, worden populaire machine learning-classifiers gebruikt, waaronder K-Nearest Neighbour (KNN), Random Forest (RF), Support Vector Machine (SVM), Decision Tree (DT) en Linear Regression (LR). Bovendien is aangetoond dat een hybride kunstmatige neurale classifier de prestaties van malwarecategorisatie verbetert. De effectiviteit van de voorgestelde methode wordt aangetoond door experimentele resultaten, die een nauwkeurigheid van 98,87% laten zien met slechts 7 van de 100 API-aanroepfuncties.

Introduction

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

Het populairste mobiele besturingssysteem is Android, dat gebaseerd is op Linux en een marktaandeel van 72,55% heeft1. In tegenstelling tot andere besturingssystemen die onderworpen zijn aan strenge wetten en auteursrechten, is Android een open-source platform dat bijdragen van ontwikkelaars wereldwijd verwelkomt. Maar vanwege de grote gebruikersbasis wordt het vaak getarget door virusaanvallen. Malware is de term voor kwaadaardige software die bedoeld is om de werking van computersystemen te compromitteren of misbruik te maken van privéinformatie. De meest voorkomende methode van malware-infiltratie in het Android-ecosysteem is via applicatiedownloads. Hoewel applicaties afkomstig van betrouwbare bronnen over het algemeen veilig zijn, kunnen applicaties die van niet-geverifieerde of kwaadaardige platforms zijn gedownload schadelijke software bevatten. Cybercriminelen maken vaak misbruik van beveiligingslekken in apparaten en zetten malware in om hun integriteit te schaden2.

Naarmate het aantal gebruikers blijft groeien, neemt ook het volume van waardevolle data die voor cyberaanvallers toegankelijk is toe. Een aanvaller kan hiervan misbruik maken door een kwaadaardige applicatie te verspreiden op officiële mobiele applicatiemarktplaatsen. Zodra een nietsvermoedende gebruiker de app installeert, krijgt de aanvaller per ongeluk toegang tot hun apparaat. Gezien de toenemende prevalentie van dergelijke dreigingen zijn geavanceerde malwaredetectietechnieken essentieel om het enorme aantal kwaadaardige applicatiestegen te gaan. Er zijn verschillende bestaande technologieën ontwikkeld om Android-malware 6,7 te voorspellen. Deze benaderingen zijn echter voornamelijk gebaseerd op handtekening-gebaseerde detectie, waarbij digitale sporen in de applicatiecode worden geïdentificeerd. Deze handtekeningen, afkomstig uit de Android Package Kit (APK) van de software, worden gekoppeld aan een database van bekende vijandige patronen. Hoewel deze aanpak succesvol is in het detecteren van al gerapporteerde malware, kan het niet herkennen van nieuwe dreigingen die nog niet aan de database zijn toegevoegd. 8

Naarmate malware zich blijft ontwikkelen en de groeiende prevalentie ervan is, is het cruciaal om een oplossing te ontwikkelen die verschillendesoorten malware nauwkeurig kan detecteren terwijl tijd en rekenkracht worden geoptimaliseerd. Om malwaredetectie op Android-smartphones te verbeteren, is er veel werk verricht. Conventionele handtekening-gebaseerde detectietechnieken komen overeen met de handtekening van een APK-bestand met kwaadaardige handtekeningen die zijn geïdentificeerd en opgeslagen in een database. Maar deze methode werkt niet voor malware die nog niet is gevonden, wat de noodzaak benadrukt van meer geavanceerde detectiesystemen 10,11,12.

De hypothese die dit artikel wil testen is: het identificeren van verdachte API-aanroepen om de classificatienauwkeurigheid van goedaardige en kwaadaardige Android-applicaties te verbeteren. Het ontwikkelen en implementeren van een hybride classificatiemodel dat Auto-Encoders integreert met kunstmatige neurale netwerken. Het formuleren van een doelfunctie voor swarmintelligentieoptimalisatie, die het leerproces verbetert door straffen toe te voegen om de ontdekking van bijna optimale oplossingen te vergemakkelijken. Het onderzoeken van verschillende prestatie-indicatoren en het selecteren van de optimale methode voor Android-malwarevoorspelling.

Gerelateerd werk

Een opmerkelijke toename van diversiteit en volume van malware is het gevolg van het wijdverbreide gebruik van het Android-platform, wat onderzoekers heeft aangezet efficiënte detectie- en preventietechnieken te ontwikkelen 13,14,15. Door statistisch onderzoek pakten Deckard en Rasoolzadegan16 het probleem van onevenwichtige datasets bij Android-malwaredetectie aan. Om de data vooraf te verwerken en in balans te brengen, gebruikten ze de Synthetic Minority Oversampling Technique (SMOTE), under-sampling en rangschikkingstechnieken. Met KNN, SVM en Iterative Dichotomiser 3 (ID3) classifiers behaalde hun detectiemodel een grotere nauwkeurigheid van 98,69% wanneer de SMOTE-benadering werd gecombineerd met de KNN-classifier16.

Het gebruik van Term Frequency-Inverse Document Frequency (TF-IDF) voor Android-malwareidentificatie werd onderzocht door Priya en Visalakshi17 in een andere studie. Ze creëerden een toestemmingsbeoordelaar om rechten te scoren en te beoordelen, die vervolgens werden geclassificeerd met behulp van kunstmatige neurale netwerken. Deze methode presteerde beter dan bestaande systemen met een nauwkeurigheid van 94,22%. Daarnaast werd er door Yildiz et al.18 een feature-selectiemethode ontwikkeld om de classificatie van Android-malware te verbeteren, gebaseerd op lineaire regressie. Hun methode verkortte de trainingstijd en leverde een nauwkeurigheidstoename van 96,1% op. Om de nauwkeurigheid en efficiëntie bij Android-malwaredetectie te vergroten, benadrukt dit onderzoek gezamenlijk het belang van het aanpakken van problemen zoals functieselectie en onevenwichtige datasets.

Recursive Feature Selection (RFS) en een ensembleclassifier werden gebruikt in een model gepresenteerd door Al Sarahh et al.19 om de detectie van Android-malware te verbeteren. In deze methode wordt het LightGBM-algoritme gebruikt om de meest relevante kenmerken te classificeren die RFS heeft geïdentificeerd. De resultaten van het experiment toonden aan dat het model effectief was, met een classificatienauwkeurigheid van 99,5%. Voor de categorisering van Android-malware stelden Ding et al.20 ook een deep learning-architectuur voor die gebruikmaakt van een Convolutioneel Neural Network (CNN). In hun proces worden bytecodebestanden uit Android APK's gehaald en omgezet in tweedimensionale bytecode-matrices. Deze matrices worden gebruikt om het CNN-model te trainen, dat in experimenten een nauwkeurigheidspercentage van 95,1% behaalde. Dit onderzoek benadrukt hoe deep learning-modellen en feature-selectietechnieken gecombineerd kunnen worden met ensemble-classifiers om de nauwkeurigheid van Android-malwaredetectiesystemen te verhogen.

Door gebruik te maken van deep learning-technieken overwonnen Elayan en Mustafa21 de tekortkomingen van conventionele malwaredetectiemethoden in geüpdatete Android-systemen. Ze presteerden beter dan traditionele technieken door een Gated Recurrent Unit (GRU) te gebruiken om onderscheid te maken tussen kwaadaardige en onschuldige apps, met een nauwkeurigheid van 98,2%. Het Analytical Hierarchy Process (AHP) werd ook geïntegreerd in een risicogebaseerde fuzzy-techniek voor mobiele virusdetectie die werd voorgesteld door Arif et al.22. Naast het identificeren van malware evalueert hun systeem risiconiveaus en verdeelt het deze in vier groepen: extreem laag, laag, midden en hoog. Met deze grondige techniek was de algehele nauwkeurigheid 90,54%. De effectiviteit van geavanceerde machine learning-methoden, zoals fuzzy AHP-frameworks en GRU-gebaseerde deep learning-modellen, bij het verbeteren van de precisie en veerkracht van Android-malwaredetectiesystemen wordt aangetoond door deze studies.

Om de nadelen van handtekeninggebaseerde benaderingen te overwinnen, gebruikten Mercaldo en Santone23 audiosignaalverwerkingstechnieken om numerieke informatie uit applicatie-uitvoerbare bestanden te extraheren door deze om te zetten in audiobestanden. Hun methode, die gebruikmaakte van een neurale netwerkclassifier, leverde een detectienauwkeurigheid van 95,2% op. Om de moeilijkheden van arbeidsintensieve feature-engineering te overwinnen, presenteerden Zhang et al.24 TC-Droid, een automatisch kader dat gebruikmaakt van tekstclassificatietechnieken. Met een nauwkeurigheidsgraad van 96,6% analyseert deze methode tekstreeksen uit applicatieanalyserapporten met behulp van convolutionele neurale netwerken.

Met een nauwkeurigheid van 93,4% presenteerden Imtiaz et al.25 DeepAMD, een kunstmatige neurale netwerktechniek bedoeld voor de effectieve categorisering en vroege detectie van Android-malware. Firdaus et al.26 ontwikkelden een op genetische zoekopdracht gebaseerde featureselectietechniek voor statische analyse bij Android-malwaredetectie. Met een nauwkeurigheidspercentage van 95% presteerden functionele bomen beter dan andere machine learning-classifiers in de tests. Een kenmerkselectiemethode genaamd Delta_IDF werd gepresenteerd door Peynirci et al.27. Het berekent omgekeerde documentfrequentiewaarden op basis van tekenreeksvoorkoms in APK-bestanden. In vergelijking met andere algoritmen leverden hun experimenten bemoedigende resultaten op.

Shi et al.28 stelden een hybride CNN-DNN-raamwerk voor dat een sterke detectienauwkeurigheid aantoonde door de sterktes van convolutionele en dichte lagen te combineren voor feature-extractie en classificatie. Evenzo gaven Shu et al.29 een uitgebreide enquête naar CNN-gebaseerde Android-malwaredetectiemethoden, waarin hun sterke punten werden benadrukt bij het vastleggen van ruimtelijke afhankelijkheden binnen API- en opcode-sequenties. In de context van het Internet of Things (IoT) ontwikkelden Naeem et al.30 een gestapeld ensemble van diepe convolutionele netwerken voor malwareclassificatie, wat de robuustheid verbeterde in heterogene IoT-dreigingsomgevingen. Meer recentelijk introduceerden Shu en Dong31 LG-PN, een lokaal-wereldwijde fusiebenadering in prototypische netwerken, om de detectie van eerder onbekende Android-malware te verbeteren. Hoewel deze methoden opmerkelijk succes behaalden, zijn ze grotendeels afhankelijk van diepe convolutionele architecturen en vereisen ze aanzienlijke rekenkrachten. Daarentegen integreert het huidige werk zwermintelligentie met auto-encoder-gebaseerde featureselectie om de dimensionaliteit te verminderen en de efficiëntie te verbeteren, waardoor een complementair en lichtgewicht alternatief wordt geboden voor diepgaande CNN-gebaseerde oplossingen.

Verschillende eerdere studies hebben zich ook specifiek gericht op API-aanroep-gebaseerde detectie van Android-malware, aangezien API-sequenties sterke gedragsindicatoren zijn van kwaadaardige activiteiten. Zo stelden Karbab et al.32 voor om deep learning te gebruiken op reeksen API-methode-aanroepen om kwaadaardige applicaties te identificeren, waarmee werd aangetoond dat temporele patronen in API-gebruik malware effectief kunnen onderscheiden van goedaardige apps. Evenzo evalueerden Muzaffar et al.33 verschillende machine learning-modellen op API-aanroepkenmerken en benadrukten het belang van featureselectie en representatie voor het verbeteren van detectieprestaties. Hoewel deze werken het nut van API-niveau functies benadrukken, zijn de meeste afhankelijk van diepgaande sequentiemodellen of handgemaakte feature engineering, wat rekenkundig kostbaar of minder algemeen kan zijn. Daarentegen maakt deze studie gebruik van zwermintelligentie-algoritmen gecombineerd met autoencoders om automatisch de dimensie van API-kenmerken te verlagen en gebruikt vervolgens een hybride kunstmatige neuronale classifier om de detectieprestaties te verbeteren. Dit positioneert onze aanpak als een lichtgewicht maar effectief alternatief dat direct de uitdagingen van hoogdimensionale API-aanroepdata aanpakt.

Door de integratie van Kunstmatige Neurale Netwerken (ANN's) streeft de voorgestelde methodologie in deze studie ernaar om de detectie en categorisering van Android-malware te verbeteren. Ten eerste worden auto-encoders gebruikt in wrapper-gebaseerde featureselectietechnieken om de belangrijkste kenmerken te vinden die gevaarlijke apps onderscheiden van goedaardige. Om de effectiviteit van Android-malwareclassificatie te vergroten, wordt vervolgens een unieke kunstmatige neuronale classifier beoordeeld die ANN's combineert met inductieclassifiers.

Access restricted. Please log in or start a trial to view this content.

Protocol

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

De op wrapper gebaseerde feature-selectiemethode met behulp van auto-encoders wordt gebruikt in de voorgestelde architectuur voor Android-malwaredetectie, zoals weergegeven in Figuur 1. De dataset is verdeeld in 70:30 trainings- en testsubsets. Classificatie en functieselectie zijn de twee belangrijkste stappen in het malware-analyseproces.

Functieselectie (FS): Deze stap is iteratief zoeken naar de beste feature-subsets (zie Definitie 1) met behulp van op zwermintelligentie gebaseerde algoritmen, met name Cuckoo Search Optimization (CSO), Ant Lion Optimization (ALO) en Firefly Optimization (FO). Daarna verwerken auto-encoders de gekozen features om een gecomprimeerde weergave van de binnenkomende data te produceren. Een inductiebenadering gebruikt vervolgens de output van de auto-encoders om te beoordelen hoe goed deze functies onderscheid maken tussen gevaarlijke en goedaardige apps. Om een nauwkeurige categorisering van latere gevallen mogelijk te maken, bouwt het inductie-algoritme een classifier door de featureruimte af te wijzen op een verzameling klasselabels.

Classificatie: Met behulp van de voorgestelde Kunstmatige Neuronale Classifier en bekende inductiemethoden wordt de verminderde set functies uit de featureselectiefase in deze fase geëvalueerd om te zien hoe effectief het Android-malware kan detecteren.

Door gebruik te maken van geavanceerde classificatiemethoden en zich te concentreren op de meest informatieve functies, streeft deze methodologie ernaar de nauwkeurigheid en efficiëntie van Android-malwaredetectie te verbeteren.

Selectie van functies

Een cruciale stap in machine learning is de selectie van functies, waarbij wordt bepaald welke features het meest betrouwbaar, relevant en niet-redundant zijn voor modelconstructie. Het methodisch verkleinen van featuresets wordt steeds belangrijker naarmate datasets in omvang en complexiteit blijven groeien. Het hoofddoel van feature-selectie is het maximaliseren van modelprestaties terwijl de rekenkosten worden verlaagd. Repetitieve en onnodige kenmerken worden verwijderd, waardoor het proces zich kan concentreren op variabelen die het meest belangrijk zijn voor het model. In plaats van te vertrouwen op het machine learning-algoritme om significante kenmerken te identificeren, zijn de volgende voordelen van featureselectie vóór modeltraining:

Vereenvoudigde modellen: Het verminderen van het aantal invoervariabelen leidt tot eenvoudigere modellen die makkelijker te interpreteren en te begrijpen zijn.

Variantievermindering: Door zich te richten op essentiële kenmerken helpt feature-selectie de modelvariantie te verminderen, waardoor overfitting wordt beperkt en generalisatie naar nieuwe data wordt verbeterd.

Verminderde trainingstijd: Een kleinere set functies vermindert de rekenlast, wat resulteert in snellere modeltraining en evaluatie.

Mitigatie van de Vloek van Dimensionaliteit: Hoogdimensionale data kan uitdagingen opleveren zoals verhoogde complexiteit en overfitting; Featureselectie pakt deze problemen aan door de feature-ruimte te beperken tot de meest informatieve variabelen.

Definitie 1 van feature-selectie

Denk aan een inducer I en een dataset D die een distributie D heeft over een gelabelde instantieruimte en features bevat (x1,x 2,x 3,... ,xn). De deelverzameling van kenmerken die de nauwkeurigheid van de classifier C=I(D) optimaliseert, staat bekend als de Optimale feature-subset Xopt.

Bij ongecontroleerde feature-selectie proberen wrapper-gebaseerde benaderingen de optimale combinatie van features te identificeren die de modelprestaties verbeteren. Door systematisch features toe te voegen of te verwijderen, vaak via hebzuchtige algoritmen, evalueren deze methoden verschillende modellen om de meest impactvolle features voor modelontwikkeling te selecteren. Dit proces is afgebeeld in Figuur 2.

Voor feature-selectie worden zwermintelligentie-algoritmen zoals Firefly Optimization (FO), Cuckoo Search Optimization (CSO) en Ant Lion Optimization (ALO) gebruikt om conventionele hebzuchtige tactieken te overtreffen. De objectieve functie die in de fitheidsevaluatiefase wordt gekozen, heeft een significante invloed op de effectiviteit van deze algoritmen. Zowel het aantal gekozen features als de fout van het model aan het einde van elke iteratie worden meegenomen in de iteratieve, op wrapper gebaseerde featureselectieprocedure om de geschiktheid van de geselecteerde features te evalueren. Vergelijking (1) formaliseert deze evaluatie.

Vergelijking 3 (1)

De straf van het leeralgoritme voor fouten die tijdens de fitnessevaluatie worden gemaakt, wordt weergegeven door τ in deze vergelijking, waarbij τ ∈ [0,1]. De lengte van de gekozen feature-deelverzameling wordt aangeduid met de variabele l, en het totale aantal features wordt weergegeven door de variabele u.

Auto-encoders

Neurale netwerken die gespecialiseerd zijn in het leren van gecomprimeerde representaties van invoerdata worden autoencoders genoemd. Een encoder en een decoder zijn de twee hoofdonderdelen ervan. Terwijl de decoder probeert de oorspronkelijke invoer uit deze gecomprimeerde vorm te herstellen, verwerkt de encoder de invoergegevens en comprimeert deze tot een latente ruimterepresentatie. Machine learning modeltraining wordt eenvoudiger gemaakt doordat de encoder waardevolle kenmerken uit onverwerkte data kan halen zodra deze is getraind.

De voorgestelde autoencoderarchitectuur (zoals getoond in Figuur 3) bevat een encoder bestaande uit een invoerlaag met N knooppunten, gevolgd door twee verborgen lagen die respectievelijk N*2 en N knooppunten bevatten. Er is een tweede verborgen laag met N/2 knooppunten, de latente ruimte genoemd. Met twee verborgen lagen van [N, N*2] knooppunten repliceert de decoder deze structuur, eindigend met een uitvoerlaag van N knooppunten.

Elke verborgen laag wordt gevolgd door batchnormalisatie om het trainingsproces te versnellen en te stabiliseren, en alle lagen gebruiken de LeakyReLU-activatiefunctie om eventuele verdwijningsgradiëntproblemen aan te pakken. Vergelijking (2) geeft een wiskundige definitie van de LeakyReLU-activatiefunctie:

Vergelijking 4 (2)

Waar hθ(x), wordt verkregen met behulp van Vergelijking (3)

Vergelijking 6(3)

Hier vertegenwoordigt xi=(x1,x 2,...,xn) de invoerwaarden voor de knooppunten, terwijl wi=(w1,w 2,...,wn) de gewichten aanduidt die aan deze knopen zijn gekoppeld. Tijdens het leerproces worden de gewichten aangepast nadat ze aanvankelijk willekeurig binnen het bereik zijn toegewezen [0,1]. Om te voorkomen dat de parameters door de oorsprong gaan, wordt op elke laag een biasterm toegevoegd. Vergelijking (4) definieert de drempel, en als de output uit vergelijking (3) deze overschrijdt, wordt een knooppunt geactiveerd.

Vergelijking 9 (4)

Optimalisatie van de functie van kenmerken op basis van mierenleeuwenomhulling (ALWFSO)

De Ant Lion Optimizer (ALO) modelleert het natuurlijke roofgedrag van mierenleeuwen en werd voor het eerst gepresenteerd door Seyed Ali Mirjalili34. Dit optimalisatie-algoritme identificeert efficiënt optimale oplossingen, ongeacht de initiële parameterwaarden. ALO vertoont snelle convergentie en beheert zowel gehele als discrete beperkingen effectief. Prooivangst, vallen maken, mieren vangen, willekeurige mierenbeweging en vallen repareren zijn de stappen die het jachtproces in ALO vormen.

In de context van het Ant Lion Optimizer (ALO)-algoritme vertegenwoordigen mieren kandidaatoplossingen die willekeurige zoekopdrachten uitvoeren in de oplossingsruimte, terwijl antlions overeenkomen met de vallen of gidsen die de bewegingen van de mieren beïnvloeden op basis van fitnesswaarden. Deze dubbele populatie modelleert het natuurlijke roofzuchtige gedrag van mierenleeuwen die mieren vangen. Aan het begin worden de populaties van zowel mieren als mierenleeuwen willekeurig geïnitialiseerd. Mierenleeuwen worden voor elke mier geselecteerd met behulp van het selectiemechanisme van het roulettewiel, gevolgd door een random walk-proces (zoals getoond in Algoritme-1). Vergelijking (5) beschrijft vervolgens hoe deze wandeling wordt genormaliseerd.

Vergelijking 10 (5)

Aanvankelijk worden de populaties van mieren en mierenleeuwen willekeurig gecreëerd. Voor elke mier wordt een antlion gekozen met behulp van een roulettewielmechanisme, waardoor een willekeurige wandeling mogelijk is die wordt genormaliseerd met vooraf bepaalde formules. Dit proces zorgt ervoor dat de bewegingen van mieren worden beïnvloed door de posities van mierenleeuwen, waardoor het natuurlijke jachtproces effectief wordt gesimuleerd. De positie van elke mier wordt vervolgens bijgewerkt op basis van deze interactie, waardoor de zoektocht naar optimale oplossingen wordt geleid.

Door zijn architectuur kan het ALO-algoritme effectief ingewikkelde zoekruimtes doorkruisen, waardoor het een krachtig hulpmiddel is om diverse optimalisatieproblemen op te lossen. De fitness van elke mier wordt beoordeeld aan het einde van elke herhaling. Zoals getoond in Algoritme-1, wordt de mier vervangen door de mier als de mier geschikter is dan zijn tegenhanger. In dit geval Vergelijking 11geeft , de locatie van dei-de mier bij iteratie t aan; I is een verhouding; Vergelijking 13 geeft de locatie aan van dej-de antleeuw bij iteratie t; Vergelijking 15 is de elite voor de willekeurige wandeling bij iteratie t, die wordt gekozen door het roulettewiel; en Vergelijking 16 is de willekeurige wandeling van de antlion bij iteratie t, die ook wordt bepaald door het roulettewiel. Na elke cyclus wordt de wereldwijd optimale oplossing, bevestigd door de geïntegreerde wrapper-classifier, teruggegeven.

Algoritme 1: ALWFSO
Definieer de doelstellingsfunctie: f(x):x=(x1,x 2,...,xd)
Initialisatie van de kolonie mieren en mierleeuwen willekeurig
Berekening van de fitheid van mier en mierenleeuw
Kies de beste mierenleeuwen en ga ervan uit dat ze elite zijn.
Herhaal totdat de beëindigingsvoorwaarde is voldaan of f(x):x=(x1,x 2,...,xd)
Voor elke mieren-mierlion selectie: Gebruik een Roulette Wheel Selectiemechanisme om probabilistisch een antlion te kiezen die de beweging van de mier beïnvloedt
X(t) = [0,cum_sum(2r(t1) - 1),cum_sum(2r(t2) - 1),...,cum_sum(2r(tn)-1)]
Vergelijking 21
Vergelijking 22
Einde van de mierenlus
Fitnessevaluatie: Herbereken de fitnesswaarden van alle mieren op basis van hun nieuwe posities.
Vervang mierleeuwen door mieren als de mieren superieure fitheid tonen
Als een mierenleeuw fitter wordt, dan
Vergelijking 23
Einde terwijl

Cuckoo search wrapper-gebaseerde feature-selectieoptimalisatie (CSWFSO)

Geïnspireerd door het broedparasitismegedrag van sommige koekoeksoorten, die hun eieren in de nesten van andere gastvogels leggen, ontwikkelden Xin-She Yang en Susah Deb35 in 2009 het Cuckoo Search-algoritme. Bij deze procedure legt elke koekoek een ei in een willekeurig gekozen nest. Toekomstige generaties zullen nesten erven met de beste eieren. De kans dat een gastvogel een buitenaards ei ziet is nul, en er zijn slechts een beperkt aantal gastnesten beschikbaar.

Algoritme 2: CSWFSO

Definieer de doelstellingsfunctie: f(x):x = (x1,x 2,...,xd)
Genereer willekeurig een initiële populatie van n host-nesten, elk overeenkomend met een kandidaatoplossing xi (i=1,2,3,...,n)
Herhaal dit totdat aan de stopvoorwaarde is voldaan of (tVoor een willekeurig geselecteerde koekoek i, produceer een nieuwe kandidaatoplossing met behulp van Lévy flight
Vergelijking 27
Bereken de fitness van de nieuw gegenereerde oplossing Fi [Voor maximalisatie geldt Fi α f(xi)]
Selecteer willekeurig een gastnest j uit de populatie n
als (Fi >Fj) dan wordt j vervangen door een nieuwe oplossing
einde als
Laat een deel van de slechtste netten vallen met (pa) fractie
Nieuwe nesten worden gebouwd in abandoned fraction (pa) met behulp van Vergelijking 34
Leg de beste oplossingen of nesten apart.
Door ze te rangschikken, kies je het beste nest of de beste oplossing die nu beschikbaar is.
De volgende generatie erft de beste oplossing die nu beschikbaar is.
Einde terwijl

Aan het begin worden alle nesten willekeurig geïnitialiseerd. Naarmate iteraties vorderen, wijzigt elke koekoek zijn positie binnen de oplossingsruimte via Lévy-vluchten, zoals beschreven in Algoritme 2. De stapgrootte wordt aangepast met ∝, en een sigmoid-operatie zet de continue waarden die door de Cuckoo Search Optimization (CSO) worden gegenereerd om in een binair formaat, zoals weergegeven in Vergelijkingen (6) en (7).

Vergelijking 35 (6)

Vergelijking 36(7)

Zoals getoond in Algoritme 2, waarbij Vergelijking 37 en Vergelijking 38 willekeurig gekozen nesten zijn en δ ∈ [0,1], worden aan het einde van elke iteratie sommige nesten verlaten en ververst met nieuwe kandidaatoplossingen.

Geïnspireerd door het broedparasitisme van de koekoeksvogel heeft het Cuckoo Search Optimization (CSO)-algoritme zich bewezen als een nuttig hulpmiddel voor featureselectietaken35. De techniek begint met het initialiseren van een populatie van nesten, die elk een mogelijke oplossing vormen in de context van wrapper-gebaseerde CSO-featureselectie. Een vooraf ingestelde doelfunctie wordt gebruikt om de fitheid van deze nesten te beoordelen. Met behulp van fitness-evaluaties bepaalt het algoritme bij elke iteratie de optimale oplossing—aangeduid als de globale beste. Om de oplossingsruimte beter te verkennen, wordt een deel van het nest, vertegenwoordigd door erwten, verwijderd en vervangen door nieuwe in overeenstemming met het CSO-protocol. De ingebedde wrapper-classifier bevestigt dat het algoritme het globaal optimale antwoord oplevert nadat alle iteraties zijn voltooid.

Firefly wrapper-gebaseerde feature-selectieoptimalisatie (FWFSO)

Algoritme 3: FWFSO
Definieer de Doelstellingsfunctie: f(x):x = (x1,x 2,...,xd)
Genereer een initiële zwerm van n vuurvliegjes, elk vertegenwoordigend een oplossing xi (i = 1,2,3,...,n)
Bepaal de lichtintensiteit I van elk vuurvliegje op basis van de waarde van de doelfunctie
Definieer lichtabsorptiecoëfficiënt γ
Herhaal totdat aan de stopvoorwaarde is voldaan of (t < MaxGeneration)
voor elke vuurvlieg i (∀ i=1,2,3,... ,n)
voor elke vuurvliegje j (∀ j=1,2,3,... ,i)
Krijg lichtintensiteiten van Ii enI j
als iki < jdan
Vergelijking 48
     Vergelijking 49
anders
Beweeg willekeurig de vuurvlieg om de zoekruimte te verkennen
einde als
Aantrekkelijkheid neemt af met de afstand als Vergelijking 51
Evalueer de bijgewerkte oplossing en pas de intensiteit van het vuurvliegje daarop aan
einde voor
einde voor
Rangschik de vuurvliegjes op basis van hun lichtintensiteit en identificeer degene met de hoogste helderheid als de huidige beste oplossing

Het Firefly Optimization-algoritme, geïntroduceerd door George Lindfield en John Penny36, bootst het natuurlijke gedrag van vuurvliegjes na om anderen aan te trekken. In dit algoritme is de aantrekkelijkheid van een vuurvliegje recht evenredig met zijn helderheid, terwijl de afstand tussen twee vuurvliegjes omgekeerd evenredig is met hun aantrekkelijkheid. Als er geen helderdere vuurvliegjes in de buurt zijn, zal een vuurvliegje willekeurig bewegen.

Twee vuurvliegjes worden door hun helderheid tot elkaar aangetrokken; Een minder heldere vuurvliegje zal naar een helderdere neig trekken. Willekeurige beweging wordt gebruikt wanneer er geen helderder vuurvliegje is. Met β0 als schoonheid wordt de afstand r=0 tussen twee vuurvliegjes gebruikt om hun aantrekkelijkheid te berekenen. De rjk afstand tussen vuurvliegjes j en k wordt als volgt berekend: Vergelijking 55 Hier noteren rji en rki de ruimtelijke componenten van dei-de dimensie voor vuurvliegjes jth en kth, respectievelijk, en n vertegenwoordigt het aantal dimensies. De beweging van een vuurvliegje naar een ander wordt bepaald door de mate van aantrekking tussen hen: Vergelijking 60. In deze vergelijking is rj de huidige positie van vuurvliegje j, γ is het licht Ranard is een willekeurig getal tussen 0 en 1, α is de mutatiesnelheid en de absorptiecoëfficiënt. Als er geen briljante vuurvliegjes meer zijn, zal het vuurvliegje willekeurig bewegen volgens αα. Na elke iteratie valideert de ingebedde wrapper-classifier de globale minimumoplossing, die vervolgens wordt teruggegeven.

Classifier

Zowel gestructureerde als ongestructureerde datasets kunnen worden geclassificeerd door ze op te splitsen in discrete groepen of klassen. Het doel is om de attributen van verse datapunten te gebruiken om hun klasse of label te voorspellen. Deze procedure bepaalt de categorie waartoe verse data behoort door een mapping functie van invoervariabelen naar discrete outputvariabelen te benaderen.

Random Forests, Decision Trees, K-Nearest Neighbors, Logistic Regression en Support Vector Machines behoren tot de inductie- of classificatie-algoritmen die worden gebruikt om de voorgestelde Android-malwaredetectieoplossing37 te evalueren. Bovendien presenteert dit werk de Artificial Neuronal Classifier, een revolutionaire hybride classifier die conventionele inductie-algoritmen combineert met kunstmatige neurale netwerken.

Kunstmatige neuronale classifier

Het voorgestelde ontwerp van de Kunstmatige Neuronale Classifier (ANC) combineert een inductieclassifier en Kunstmatige Neurale Netwerken (ANN), zoals te zien is in Figuur 4. Volgens deze architectuur wordt het ANN geleerd patronen en correlaties tussen de invoerkenmerken te identificeren. De inductieclassifier gebruikt de informatie die de ANN heeft geleerd om de precisie van het identificeren van kwaadaardige software van veilige software te verbeteren.

Na uitgebreide tests werd het ANN binnen de ANC geconfigureerd met drie volledig verbonden verborgen lagen, elk met M-knooppunten, gevolgd door een invoerlaag met N knooppunten. Er is een uitvoerlaag die is verbonden met de inductieclassifier na een verder volledig verbonden verborgen laag met M/2-knooppunten. Vergelijking (8) bepaalt het aantal knopen in de verborgen lagen:

Vergelijking 62 (8)

waarbij M het aantal knopen in een verborgen laag aanduidt, N het aantal invoerkenmerken vertegenwoordigt, en α een parameter is die varieert tussen 2 en 10. De activatiefunctie (zoals weergegeven in Vergelijking (9)) speelt een cruciale rol bij het bepalen of een neuron wordt geactiveerd, afhankelijk van het feit dat de output een bepaalde drempel overschrijdt.

Vergelijking 64 (9)

Hier wordt hθ(x) berekend volgens Vergelijking (3). De ANC gebruikt de Adam-optimizer om netwerkgewichten en leersnelheden aan te passen. In Adam worden de vervalsnelheden voor de eerste momentschatting Vergelijking 65 en de tweede momentschatting Vergelijking 66 voor elk gewicht ωij respectievelijk aangeduid met β1 en β2. Laat N de leersnelheid vertegenwoordigen. De updateregels voor Adam worden weergegeven in Vergelijkingen (10) en (11):

Vergelijking 70 (10)

Vergelijking 71 (11)

De bias-gecorrigeerde eerste en tweede momentschattingen, Vergelijking 72 en Vergelijking 73, worden berekend met behulp van vergelijkingen (12) en (13):

Vergelijking 74 (12)

Vergelijking 75 (13)

Deze berekeningen zorgen ervoor dat de optimizer de juiste leersnelheden voor elk gewicht aanhoudt, wat efficiënte en effectieve training van het ANC mogelijk maakt.

De gewichtsupdateregel voor elke verbinding in het neurale netwerk wordt gedefinieerd door Vergelijking (14):

Vergelijking 76 (14)

Na het bijwerken van de gewichten van het neurale netwerk wordt de prestatie beoordeeld met behulp van een verliesfunctie die het verschil meet tussen de voorspelde en werkelijke outputs. In dit model wordt hiervoor de Gemiddelde Absolute Fout (MAE), zoals gedefinieerd in Vergelijking (15), gebruikt:

Vergelijking 77 (15)

In deze context vertegenwoordigt yi de daadwerkelijke output, Vergelijking 79 de voorspelde output, en n het totale aantal outputinstanties. Nadat het neurale netwerk over een bepaald aantal epochs is getraind, worden de geleerde representaties uit de featurespace overgedragen aan de inductieclassifier om het verschil te maken tussen malware en goedaardige software.

De voorgestelde Kunstmatige Neuronale Classifier (ANC) functioneert als een hybride raamwerk dat de feature-learningmogelijkheden van een Kunstmatig Neural Netwerk (ANN) combineert met de beslissingskwaliteiten van traditionele inductieclassifiers, zoals Random Forest en Decision Tree. In dit ontwerp verwerkt de ANN eerst de geselecteerde kenmerken die van de autoencoder worden verkregen om complexe patronen en correlaties tussen invoerattributen te leren. De resulterende representaties die worden geleerd, worden vervolgens doorgegeven aan de inductieclassifier, die de definitieve classificatie van Android-applicaties uitvoert als goedaardig of kwaadaardig. Op deze manier fungeert de ANC als een wrapper, waarbij conventionele classifiers worden versterkt met diepe feature-embeddings, terwijl hun interpreteerbaarheid behouden blijft. Dit hybride mechanisme stelt de ANC in staat zowel high-level feature-abstractie vanuit de ANN als robuuste besluitvorming van gevestigde machine learning-classifiers te benutten, wat resulteert in verbeterde detectienauwkeurigheid en generalisatie.

Experimentele opstelling

Een 64-bit Windows 10-besturingssysteem, met een i5-processor - 2,30 GHz, 8 GB RAM en een harde schijf van 2 TB, werd gebruikt in de experimentele opstelling. Python 3.7 werd gebruikt als programmeertaal, en het Jupyter-platform was opgezet om machine learning- en deep learning-pakketten mogelijk te maken.

De IEEE Dataport leverde de API-aanroepsequentiegegevens van het experiment, die 43.876 sequenties omvatten - waarvan 42.797 als malware en 1.079 als goodware werden geclassificeerd. Virus Total werd gebruikt voor verificatie, en de Cuckoo Sandbox-omgeving werd gebruikt voor gegevensverzameling. Tabel 1 geeft een uitgebreide uitleg van de API-aanroepsequenties.

Access restricted. Please log in or start a trial to view this content.

Results

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

Verschillende prestatie-indicatoren, zoals Mean Squared Error (MSE), Root Mean Squared Error (RMSE), Precision, Recall, F1-Score en Accuracy, worden gebruikt in het voorgestelde Android-malwaredetectiesysteem om classificatienauwkeurigheid te beoordelen. Hieronder volgt een definitie van deze maten.

Vergelijking 80

Access restricted. Please log in or start a trial to view this content.

Discussion

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

De dreigingen van Android-malware nemen toe, waarbij tegenstanders steeds geavanceerdere ontwijkingstechnieken gebruiken. Android-gebaseerde mobiele systemen en applicaties spelen een cruciale rol in slimme steden en industriële omgevingen. Het waarborgen van de veiligheid van deze systemen, vooral in zulke kritieke domeinen, vereist robuuste mechanismen voor malwaredetectie. Onlangs heeft onderzoek naar malwaredetectie op basis van machine learningveel aandacht gekrege...

Access restricted. Please log in or start a trial to view this content.

Disclosures

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

Geen belangenconflicten of externe invloeden hebben de uitkomsten van dit werk beïnvloed. Alle gepresenteerde methoden, resultaten en interpretaties zijn origineel en onbevooroordeeld

Acknowledgements

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

Ik wil mijn oprechte dank uitspreken aan mijn gids en KLU, die dit werk hebben ondersteund. Hun begeleiding, feedback en aanmoediging waren van onschatbare waarde gedurende de ontwikkeling van dit project.

Access restricted. Please log in or start a trial to view this content.

Materials

List of materials used in this article
NameCompanyCatalog NumberComments
Anaconda NavigatorAnaconda, Inc.Navigator-2023
Google ColabGoogle LLCN/A
Jupyter NotebookProject JupyterN/A
PythonPython Software Foundation>=3.9
PyTorchFacebook AI Research>=2.0
Scikit-learnCommunity Driven>=1.0
TensorFlowGoogle Brain>=2.8
Windows Operating SystemMicrosoft Corporation11

References

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,
  1. Stat Counter. Mobile operating systems' market share worldwide. , https://gs.statcounter.com/os-market-share/mobile/worldwide (2025).
  2. Daj, A. C., Mateescu, A., Endre-Laszlo, A., Baciu, A., Flondor, E. Malicious-google-play-apps-bypassed-android-security. , https://www.bitdefender.com/en-us/blog/labs/malicious-google-play-apps-bypassed-android-security (2025).
  3. Han, Q., Subrahmanian, V. S., Xiong, Y. Android Malware Detection via (Somewhat). IEEE Trans Inf Forensics Secur. 15, 3511-3525 (2020).
  4. De Lorenzo, A., Martinelli, F., Medvet, E., Mercaldo, F., Santone, A. Visualizing the outcome of dynamic analysis of Android malware with VizMal. J Info Security Appl. 50, 102423(2020).
  5. Xu, J., Li, Y., Deng, R., Xu, K. SDAC: A Slow-Aging Solution for Android Malware Detection Using Semantic Distance Based API Clustering. IEEE Trans Dependable Secure Comput. , 1-15 (2020).
  6. Mahindru, A., Sangal, A. L. A feature selection technique to detect malware from Android using Machine Learning Techniques. Multimed Tools Appl. 80 (9), 13271-13323 (2021).
  7. Hasan, H., Ladani, B. T., Zamani, B. MEGDroid: A model-driven event generation framework for dynamic android malware. Info Soft Tech. 135, 106569(2021).
  8. Premkumar, G., Santhosh, C. Automated Android Malware Detection Using Artificial Intelligence and Machine Learning. Int J Res Publicat Rev. 5 (4), 1950-1954 (2024).
  9. Liu, X., Du, X., Lei, Q., Liu, K. Multifamily Classification of Android Malware With a Fuzzy Strategy to Resist Polymorphic Familial Variants. IEEE Access. 8, 156900-156914 (2020).
  10. Detection of Malware under Android Mobile Application. Hani, S. I., Sahib, N. M. 3rdInt Conf Eng Tech Appl, , 179-184 (2020).
  11. Jiang, J., et al. Android Malware Family Classification Based on Sensitive Opcode. IEEE Symp Comp Comm (ISCC). , 1-7 (2019).
  12. Xiong, P., Wang, X., Niu, W., Zhu, T., Li, G. Android malware detection with contrasting permission patterns. China Comm. 11 (8), 1-14 (2014).
  13. Daoudi, N., Allix, K., Bissyandé, T. F., Klein, J. Lessons Learnt on Reproducibility in Machine Learning Based Android Malware Detection. Emp Soft Eng. 26, 74(2021).
  14. Qaisar, Z. H., Li, R. Multimodal information fusion for android malware detection using lazy learning. Multimed Tools Appl. 81, 12077-12091 (2021).
  15. Rathore, H., Sahay, S. K., Nikam, P., Sewak, M. Robust android malware detection system against adversarial attacks using q-learning. Info Sys Front. 23, 867-882 (2021).
  16. Dehkordy, D. T., Rasoolzadegan, A. A new machine learning-based method for android malware detection on imbalanced dataset. Multimed Tools Appl. 80, 24533-24554 (2021).
  17. Dharmalingam, V. P., Palanisamy, V. A novel permission ranking system for android malware detection-the permission grader. J Ambient Intell Humanized Comput. 12, 5071-5081 (2021).
  18. Yildiz, O., Doğru, I. A. Permission-based Android malware detection system using feature selection based on genetic algorithm. Int J Soft Eng Knowledge Eng. 29 (2), 245-262 (2019).
  19. Sarah, N. A., Rifat, F. Y., Hossain Md, S., Narman, H. S. An Efficient Android Malware Prediction Using Ensemble machine learning algorithm. Procedia Comp Sci. 191, 184-191 (2021).
  20. Ding, Y., Zhang, X., Hu, J., Xu, W. Android malware detection method based on bytecode Image. J Ambient Intell Humanized Comp. 14, 6401-6410 (2020).
  21. Elayan, O. N., Mustafa, A. M. Android Malware Detection Using Deep Learning. Procedia Comp Sci. 184, 847-852 (2021).
  22. Arif, J. M., et al. Android mobile malware detection using fuzzy AHP. J Info Secur Appl. 61, 102929(2021).
  23. Mercaldo, F., Santone, A. Audio signal processing for Android malware detection and family identification. J Comp Virol Hacking Techs. 17, 139-152 (2021).
  24. Zhang, N., Tan, Y., Yang, C., Li, Y. Deep learning feature exploration for Android malware detection. Appl Soft Comp. 102, 1568-4946 (2021).
  25. Imtiaz, S. I., et al. DeepAMD: Detection and identification of Android malware using high-efficient Deep Artificial Neural Network. Future Generat Comp Syst. 115, 844-856 (2021).
  26. Firdaus, A., Anuar, N. B., Karim, A., Razak, M. F. A. Discovering optimal features using static analysis and a genetic search-based method for Android malware detection. Front Info Technol Elect Eng. 19, 712-736 (2018).
  27. Peynirci, G., Eminağaoğlu, M., Karabulut, K. Feature Selection for Malware Detection on the Android Platform Based on Differences of IDF Values. J Comp Sci Technol. 35 (4), 946-962 (2020).
  28. Dong, S., Shu, L., Nie, S. Android malware detection method based on CNN and DNN bybrid mechanism. IEEE Transact Ind Info. 20 (5), 7744-7753 (2024).
  29. Shu, L., Dong, S., Su, H., Huang, J. Android malware detection methods based on convolutional neural network: A survey. IEEE Trans Emerging Top Comp Intell. 7 (5), 1330-1350 (2023).
  30. Naeem, H., Cheng, X., Ullah, F., Jabbar, S., Dong, S. A deep convolutional neural network stacked ensemble for malware threat classification in internet of things. J Circuits Sys Comp. 31 (17), 2250302(2022).
  31. Shu, L., Dong, S. Enhanced unknown Android Malware Detection using LG-PN: A local-global fusion approach in prototypical networks. J Info Security Appl. 91, 104062(2025).
  32. Karbab, E. B., Debbabi, M., Derhab, A., Mouheb, D. Android Malware Detection using Deep Learning on API Method Sequences. arXiv. , (2017).
  33. Android Malware Detection Using API Calls: A Comparison of Feature Selection and Machine Learning Models. Muzaffar, A., Ragab Hassan, H., Lones, M. A., Zantout, H. Proc Int Conf Appl Cyber Security (ACS), , 3-12 (2021).
  34. Mirjalili, S. The Ant Lion Optimizer. Adv Eng Sof. 83, 80-98 (2015).
  35. Yang, X. Y., Deb, S. Cuckoo Search via Lévy flights. arXiv. , (2009).
  36. Yang, X. S. Nature-Inspired Optimization Algorithms. , Academic Press. (2017).
  37. Gerard, A. Detecting malicious content from extracted API call sequence by applying deep learning and machine learning algorithm. , National College of Ireland. Ireland. (2020).

Access restricted. Please log in or start a trial to view this content.

Reprints and Permissions

Request permission to reuse the text or figures of this JoVE article

Request Permission

Tags

Android Malware DetectionSwarm IntelligenceAPI Call AnalysisAutoencoder TechniquesFeature SelectionFirefly OptimizationCuckoo Search OptimizationAnt Colony OptimizationMachine Learning ClassifiersNeural Network Classifier

Related Articles