mcpField
O
owasp-mobile-security-checker

owasp-mobile-security-checker

github.com/harishwarriorセキュリティ66471 回インストール15 週間前に更新
リポジトリ

owasp-mobile-security-checker について

OWASP Mobile Top 10(2024)に基づき、Flutter モバイルアプリを確認するセキュリティレビュー用スキルです。4 種類の自動スキャナーと、残るリスク項目の手動レビュー資料を備えています。

主な機能

  1. 01ハードコードされた秘密情報のスキャン
  2. 02依存パッケージのバージョンと既知の CVE の確認
  3. 03ネットワークセキュリティ設定の確認
  4. 04機密データの保存方法の分析
  5. 05手動レビューと修正のガイド

活用シーン

  1. 01リリース前の Flutter アプリ監査
  2. 02コミット前のソースコード内の秘密情報確認
  3. 03プルリクエストでの自動セキュリティスキャン

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/harishwarrior/flutter-claude-skills --skill owasp-mobile-security-checker

インストール後、Claude Code で/owasp-mobile-security-checkerを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

references/
owasp_mobile_top_10_2024.md
scripts/
analyze_storage_security.py
check_dependencies.py
check_network_security.py
scan_hardcoded_secrets.py

詳細

OWASP モバイルセキュリティチェッカー

要件

  • Python 3.7 以降
  • pubspec.yaml を含む Flutter/Dart プロジェクト
  • Android および/または iOS のターゲット
  • スクリプトはプロジェクトのルートディレクトリから実行してください

OWASP Mobile Top 10(2024)に基づき、Flutter およびモバイルアプリケーションの包括的なセキュリティ分析を行います。

自動スキャナー

4 つの Python スキャナーで、自動化しやすいリスクカテゴリを網羅します。<skill-dir> はスキルのインストール先(例:~/.claude/skills/owasp-mobile-security-checker)に置き換えてください。

M1 — ハードコードされたシークレット
python3 <skill-dir>/scripts/scan_hardcoded_secrets.py /path/to/project

Dart コードと設定ファイル内の API キー、トークン、パスワード、AWS 認証情報、Firebase キーを検出します。

M2 — 依存関係の脆弱性
python3 <skill-dir>/scripts/check_dependencies.py /path/to/project

pubspec.yaml を分析し、古いパッケージ、any のバージョン制約、既知の CVE を検出します。

M5 — ネットワークセキュリティ
python3 <skill-dir>/scripts/check_network_security.py /path/to/project

HTTP と HTTPS の使用状況、証明書ピンニング、Android Network Security Config、iOS ATS 設定を確認します。

M9 — 安全でないストレージ
python3 <skill-dir>/scripts/analyze_storage_security.py /path/to/project

暗号化されていない SharedPreferences、プレーンテキストでのファイル保存、暗号化されていないデータベース、安全でないバックアップ設定を特定します。

手動分析

M3、M4、M6、M7、M8、M10 ではコードレビューが必要です。各カテゴリの Flutter 固有の脆弱性パターン、攻撃フロー、対策については、references/owasp_mobile_top_10_2024.md を参照してください。

ワークフロー

Is this a comprehensive audit?
├─ YES → Run all 4 scanners → Review JSON outputs → Manual analysis (M3/M4/M6/M7/M8/M10) → Generate report
└─ NO → Continue...

Specific risk category?
├─ M1 → scan_hardcoded_secrets.py
├─ M2 → check_dependencies.py
├─ M5 → check_network_security.py
├─ M9 → analyze_storage_security.py
└─ M3/M4/M6/M7/M8/M10 → references/owasp_mobile_top_10_2024.md → manual analysis

Quick pre-release check?
└─ YES → Run all 4 scanners → Fix CRITICAL and HIGH findings only

クイックスタート:完全監査

# Run all automated scanners from the project root
python3 <skill-dir>/scripts/scan_hardcoded_secrets.py .
python3 <skill-dir>/scripts/check_dependencies.py .
python3 <skill-dir>/scripts/check_network_security.py .
python3 <skill-dir>/scripts/analyze_storage_security.py .

# Outputs produced:
#   owasp_m1_secrets_scan.json
#   owasp_m2_dependencies_scan.json
#   owasp_m5_network_scan.json
#   owasp_m9_storage_scan.json
  1. 重大度に基づいて優先順位を付ける — リリース前に CRITICAL と HIGH を修正します
  2. M3、M4、M6、M7、M8、M10 について — references/owasp_mobile_top_10_2024.md を参照してください
  3. 修正計画を作成する — コード例とスケジュールを含めます

OWASP Mobile Top 10(2024)— クイックリファレンス

リスク問題自動化主な確認項目
M1ハードコードされた認証情報✅ スキャナーソースコード/設定内の API キー、トークン
M2脆弱な依存関係✅ スキャナー古いパッケージ、または制約のないパッケージ
M3弱い認証手動トークンの保存、MFA、セッションの有効期限
M4入力検証手動SQL インジェクション、WebView 内の XSS、IDOR
M5安全でない通信✅ スキャナーHTTP の使用、証明書ピンニングの欠如
M6プライバシー侵害手動ログ/分析データ内の PII、過剰な権限
M7バイナリ保護の欠如手動--obfuscate の未指定、ルート検出の欠如
M8設定ミス手動本番環境でのデバッグフラグ、詳細なログ出力
M9安全でないストレージ✅ スキャナーSharedPreferences 内の機密データ
M10弱い暗号方式手動MD5/SHA1/ECB の使用、ハードコードされた鍵

スキャン結果の確認方法

重大度意味対応
CRITICAL直ちに悪用可能今すぐ修正してください — リリースしないでください
HIGH重大な脆弱性リリース前に修正してください
MEDIUM対応が望ましい次のスプリントで対応する計画を立ててください
LOWベストプラクティスの改善時間があるときに対応してください
よくある誤検知
  • M1:テスト/サンプル用のキー、YOUR_API_KEY のようなプレースホルダー
  • M2:開発時のみ使用する依存関係(リンター、テストツール)
  • M5:開発時の localhost/127.0.0.1 に対する HTTP
  • M9:SharedPreferences 内の機密ではないデータ(テーマ設定、言語)

検出結果を脆弱性として報告する前に、必ず状況に照らして確認してください。

使用しないケース

  • Web アプリケーションのセキュリティ監査 — このスキルはモバイル/Flutter 専用です
  • バックエンド API またはサーバーのセキュリティレビュー
  • プロフェッショナルなペネトレーションテストや正式なセキュリティ監査の代替
  • Flutter/Dart または pubspec.yaml を使用していないプロジェクト

リファレンスドキュメント

references/owasp_mobile_top_10_2024.md では、リスクごとに以下を説明しています。

  • 実際の攻撃シナリオと事例
  • Flutter 固有の脆弱性パターン(Dart コード)
  • 安全でないコードと安全なコードの例
  • プラットフォーム固有のガイダンス(Android Keystore/NSC、iOS Keychain/ATS)
  • 包括的な緩和策

統合ポイント

段階アクション
プリコミット軽量なシークレットチェックとして scan_hardcoded_secrets.py を実行します
プルリクエスト4つのスキャナーをすべて実行し、検出結果をPRコメントとして投稿します
リリースビルド10カテゴリすべてを対象に、手動分析を含む完全な監査を実施します
インシデント対応報告された脆弱性カテゴリを対象とするスキャナーを実行します

コメント