
Практический учебный стенд OWASP по безопасности Android с 78 модулями MASVS/MASTG, объединяющими уязвимые, защищённые и атакующие приложения для демонстрации мобильных слабостей и их исправлений.
Официальный проект OWASP — Практическая лаборатория по обучению безопасности OWASP MASVS/MASTG для Android-разработчиков и пентестеров — Зеркальная архитектура: Уязвимое ↔ Безопасное ↔ Атакующий
Мастер-класс по безопасности Android — это официальный проект OWASP, разработанный с использованием Зеркальной архитектуры, чтобы научить Android-разработчиков и исследователей безопасности точно понимать, как выглядят уязвимости и точно как их исправлять, используя современные практики разработки под Android.
Вместо поиска ошибок в устаревших кодовых базах на Java, этот проект использует передовой технологический стек (Kotlin, Jetpack Compose, MVVM, Material 3) и построен вокруг масштабируемой системы «Package-by-Feature».
🌐 Портал проекта OWASP и документация:
- Страница проекта OWASP: https://owasp.org/projects/android-security-masterclass
- Портал документации: https://owasp.github.io/Android-Security-Masterclass/
- White paper и матрица соответствия из 78 модулей: Доступны на портале документации.
graph TD
COMMON("🧱 :common<br/>Shared Data · Theme<br/>Dashboard Metadata")
subgraph FEATURES ["📦 Package-by-Feature (78 Isolated MASWE Modules)"]
direction LR
M1(":features:maswe0001<br/>Private Storage")
M2(":features:maswe0002<br/>External Storage")
M5(":features:maswe0005<br/>Logging Leaks")
MDOT("...<br/>... ")
M78(":features:maswe0078<br/>Privacy")
end
VULN("❌ :app-vulnerable<br/>Thin Shell Orchestrator")
SEC("✅ :app-secure<br/>Thin Shell Orchestrator")
ATK("😈 :app-attacker<br/>Simulated Malware")
COMMON --> FEATURES
FEATURES -- "Insecure Implementation" --> VULN
FEATURES -- "Hardened Implementation" --> SEC
VULN -. "Active Exploit<br/>IPC / Logcat" .-> ATK
classDef common fill:#4A90D9,stroke:#2C5F8A,color:#fff,stroke-width:2px,font-weight:bold
classDef feat fill:#F39C12,stroke:#D35400,color:#fff,stroke-width:2px,font-weight:bold
classDef vuln fill:#E74C3C,stroke:#C0392B,color:#fff,stroke-width:2px,font-weight:bold
classDef secure fill:#27AE60,stroke:#1E8449,color:#fff,stroke-width:2px,font-weight:bold
classDef attacker fill:#8E44AD,stroke:#6C3483,color:#fff,stroke-width:2px,font-weight:bold
class COMMON common
class M1,M2,M5,MDOT,M78 feat
class VULN vuln
class SEC secure
class ATK attacker
Проект использует гипермодульную архитектуру, охватывающую более 80 модулей:
| Слой модуля | Роль | Статус |
|---|---|---|
:common | Основа. Содержит генератор высокоточных полезных нагрузок MasterclassData, метаданные Dashboard, основную тему UI и общие компоненты навигации. | Основа ✅ |
:features:masweXXXX | 78 полностью изолированных Gradle-модулей (от 0001 до 0078). Каждый модуль содержит как уязвимую, так и безопасную логику для одной конкретной слабости, полностью предотвращая утечку кода между модулями. | 78 модулей сгенерировано ✅ |
:app-vulnerable | Приложение-оркестратор «Thin Shell». Оно связывает небезопасные UI-компоненты из всех 78 функциональных модулей, чтобы продемонстрировать точные последствия нарушений OWASP. | Активно ✅ |
:app-secure | Приложение-оркестратор «Thin Shell». Связывает безопасные реализации, использующие современные стандарты (Jetpack Security, Tink, SQLCipher, ProGuard). | Активно ✅ |
:app-attacker | Симулированное вредоносное стороннее приложение. Демонстрирует живые IPC-эксплойты через вторичный процесс, работающий параллельно на устройстве. | Активно ✅ |
MasterclassDataВ отличие от других образовательных проектов, использующих тривиальные данные («admin:password»), наши симуляции утечек используют полезные нагрузки регуляторного уровня:
💡 Совет: Вы можете просмотреть все эти симулированные данные в реальном времени на вашем устройстве, нажав кнопку «Data Vault» на Dashboard как уязвимого, так и безопасного приложения.
Мы сопоставили весь стандарт OWASP MASVS с 78 отдельными модулями в 8 доменах:
Следующие модули имеют полностью реализованную бизнес-логику, MVI-архитектуру, модульные тесты и симуляции атак/защиты:
-assumenosideeffects) и обёртки SecureLog.adb backup или облачное резервное копирование Google Drive. Защищено через android:allowBackup="false", dataExtractionRules и fullBackupContent.