F2u0a0d3
takopii
Kotlin✨ New

Android banker-malware education framework. 4 specimen APKs (0/75 VT), 95 detection rules, 8,300+ lines of red/blue analysis covering 17 banker families.

Last updated Jul 31, 2026
11
Stars
3
Forks
0
Issues
0
Stars/day
Attention Score
35
Language breakdown
Kotlin 72.9%
JavaScript 18.0%
YARA 4.5%
Python 3.0%
C++ 0.8%
Java 0.7%
β–Έ Files click to expand
README

Takopii

4 Android Banker Specimens. 0/66 VirusTotal. Full Kotlin Source.

Production-grade banker malware architecture β€” techniques from 17 real-world families β€” with matching detection rules. Zero family attribution from any AV engine.

VT Score Specimens Kotlin Families YARA Sigma Frida License


What's Inside

| # | Specimen | Camouflage | Techniques | VT | Families | |:-:|---|---|---|:-:|---| | 1 | sms-stealer | CleanMaster Battery | SMS intercept, OTP extraction | 0/66 | FluBot, SharkBot V1 | | 2 | overlay-banker | Doc Reader Lite | 55 modules, 17 family techniques | 0/66 | Anatsa, SharkBot, Klopatra, Mirax, Vespertine, Drelock, Apex, RatOn, Perseus, FluBot, Herodotus, Crocodilus, Brokewell, FakeCall, TrickMo, ToxicPanda, Cerberus | | 3 | dropper | WiFi Analyzer Pro | Stage-0 dormancy + delivery | 0/66 | Anatsa V4 | | 4 | stage-1-evasion | SkyWeather Forecast | Full 5-stage kill chain + ATS | 0/66 | Anatsa + SharkBot composite |

Most wild banker samples implement 3-5 techniques. The overlay-banker composes 40+ techniques from 17 families in a single APK.

VirusTotal Proof β€” 0/66 All Specimens (click to expand)


| Specimen | Camouflage | SHA256 | VT | Verify | |---|---|---|:-:|:-:| | sms-stealer | Battery Boost Pro | 32f37e...6e243 | 0/66 | View on VT | | overlay-banker | Doc Reader Lite | 332079...e2b0 | 0/66 | View on VT | | dropper | WiFi Analyzer Pro | 254465...9ee7ed | 0/66 | View on VT | | stage-1-evasion | SkyWeather Forecast | af5ceb...01612 | 0/66 | View on VT |

sms-stealer β€” 0/66 (Battery Boost Pro, 1.59 MB)

sms-stealer VT scan

dropper β€” 0/66 (WiFi Analyzer Pro, 1.60 MB)

dropper VT scan

overlay-banker β€” 0/66 (Doc Reader Lite, 1.79 MB)

overlay-banker VT scan
Zenbox sandbox flags: MALWARE ADWARE TROJAN EVADER + Suricata LOW 1 β€” yet 0/66 static AV engines detect nothing.

stage-1-evasion β€” 0/66 (SkyWeather Forecast, 1.66 MB)

stage-1-evasion VT scan

Full SHA256 hashes:

sms-stealer:      32f37e555609a3ae9547533563895fe13227aea773dde13d3a3720df84c6e243 overlay-banker:   33207904cb76210b75904d25aee021ca85d313cc1bf79368c3c6abb523d8e2b0 dropper:          254465be9b6b2c8aeb951dabe23b6f9032ef149006ef2281b1e63bdb6a9ee7ed stage-1-evasion:  af5ceb94cb9d7bc9a37eacca1cf25b066761e24429bda7151d52378e69b01612

Scanned 2026-05-14. Click "View on VT" links above to verify live scores.


Kill Chain Architecture

