GitHunt

Banking Trojan PoC

⚠️ WARNING / 경고

This project is a PoC for security research and education only.
Using this code to develop malicious applications is a criminal offense.

이 프로젝트는 보안 연구 및 교육 목적의 PoC입니다.
이 코드를 악성앱 제작에 사용하는 것은 범죄 행위입니다.


What is this / 이게 뭔가

Android의 정상 API(AccessibilityService, SYSTEM_ALERT_WINDOW, SMS BroadcastReceiver)를 사용한 뱅킹앱 자격 증명 탈취 시연. 뱅킹앱 실행을 감지하고, 가짜 로그인 화면을 띄우고, SMS OTP를 가로챈다. 핵심 코드 약 50줄.

A banking credential theft demo using legitimate Android APIs. Detects banking app launch, overlays a fake login screen, and intercepts SMS OTP. ~50 lines of core code.

Victim opens banking app
  → AccessibilityService detects target app
  → OverlayService shows fake login screen on top
  → Victim enters ID/PW → Stolen
  → Bank sends OTP via SMS → SmsReceiver intercepts → Stolen

Structure / 구조

app/src/main/java/com/yjcho/bankingtrojan/
├── service/
│   ├── MonitorAccessibilityService.kt  // 뱅킹앱 실행 감지
│   └── OverlayService.kt              // 가짜 로그인 화면 오버레이
├── receiver/
│   ├── SmsReceiver.kt                 // OTP 가로채기
│   └── BootReceiver.kt                // 부팅 시 자동 시작
├── ui/
│   └── screen/
│       └── MainScreen.kt              // 설정 & 로그 UI (Compose)
└── MainActivity.kt

Background / 배경

라온시큐어 사내 보안 세미나 발표용으로 제작. Kaspersky 2024 리포트 기준 모바일 뱅킹 트로이목마 피해자가 전년 대비 3.6배 증가했다 (69,200명 → 247,949명).

  • Kaspersky, Financial Cyberthreats Report 2024
  • Zimperium, Global Mobile Threat Report 2024

Disclaimer / 면책 고지

This software is provided for educational and security research purposes only. The author assumes no responsibility for any misuse. Unauthorized use may violate:

이 소프트웨어는 교육 및 보안 연구 목적으로만 제공됩니다. 오용에 대한 책임은 사용자에게 있으며, 다음 법률에 의해 처벌될 수 있습니다:

  • 정보통신망법 / Information and Communications Network Act
  • 전기통신사업법 / Telecommunications Business Act
  • 형법 제347조 (사기), 제314조 (업무방해) / Criminal Act Articles 347, 314
  • 전자금융거래법 / Electronic Financial Transactions Act

Languages

Kotlin100.0%

Contributors

Created February 10, 2026
Updated March 20, 2026
yjcho9317/banking-trojan | GitHunt