Claude-skill-registry android-owasp-security-reviewer

install
source · Clone the upstream repo
git clone https://github.com/majiayu000/claude-skill-registry
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/majiayu000/claude-skill-registry "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/data/android-owasp-security-reviewer" ~/.claude/skills/majiayu000-claude-skill-registry-android-owasp-security-reviewer && rm -rf "$T"
manifest: skills/data/android-owasp-security-reviewer/SKILL.md
source content

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. 検出結果分類

項目内容
SeverityCritical / High / Medium / Low / Info
OWASP CategoryM1-M10
MASVSL1 / L2 / R
Locationファイルパス:行番号
Evidenceコードスニペット
Recommendation修正方法

4. レポート生成

テンプレート:

assets/report-template.md
出力:
security-review-report.md

Quick Reference: Severity by Check

CheckL1 SeverityL2 SeverityR Severity
HTTP通信CriticalCriticalCritical
ハードコード鍵CriticalCriticalCritical
証明書検証無効CriticalCriticalCritical
debuggable=trueCriticalCriticalCritical
弱い暗号HighCriticalHigh
ログ漏洩HighCriticalHigh
外部ストレージHighCriticalHigh
ルート検知なしInfoHighCritical
難読化なしLowMediumCritical
改ざん検知なしInfoHighCritical

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要件はアプリ種別に応じて適用