DROPPER (WiFi Analyzer Pro)
                               β”‚
                               β”‚ 72h dormancy β†’ config check β†’ payload download
                               β–Ό
                    STAGE-1-EVASION (SkyWeather Forecast)
                               β”‚
              β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
              β”‚                β”‚                β”‚
         EVASION          CREDENTIAL         EXFIL
    Anti-debug (3-layer)   A11y capture     DGA fallback
    Anti-emulator (14)     Overlay (2032)   4-stage loader
    Anti-Frida (5-vector)  OTP dual-path    WorkManager beacon
    intArrayOf encoding    ATS auto-fraud   Yamux multiplexer
              β”‚                β”‚                β”‚
              β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
                               β”‚
                    OVERLAY-BANKER (Doc Reader Lite)
                         53 modules
              β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
              β”‚ STEALER     β”‚ RAT / CONTROL    β”‚
              β”‚ NFC ghost   β”‚ Screen stream    β”‚
              β”‚ Hidden VNC  β”‚ Audio record     β”‚
              β”‚ SOCKS5 proxyβ”‚ Camera capture   β”‚
              β”‚ SSO hijack  β”‚ Remote shell     β”‚
              β”‚ TEE offload β”‚ Touch logging    β”‚
              β”‚ SMS worm    β”‚ Factory reset    β”‚
              β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
              β”‚ EVASION     β”‚ SOCIAL ENGINEER  β”‚
              β”‚ Per-build   β”‚ Call forwarding  β”‚
              β”‚ Behavior    β”‚ Contact inject   β”‚
              β”‚ Anti-*      β”‚ Black screen     β”‚
              β”‚ Play Integ  β”‚ USSD execution   β”‚
              β”‚ Obfuscation β”‚ Auth capture     β”‚
              β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

Threat Matrix

Every technique below is implemented as working code, sourced from public threat-intel reports on real banker families:

| Technique | Family | Specimen | Source Module | |---|---|---|---| | Accessibility abuse + auto-click | Anatsa V4 | overlay-banker, stage-1 | BankerA11yService.kt | | ATS automated transfer | SharkBot V2.8 | stage-1 | AtsEngine.kt | | TYPEACCESSIBILITYOVERLAY (2032) | Anatsa 2025+ | both | A11yOverlay2032.kt | | NLS + SMS dual OTP capture | Anatsa + SharkBot | both | OtpNotifService.kt, SmsInterceptor.kt | | DGA (MD5+Calendar) | SharkBot V2.8 | both | Dga.kt, DomainResolver.kt | | 4-stage modular loader | Anatsa V4 | both | ModularLoader.kt, PayloadManager.kt | | Hidden VNC (MediaProjection) | Klopatra | overlay-banker | HiddenVnc.kt | | Yamux multiplexed C2 | Klopatra + Mirax | overlay-banker | YamuxProxy.kt | | SOCKS5 residential proxy | Mirax | overlay-banker | ResidentialProxy.kt | | NFC ghost-tap relay | RatOn | overlay-banker | NfcRelay.kt | | SSO hijack + MFA auto-approve | Vespertine | overlay-banker | SsoHijacker.kt | | TEE/TrustZone offload | Drelock | overlay-banker | TeeOffload.kt | | Per-build AI obfuscation | Apex | overlay-banker | PerBuildObfuscation.kt | | Behavior mimicry (log-normal jitter) | Herodotus | both | BehaviorMimicry.kt | | BIP39 seed phrase scraping | Perseus | overlay-banker | NoteAppScraper.kt | | SMS worm spreading | FluBot | overlay-banker | SmsWorm.kt | | Anti-debug (3-layer) | SharkBot | overlay-banker | AntiDebug.kt | | Anti-emulator (14-check) | SharkBot | overlay-banker | AntiEmulator.kt | | Anti-Frida (5-vector) | Anatsa + SharkBot | overlay-banker | AntiFrida.kt | | Native JNI protection | Klopatra (Virbox) | overlay-banker | NativeProtect.kt | | XOR + AES string encryption | Anatsa | overlay-banker | StringDecoder.kt | | Reflection API hiding | Anatsa | overlay-banker | ReflectionHider.kt | | ContentProvider pre-init | Anatsa | overlay-banker | EarlyInitProvider.kt | | WorkManager 15-min beacon | Anatsa | both | WorkManagerBeacon.kt | | MediaProjection auto-consent | Klopatra | overlay-banker | MediaProjectionAutoConsent.kt | | Play Integrity recon | Drelock | overlay-banker | PlayIntegrityProbe.kt | | Screen streaming (MediaProjection→C2) | Brokewell, Albiriox | overlay-banker | ScreenStreamer.kt | | Full keylogging (every input field) | Brokewell, TrickMo | overlay-banker | BankerA11yService.kt | | Audio recording (ambient mic) | Brokewell | overlay-banker | AudioRecorder.kt | | Camera capture (front + rear) | Brokewell, Cerberus | overlay-banker | CameraCapture.kt | | Call forwarding/hijacking (USSD) | FakeCall | overlay-banker | CallForwarder.kt | | Default dialer takeover | FakeCall | overlay-banker | CallForwarder.kt | | Notification suppression | TrickMo, SOVA | overlay-banker | NotifSuppressor.kt | | Google Authenticator TOTP capture | Crocodilus | overlay-banker | AuthenticatorCapture.kt | | Geolocation tracking (GPS+Network) | Brokewell, ToxicPanda | overlay-banker | GeoTracker.kt | | Device reconnaissance beacon | ALL families | overlay-banker | DeviceRecon.kt | | Full touch/gesture logging | Brokewell | overlay-banker | TouchLogger.kt | | Fake contact injection | Crocodilus 2025 | overlay-banker | ContactInjector.kt | | Black screen overlay (RAT mask) | Crocodilus, ToxicPanda | overlay-banker | BlackScreenOverlay.kt | | Remote shell execution | Brokewell, Albiriox | overlay-banker | RemoteShell.kt | | App uninstall (AV removal) | TrickMo, SOVA | overlay-banker | AppManager.kt | | Factory reset (evidence wipe) | BRATA | overlay-banker | RemoteShell.kt |


