ios-security

miyakawa2449's avatarfrom miyakawa2449

iOSアプリのセキュリティレビュー。OWASP Mobile Top 10、App Transport Security、Keychain使用をチェック。Use when: セキュリティ、脆弱性、認証、Keychain、ATS を依頼された時。

⭐0stars🔀0forks📁View on GitHub🕐Updated Dec 29, 2025

When & Why to Use This Skill

This Claude skill provides a comprehensive security review for iOS applications, focusing on the OWASP Mobile Top 10 standards. It automates the detection of vulnerabilities in App Transport Security (ATS) configurations, Keychain implementation, and sensitive data storage, ensuring that Swift codebases adhere to industry-leading security best practices.

Use Cases

  • Pre-release Security Audit: Conduct a thorough check of iOS projects before deployment to identify risks like improper platform usage or insecure data storage.
  • Sensitive Data Verification: Audit the codebase to ensure that authentication tokens and passwords are encrypted in the Keychain rather than stored in UserDefaults or hardcoded in source files.
  • Network Compliance Check: Verify Info.plist settings to ensure App Transport Security (ATS) is enabled and that the application enforces secure HTTPS communication with certificate pinning where necessary.
  • Automated Vulnerability Scanning: Utilize specialized grep patterns to quickly locate hardcoded API keys, secrets, and accidental debug logs (print/NSLog) that could leak information in production.
nameios-security
description"iOSアプリのセキュリティレビュー。OWASP Mobile Top 10、App Transport Security、Keychain使用をチェック。Use when: セキュリティ、脆弱性、認証、Keychain、ATS を依頼された時。"

iOS セキュリティレビュー

OWASP Mobile Top 10 チェック項目

ID リスク チェック内容
M1 Improper Platform Usage Info.plist の ATS設定、権限の最小化
M2 Insecure Data Storage Keychain使用、UserDefaults に機密情報なし
M3 Insecure Communication HTTPS強制、証明書ピンニング
M4 Insecure Authentication BiometricなしのKeychain保護、Token管理

Swift セキュリティパターン

機密情報の保存

  • パスワード・トークンはKeychainに保存
  • UserDefaultsに機密情報を保存していない
  • ハードコードされたAPIキー・シークレットがない

通信セキュリティ

  • Info.plistでATSが無効化されていない
  • URLSessionでカスタム証明書検証を適切に実装
  • デバッグ用のログに機密情報を出力していない

コード検査パターン

# ハードコード検索
grep -rn "password\|secret\|apiKey\|api_key" Sources/

# print/NSLogの確認(本番では削除推奨)
grep -rn "print(\|NSLog(" Sources/