Order of Six Angles
Быстрый АПК парсер, интегрирую себе в пайплайн
https://github.com/delvinru/apk-info
Мой пайплайн по анализу андроид приложений:
Stage 0 — APK Metadata (apk-info):
Мгновенный парсинг (~2мс) манифеста без декомпиляции: пакет, SDK-версии, все permissions, exported-компоненты, подписи (v1/v2/v3), security profile. Уже на этом этапе детектит: debuggable-флаг, v1-only подпись (уязвимость Janus, CVE-2017-13156), привилегированные системные permissions, exported ContentProvider'ы без защиты.
Stage 1 — Декомпиляция + сканирование APK (параллельно):
Всё запускается одновременно:
• JADX — декомпиляция DEX → Java (8 потоков, 60-180с)
• apktool — распаковка ресурсов, AndroidManifest.xml, нативных .so библиотек (5-15с)
• dexfinder — поиск использования скрытых Android API + трассировка цепочек вызовов
• Mariana Trench — taint-анализ потоков данных от Meta (source→sink)
• Trueseeing — Dalvik bytecode scanner
• Автодетект Flutter → Blutter (реверс Dart-кода), React Native → декомпиляция Hermes
Stage 2 — Статический анализ (параллельно):
• 184 regex-правила — быстрый pattern matching по декомпилированным исходникам
• 331 semgrep-правило — AST-анализ (taint tracking, data flow)
• Анализ Blutter pp.txt (Dart-символы для Flutter-приложений)
• dexfinder call chain tracing — трассировка цепочек вызовов от exported-компонентов к уязвимым методам
Stage 3 — Merge + фильтрация + обогащение:
• Дедупликация по (rule_id, file, line)
• SDK-фильтр (732 паттерна) — убирает 98% шума от Google, Firebase, OkHttp, Retrofit и ещё 150+ SDK
• Классификация severity через RoBERTa модель
• Аннотация exported-статуса: кросс-проверка finding → AndroidManifest → dexfinder reachability
• RAG-обогащение каждого finding контекстом из базы знаний
Stage 4 — LLM-анализ (6 агентов параллельно):
Каждый агент — специалист в своей области, получает только релевантные findings + RAG-контекст:
• Agent 1: Manifest + Attack Surface
• Agent 2: Network + TLS
• Agent 3: Auth + Cryptography
• Agent 4: WebView + JS Bridge
• Agent 5: Business Logic
• Agent 6: Native Libraries
• Agent 7 (Judge): валидирует CRITICAL/HIGH от всех агентов, отсекает false positives
RAG Knowledge Base:
• 9675 chunks в ChromaDB (гибридный поиск: BM25 + vector + RRF)
• 1547+ отчётов из 18 источников:
— OWASP MASTG: 120 (тестовые процедуры с примерами кода)
— HackerOne: 170 (реальные bug bounty отчёты с PoC)
— MITRE ATT&CK Mobile: 124 (техники атак, детекция, митигации)
— Security blogs: 207 (Google, Zimperium, Lookout, Check Point)
— Samsung Bulletins: 111 (Samsung-specific CVE)
— NVD: 250 (CVE с CVSS)
— Exploit-DB: 50
— Android Bulletins: 34
— CISA KEV: 23
— Собственные аудиты: 144
— Прочие: arXiv, VulCorpus (94 OWASP Top-10 сэмплов)
• Граф знаний: 5597 узлов, 9213 связей (CVE↔️CWE↔️MITRE↔️MASTG)
• 970+ code snippets в отдельном индексе
Обсуждение 0
Обсуждение не доступно в веб-версии. Чтобы написать комментарий, перейдите в приложение Telegram.
Обсудить в Telegram