Threat ResearchAndroid banking trojanApril 2024Analyzed 2026-09-08

SoumniBot: recovered C2 indicators & analysis

SoumniBot is an Android banking trojan targeting South Korean users that evades static analysis by corrupting its AndroidManifest.xml and steals online-banking credentials, SMS, and Korean digital banking certificates while taking commands over MQTT.

What SoumniBot is

SoumniBot is an Android banking trojan first publicly documented by Kaspersky (Securelist) in April 2024. It targets users in South Korea and is distinguished less by its stealing routines than by an unusual anti-analysis approach: it manipulates the way its AndroidManifest.xml is packed inside the APK so that Android's own parser installs the app correctly while many third-party analysis and unpacking tools fail to read the manifest.

The manifest evasion relies on three documented tricks against the APK/manifest parsing procedure. First, the malware sets an invalid ZIP compression-method value for the AndroidManifest.xml entry; because the Android parser treats any value other than 0x0008 (DEFLATED) as stored/uncompressed, the file loads while tools expecting standard values misparse it. Second, it declares a manifest size larger than the actual data, causing an overlay in which trailing archive bytes are appended to the unpacked manifest. Third, it uses very long XML namespace names, which the Android parser ignores but which can exhaust memory in analysis tooling. Kaspersky noted the oversized-manifest technique had been seen in other Android bankers since April 2023.

Operationally, SoumniBot runs a background service that restarts roughly every 16 minutes if killed and uploads harvested device data about every 15 seconds. It collects the device IP address (and country inferred from it), contact and account lists, SMS/MMS messages, photos, videos, and the list of installed apps, and generates a victim identifier using the trustdevice-android library. A notable capability is theft of Korean online-banking digital certificates: it searches external storage for .key and .der files under paths such as /NPKI/yessign, archives the containing directory into a ZIP, and exfiltrates it, enabling abuse of the victim's banking authentication material.

For command-and-control, SoumniBot uses two channels configured from a hardcoded address: a 'mainsite' server that receives collected data (over HTTP) and an MQTT broker the malware subscribes to for receiving commands. Documented MQTT-driven functions include exfiltrating all messages/contacts/accounts/media/certificates, sending SMS messages, adding and deleting contacts, retrieving photos/videos and the installed-app list, toggling silent mode, enabling Android debug mode, and hiding its launcher icon to hinder removal. Kaspersky detects the family as Trojan-Banker.AndroidOS.SoumniBot; reported samples were distributed outside Google Play.

Capabilities

Known C2 / channel types: MQTT, HTTP(S).

MITRE ATT&CK (Mobile)

Techniques commonly associated with SoumniBot:

IDTechnique
T1406Obfuscated Files or Information
T1628Hide Artifacts
T1582SMS Control
T1636Protected User Data
T1533Data from Local System
T1437Application Layer Protocol

What Privara Unmask recovered

Two C2 endpoints were recovered, including an MQTT broker on port 1883 — SoumniBot's documented command channel. This matched known public reporting on the family's use of MQTT. The analysis ran on a de-emulated Android 17 device that the sample could not fingerprint as virtual, so it behaved as it would on a real handset.

Package segkvre.wpfvwer.weslf
SHA-256 0ef6a635e8463f5a771874be40b55ebfc1dba54f3b544d4dc97cc674fc2c3a86
Source MalwareBazaar (abuse.ch)
Community contribution. Contributed to ThreatFox as net-new intelligence on 2026-09-08 (TAJ APPS account).

Indicators of compromise (IOCs)

IndicatorTypeRoleConfidenceStatus
54.162.26.208:29221ip:portC2highoffline
38.55.136.70:1883
port 1883 = MQTT, SoumniBot's documented C2 protocol
ip:portC2highoffline
Status note. The indicators above were unresponsive (offline / sinkholed) at analysis time and are published as historical threat intelligence. Co-observed benign and environmental artifacts have been removed rather than reported as C2.

External references

Methodology & honest limits

This sample was obtained from MalwareBazaar and detonated in a controlled, isolated environment. C2 identity was recovered from the executing sample and its configuration. We report only what the analysis established: an offline sample yields a C2 identity, not a live beacon, and we say so. Nothing here is inferred beyond the evidence.

Analyze your own Android samples like this

Privara Unmask detonates arm64 samples on a de-emulated Android 17 device that anti-analysis code can't fingerprint — recovering C2, config and IOCs automatically, with a clean rollback per sample.

See the sandbox → Request a demo