Detection Corpus

Every attack ships with matching detection. 107 rules total:

detection/
β”œβ”€β”€ yara/                   24 rules β€” static APK/DEX scanning
β”‚   β”œβ”€β”€ banker-shape.yar         Overlay banker multi-vector shape
β”‚   β”œβ”€β”€ sms-stealer.yar          ContentResolver SMS pattern
β”‚   β”œβ”€β”€ dropper.yar              Config-then-download shape
β”‚   β”œβ”€β”€ dga.yar                  MD5+Calendar DGA (SharkBot)
β”‚   β”œβ”€β”€ dcl-antiforensics.yar    DexClassLoader + file deletion
β”‚   β”œβ”€β”€ intarray-encoding.yar    Arithmetic string obfuscation
β”‚   β”œβ”€β”€ frontier.yar             2025-2026 technique shapes
β”‚   β”œβ”€β”€ rat-capabilities.yar    RAT: camera, audio, TOTP, USSD, wipe, AV-kill
β”‚   └── master.yar               All rules consolidated
β”‚
β”œβ”€β”€ sigma/                  34 rules β€” runtime behavioral detection
β”‚   β”œβ”€β”€ sms-contentresolver.yml     SMS access from non-SMS app
β”‚   β”œβ”€β”€ dropper-download.yml        FG service config + binary download
β”‚   β”œβ”€β”€ overlay-trigger.yml         A11y β†’ overlay window creation
β”‚   β”œβ”€β”€ dcl-antiforensics.yml       DexClassLoader + file deletion
β”‚   β”œβ”€β”€ workmanager-beacon.yml      15-min periodic POST
β”‚   β”œβ”€β”€ dual-otp-capture.yml        NLS + SMS same package
β”‚   β”œβ”€β”€ ats-killchain.yml           Gesture injection during banking
β”‚   β”œβ”€β”€ a11y-overlay-chain.yml      Full overlay trigger pipeline
β”‚   β”œβ”€β”€ frontier.yml                2025-2026 behavioral patterns
β”‚   β”œβ”€β”€ rat-behavioral.yml          RAT: camera, audio, screen, TOTP, touch, contacts
β”‚   └── master.yml                  All rules consolidated
β”‚
└── frida/                  48 hooks β€” dynamic instrumentation
    β”œβ”€β”€ sms-monitor.js           ContentResolver SMS capture
    β”œβ”€β”€ network-monitor.js       HTTP/OkHttp exfil intercept
    β”œβ”€β”€ overlay-monitor.js       WindowManager overlay creation
    β”œβ”€β”€ dcl-monitor.js           DexClassLoader + DEX capture
    β”œβ”€β”€ nls-monitor.js           Notification OTP intercept
    β”œβ”€β”€ dga-monitor.js           MessageDigest DGA detection
    β”œβ”€β”€ a11y-monitor.js          AccessibilityService dispatch
    β”œβ”€β”€ ats-monitor.js           Gesture injection + auto-fill
    β”œβ”€β”€ clipboard-monitor.js     Clipboard polling detection
    β”œβ”€β”€ evasion-bypass.js        Anti-debug/emulator/Frida defeat
    β”œβ”€β”€ frontier-monitor.js      2025-2026 technique hooks
    β”œβ”€β”€ rat-monitor.js           RAT capabilities (camera, audio, screen, TOTP, USSD, shell, wipe)
    └── master-monitor.js        All hooks consolidated (48 hooks)

