Back to skills
extension
Category: Development & EngineeringNo API key required

android-owasp-security-reviewer

Conduct a security review of Android applications from the perspective of OWASP Mobile Top 10 2024 and MASVS (Mobile Application Security Verification Standard), and generate a Markdown report. Use when: (1) Requesting a security audit/review for an Android application (2) When keywords such as 'security check', 'vulnerability diagnosis', 'OWASP', 'MASVS' are mentioned (3) When a security perspective is needed during code reviews of Android projects (4) When evaluating the security of financial or medical applications

personAuthor: jakexiaohubgithub

Android OWASP Security Reviewer

AndroidアプリをOWASP Mobile Top 10 2024 + MASVS基準でセキュリティレビューし、Markdownレポートを出力。

Security Standards

OWASP Mobile Top 10 2024

脆弱性カテゴリ(M1-M10)による分類。詳細: references/owasp-mobile-top10-2024.md

OWASP MASVS (Mobile Application Security Verification Standard)

検証レベルによる分類:

| Level | 対象 | 概要 | |-------|------|------| | L1 | 全商用アプリ | 基本セキュリティ(HTTPS、暗号化、入力検証) | | L2 | 金融・医療アプリ | 高度保護(ルート検知、MFA、HSM鍵管理) | | R | ゲーム・DRM | リバース耐性(難読化、改ざん検知) |

詳細: references/masvs-checklist.md

Workflow

1. プロジェクト把握 & レベル決定

Glob: **/AndroidManifest.xml, **/build.gradle*, **/*.java, **/*.kt
  • Androidプロジェクトルート特定
  • アプリ種別からMASVSレベル判定:
    • 一般アプリ → L1
    • 金融・医療 → L2
    • ゲーム・DRM → L1 + R

2. スキャン実行

Phase 1: L1 Critical(全アプリ必須)

# ハードコード認証情報
Grep: (api[_-]?key|secret|password|token)\s*=\s*["'][^"']+["']

# 平文通信
Grep: http://(?!localhost|127\.0\.0\.1|10\.)

# 証明書検証無効化
Grep: TrustAllCerts|checkServerTrusted.*\{\s*\}|ALLOW_ALL_HOSTNAME

# デバッグモード
Grep: android:debuggable="true"

# 危険なデータ保存
Grep: MODE_WORLD_READABLE|MODE_WORLD_WRITEABLE

Phase 2: L1 High

# 弱い暗号
Grep: DES|RC4|MD5|SHA-1(?!.*(256|384|512))

# ログ漏洩
Grep: Log\.(d|v|i|w|e).*(?i)(password|token|key|secret)

# 外部ストレージ
Grep: getExternalStorage|WRITE_EXTERNAL_STORAGE

# WebView脆弱性
Grep: addJavascriptInterface|setAllowFileAccessFromFileURLs

Phase 3: L2 Checks(金融・医療アプリ)

# ルート/改ざん検知確認
Grep: SafetyNet|PlayIntegrity|RootBeer

# 高度な鍵管理
Grep: setIsStrongBoxBacked|setUserAuthenticationRequired

# 生体認証
Grep: BiometricPrompt|setDeviceCredentialAllowed

Phase 4: R Checks(リバース耐性要求時)

# 難読化設定
Grep: minifyEnabled\s+(true|false)

# デバッガ検知
Grep: Debug\.isDebuggerConnected|android\.os\.Debug

# 署名検証
Grep: GET_SIGNATURES|PackageInfo

詳細パターン: references/android-security-checks.md

3. 検出結果分類

| 項目 | 内容 | |------|------| | Severity | Critical / High / Medium / Low / Info | | OWASP Category | M1-M10 | | MASVS | L1 / L2 / R | | Location | ファイルパス:行番号 | | Evidence | コードスニペット | | Recommendation | 修正方法 |

4. レポート生成

テンプレート: assets/report-template.md 出力: security-review-report.md

Quick Reference: Severity by Check

| Check | L1 Severity | L2 Severity | R Severity | |-------|-------------|-------------|------------| | HTTP通信 | Critical | Critical | Critical | | ハードコード鍵 | Critical | Critical | Critical | | 証明書検証無効 | Critical | Critical | Critical | | debuggable=true | Critical | Critical | Critical | | 弱い暗号 | High | Critical | High | | ログ漏洩 | High | Critical | High | | 外部ストレージ | High | Critical | High | | ルート検知なし | Info | High | Critical | | 難読化なし | Low | Medium | Critical | | 改ざん検知なし | Info | High | Critical |

Output Structure

# Security Review Report
## Executive Summary
## Compliance Status (L1/L2/R)
## Findings by Severity
## Findings by OWASP Category
## MASVS Compliance Checklist
## Detailed Findings
## Recommendations
## Appendix

Notes

  • ソースコードのみ対象(APK解析は対象外)
  • 誤検出可能性あり、手動確認推奨
  • 依存関係脆弱性は dependency-check 等の併用推奨
  • L2/R要件はアプリ種別に応じて適用