Nieuwe Android-trojan 'SoumniBot' ontwijkt detectie met slimme trucs

Een nieuwe Android-trojan genaamd SoumniBot Er is in het wild ontdekt dat het zich richt op gebruikers in Zuid-Korea door gebruik te maken van zwakke punten in de manifeste extractie- en parseerprocedure.

De malware valt op door een onconventionele aanpak om analyse en detectie te omzeilen, namelijk door het Android-manifest te vertroebelen, zegt Kaspersky-onderzoeker Dmitry Kalinin in een technische analyse.

Elke Android-app wordt geleverd met een manifest XML-bestand (“AndroidManifest.xml”) dat zich in de hoofdmap bevindt en waarin de verschillende componenten van de app worden aangegeven, evenals de machtigingen en de hardware- en softwarefuncties die daarvoor nodig zijn.

Wetende dat dreigingsjagers hun analyse doorgaans beginnen met het inspecteren van het manifestbestand van de app om het gedrag ervan te bepalen, blijken de dreigingsactoren achter de malware drie verschillende technieken te gebruiken om het proces een stuk uitdagender te maken.

De eerste methode omvat het gebruik van een ongeldige compressiemethodewaarde bij het uitpakken van het manifestbestand van de APK met behulp van de libziparchive-bibliotheek, die elke andere waarde dan 0x0000 of 0x0008 als niet-gecomprimeerd behandelt.

Cyberbeveiliging

“Hierdoor kunnen app-ontwikkelaars elke waarde behalve 8 in de compressiemethode plaatsen en ongecomprimeerde gegevens schrijven”, legt Kalinin uit.

“Hoewel elke uitpakker die de validatie van de compressiemethode correct implementeert, een dergelijk manifest als ongeldig zou beschouwen, herkent de Android APK-parser het correct en staat toe dat de applicatie wordt geïnstalleerd.”

Het is de moeite waard om erop te wijzen dat de methode sinds april 2023 is overgenomen door bedreigingsactoren die verband houden met verschillende Android-banktrojans.

Ten tweede geeft SoumniBot een verkeerde voorstelling van de gearchiveerde manifestbestandsgrootte, door een waarde te verstrekken die groter is dan het werkelijke cijfer, als gevolg waarvan het “niet-gecomprimeerde” bestand rechtstreeks wordt gekopieerd, waarbij de manifestparser de rest van de “overlay”-gegevens negeert die de gegevens in beslag nemen. rest van de beschikbare ruimte.

“Strengere manifestparsers zouden zo'n bestand niet kunnen lezen, terwijl de Android-parser het ongeldige manifest zonder fouten afhandelt”, zei Kalinin.

De laatste techniek heeft te maken met het gebruik van lange XML-naamruimtenamen in het manifestbestand, waardoor het voor analysehulpmiddelen moeilijk wordt om voldoende geheugen toe te wijzen om ze te verwerken. Dat gezegd hebbende, is de manifestparser ontworpen om naamruimten te negeren, en als gevolg daarvan treden er geen fouten op bij het verwerken van het bestand.

Zodra SoumniBot is gelanceerd, vraagt ​​het zijn configuratie-informatie op van een hardgecodeerd serveradres om de servers te verkrijgen die worden gebruikt om de verzamelde gegevens te verzenden en opdrachten te ontvangen met behulp van respectievelijk het MQTT-berichtenprotocol.

Het is ontworpen om een ​​kwaadaardige service te starten die elke 16 minuten opnieuw opstart als deze om de een of andere reden wordt beëindigd, en de informatie elke 15 seconden uploadt. Dit omvat metagegevens van het apparaat, contactlijsten, sms-berichten, foto's, video's en een lijst met geïnstalleerde apps.

De malware kan ook contacten toevoegen en verwijderen, sms-berichten verzenden, de stille modus omschakelen en de foutopsporingsmodus van Android inschakelen, om nog maar te zwijgen van het verbergen van het app-pictogram om het moeilijker te maken om de installatie van het apparaat te verwijderen.

Cyberbeveiliging

Een opmerkelijk kenmerk van SoumniBot is de mogelijkheid om op de externe opslagmedia te zoeken naar .key- en .der-bestanden die paden bevatten naar “/NPKI/yessign”, wat verwijst naar de digitale handtekeningcertificaatservice die door Zuid-Korea wordt aangeboden voor overheden (GPKI), banken en online beurzen (NPKI).

“Deze bestanden zijn digitale certificaten die door Koreaanse banken aan hun klanten zijn uitgegeven en die worden gebruikt om in te loggen bij online bankdiensten of om banktransacties te bevestigen”, aldus Kalinin. “Deze techniek is vrij ongebruikelijk voor malware voor Android-bankieren.”

Eerder dit jaar onthulde cyberbeveiligingsbedrijf S2W details van een malwarecampagne van de aan Noord-Korea gelinkte Kimusuky-groep, die gebruik maakte van een op Golang gebaseerde informatiedief genaamd Troll Stealer om GPKI-certificaten van Windows-systemen over te hevelen.

“Malwaremakers proberen het aantal apparaten dat ze infecteren te maximaliseren zonder opgemerkt te worden”, concludeert Kalinin. “Dit motiveert hen om op zoek te gaan naar nieuwe manieren om detectie te compliceren. De ontwikkelaars van SoumniBot zijn daar helaas in geslaagd vanwege onvoldoende strikte validaties in de Android-manifest-parsercode.”

Thijs Van der Does