Run Detection Against Any APK

# Static scan
yara -r detection/yara/master.yar suspect.apk

Against Takopii specimens (expect 9+ hits per APK)

yara -r detection/yara/master.yar specimens/overlay-banker/app/build/outputs/apk/release/app-release.apk

Dynamic monitoring

frida -U -l detection/frida/master-monitor.js -f com.suspect.package

Sigma rules feed from Frida output or logcat pipeline


Documentation (8,352 lines)

| Document | Lines | Audience | What You Get | |---|---|---|---| | πŸ“• REDTEAM-ANALYSIS.md | 4,025 | Offense | Kill chains, annotated source for all 187 .kt files, evasion architecture, C2 protocols | | πŸ“˜ BLUETEAM-DETECTION.md | 5,457 | Defense | IOCs, 107 detection rules (YARA + Sigma + Frida), network signatures, forensic commands | | πŸ“— VT-EVASION-RESEARCH.md | 949 | Research | 11-round ML classifier defeat journal, build-artifact topology theory |


Quick Start

# Clone
git clone https://github.com/F2u0a0d3/takopii.git
cd takopii

Option A: Download pre-built APKs from Releases

β†’ github.com/F2u0a0d3/takopii/releases

Option B: Build from source (Android SDK + JDK 17)

cd specimens/sms-stealer && ./gradlew assembleRelease && cd ../.. cd specimens/dropper && ./gradlew assembleRelease && cd ../.. cd specimens/overlay-banker && ./gradlew assembleRelease && cd ../..

Verify VT score yourself

sha256sum specimens/*/app/build/outputs/apk/release/app-release.apk

Run detection rules

yara -r detection/yara/master.yar specimens/overlay-banker/app/build/outputs/apk/release/app-release.apk

Dynamic analysis (rooted emulator + frida-server)

frida -U -l detection/frida/master-monitor.js -f com.docreader.lite

Pedagogical Progression

SINGLE SURFACE           MULTI-SURFACE            DELIVERY              FULL KILL CHAIN
  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”   β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”   β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”   β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
  β”‚  sms-stealer    β”‚   β”‚  overlay-banker  β”‚   β”‚  dropper +      β”‚   β”‚  stage-1-evasion     β”‚
  β”‚                 β”‚   β”‚                  β”‚   β”‚  stage-2-payload β”‚   β”‚                      β”‚
  β”‚  SMS β†’ C2       β”‚   β”‚  A11y β†’ Overlay  β”‚   β”‚  Dormancy β†’     β”‚   β”‚  Evasion + ATS +     β”‚
  β”‚  1 receiver     β”‚   β”‚  β†’ Exfil         β”‚   β”‚  Download β†’     β”‚   β”‚  DGA + DCL + Overlay β”‚
  β”‚  3 OTP regexes  β”‚   β”‚  42 modules      β”‚   β”‚  DexClassLoader β”‚   β”‚  14 core modules     β”‚
  β””β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”˜   β””β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”˜   β””β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”˜   β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
           β”‚                     β”‚                     β”‚                       β”‚
           v                     v                     v                       v
     Learn: intercept      Learn: multi-         Learn: delivery         Learn: full
     + OTP extraction      surface wiring        chain + evasion         composition +
                           + overlay UI                                  detection rules

Who This Is For

Detection Engineers β€” 66 AV engines scored 0 on specimens implementing ATS, screen streaming, call hijacking, TOTP capture, NFC relay, residential proxy, and 40+ other techniques. The 107 detection rules target behavioral invariants that survive evasion.

Red Teamers β€” The VT evasion research documents how ML classifiers operate on build-artifact topology, not application semantics. 11 rounds of source-level changes had zero effect on VT score.

Educators β€” Progressive complexity from single-surface SMS to full 5-stage kill chain. Each specimen maps to MITRE ATT&CK Mobile techniques.

RASP Vendors β€” TYPEACCESSIBILITYOVERLAY (2032) from a separate app bypasses every surveyed commercial RASP. This gap requires MTD, not RASP alone.


What These Are NOT

These are not random stealers from underground forums.

  • Production-grade architecture β€” 37 techniques from 17 documented families, composed into working kill chains
  • Lab-constrained β€” C2 = RFC1918/loopback only, no public exfil
  • Research artifacts β€” every attack ships with matching detection rules
  • Evasion-validated β€” 0/66 VirusTotal is empirical, not theoretical
Safety constraints (loopback C2, own-package filters) are code-level, not architecture-level. The architecture is production-grade. See SECURITY.md.

Project Structure

takopii/
β”œβ”€β”€ specimens/                    4 specimen APK projects
β”‚   β”œβ”€β”€ sms-stealer/              53 .kt β€” Battery Boost Pro
β”‚   β”œβ”€β”€ overlay-banker/           55 .kt β€” Doc Reader Lite
β”‚   β”œβ”€β”€ dropper/                  50 .kt β€” WiFi Analyzer Pro
β”‚   β”œβ”€β”€ stage-1-evasion/          42 .kt β€” SkyWeather Forecast
β”‚   └── stage-2-payload/          1 .java β€” Recon module DEX
β”œβ”€β”€ docs/                         8,352 lines of analysis
β”‚   β”œβ”€β”€ REDTEAM-ANALYSIS.md       4,025 lines β€” offensive analysis
β”‚   β”œβ”€β”€ BLUETEAM-DETECTION.md     5,457 lines β€” detection engineering
β”‚   └── VT-EVASION-RESEARCH.md    949 lines β€” ML evasion research
β”œβ”€β”€ detection/                    107 standalone detection rules
β”‚   β”œβ”€β”€ yara/                     24 YARA rules (9 files + master)
β”‚   β”œβ”€β”€ sigma/                    34 Sigma rules (11 files + master)
β”‚   └── frida/                    13 Frida monitors (13 files + master)
β”œβ”€β”€ SECURITY.md                   Safety contract + threat model
β”œβ”€β”€ CONTRIBUTING.md               How to contribute
└── awesome-android-banker-defense.md   Curated resource list

Contributing

See CONTRIBUTING.md. Priority areas:

  • RASP bypass matrix population β€” field-test commercial RASPs against specimens
  • Detection rule improvements β€” reduce false positives, add new behavioral patterns
  • New family coverage β€” add techniques from emerging 2026+ banker families
  • Translation β€” non-English documentation (LatAm, APAC)

References

  • OWASP MASTG v1.7.0 / MASVS v2.0.0
  • MITRE ATT&CK Mobile
  • Cleafy β€” Anatsa threat reports (2024-2025)
  • ThreatFabric β€” Mirax, Vespertine analysis (2026)
  • Zscaler ThreatLabz β€” SharkBot analysis
  • NCC Group β€” Klopatra VNC analysis
  • ESET β€” Apex polymorphism report (2026)

Star History

If this project helps your research, detection engineering, or education β€” star it. The detection rules alone are worth the click.

Star History Chart


The stealer code is real. The detection rules are real. The 0/66 is real. Study it before it studies your users.
πŸ”— More in this category

Β© 2026 GitRepoTrend Β· F2u0a0d3/takopii Β· Updated daily from GitHub