owasp-mobile-security-checker
Use when performing security audits, vulnerability assessments, or compliance checks on Flutter or mobile applications. Covers OWASP Mobile Top 10 (2024) — hardcoded secrets (M1), insecure storage (M9), weak cryptography (M10), network issues (M5), and 6 more categories with automated scanners and remediation guidance.
What this skill does
# OWASP Mobile Security Checker ## Requirements - Python 3.7+ - Flutter/Dart project with `pubspec.yaml` - Android and/or iOS targets - Run scripts from the project root directory Comprehensive security analysis for Flutter and mobile applications based on OWASP Mobile Top 10 (2024). ## Automated Scanners Four Python scanners cover the most automatable risk categories. Replace `<skill-dir>` with the skill's install path (e.g. `~/.claude/skills/owasp-mobile-security-checker`): ### M1 — Hardcoded Secrets ```bash python3 <skill-dir>/scripts/scan_hardcoded_secrets.py /path/to/project ``` Detects API keys, tokens, passwords, AWS credentials, and Firebase keys in Dart code and config files. ### M2 — Dependency Vulnerabilities ```bash python3 <skill-dir>/scripts/check_dependencies.py /path/to/project ``` Analyzes `pubspec.yaml` for outdated packages, `any` version constraints, and known CVEs. ### M5 — Network Security ```bash python3 <skill-dir>/scripts/check_network_security.py /path/to/project ``` Checks HTTP vs HTTPS usage, certificate pinning, Android Network Security Config, and iOS ATS settings. ### M9 — Insecure Storage ```bash python3 <skill-dir>/scripts/analyze_storage_security.py /path/to/project ``` Identifies unencrypted SharedPreferences, plaintext file storage, unencrypted databases, and insecure backup configurations. ## Manual Analysis M3, M4, M6, M7, M8, and M10 require code review. See `references/owasp_mobile_top_10_2024.md` for Flutter-specific vulnerability patterns, attack flows, and remediation for each category. ## Workflow ```text 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 ``` ## Quick Start: Full Audit ```bash # 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. **Prioritise by severity** — fix CRITICAL and HIGH before release 2. **For M3, M4, M6, M7, M8, M10** — see `references/owasp_mobile_top_10_2024.md` 3. **Generate remediation plan** with code examples and timeline ## OWASP Mobile Top 10 (2024) — Quick Reference | Risk | Issue | Automated? | Key Check | | --- | --- | --- | --- | | **M1** | Hardcoded credentials | ✅ scanner | API keys, tokens in source/config | | **M2** | Vulnerable dependencies | ✅ scanner | Outdated or unconstrained packages | | **M3** | Weak authentication | Manual | Token storage, MFA, session expiry | | **M4** | Input validation | Manual | SQL injection, XSS in WebViews, IDOR | | **M5** | Insecure communication | ✅ scanner | HTTP usage, missing cert pinning | | **M6** | Privacy violations | Manual | PII in logs/analytics, excess permissions | | **M7** | No binary protections | Manual | Missing `--obfuscate`, no root detection | | **M8** | Misconfiguration | Manual | Debug flags in production, verbose logging | | **M9** | Insecure storage | ✅ scanner | Sensitive data in SharedPreferences | | **M10** | Weak cryptography | Manual | MD5/SHA1/ECB usage, hardcoded keys | ## Understanding Scan Results | Severity | Meaning | Action | | --- | --- | --- | | **CRITICAL** | Exploitable immediately | Fix now — do not release | | **HIGH** | Significant vulnerability | Fix before release | | **MEDIUM** | Should be addressed | Plan for next sprint | | **LOW** | Best practice improvement | Address as time permits | ### Common False Positives - **M1**: Test/example keys, placeholders like `YOUR_API_KEY` - **M2**: Dev-only dependencies (linters, test tools) - **M5**: HTTP for `localhost`/`127.0.0.1` in development - **M9**: Non-sensitive data in SharedPreferences (theme preference, language) Always verify findings in context before flagging as vulnerabilities. ## When NOT to Use - Web application security audits — this skill is mobile/Flutter-specific - Backend API or server security reviews - As a substitute for professional penetration testing or a formal security audit - Projects that do not use Flutter/Dart or `pubspec.yaml` ## Reference Documentation `references/owasp_mobile_top_10_2024.md` provides per-risk detail: - Real-world attack scenarios and examples - Flutter-specific vulnerability patterns (Dart code) - Insecure vs secure code examples - Platform-specific guidance (Android Keystore/NSC, iOS Keychain/ATS) - Full mitigation strategies ## Integration Points | Stage | Action | | --- | --- | | Pre-commit | Run `scan_hardcoded_secrets.py` as a lightweight secrets gate | | Pull requests | Run all 4 scanners, post findings as PR comment | | Release builds | Full audit including manual analysis for all 10 categories | | Incident response | Run targeted scanner for the reported vulnerability category |
Related in Security
mac-ops
IncludedComprehensive macOS workstation operations — diagnose kernel panics, identify failing drives, audit launchd startup items, decode wake reasons, triage TCC permission denials, manage APFS snapshots, recover from no-boot. Use for: Mac is slow, slow bootup, won't boot, kernel panic, kernel_task hot, mds_stores CPU, photoanalysisd, cloudd, login loop, gray screen, sleep wake failure, drive failing, IO errors, APFS snapshots eating space, Time Machine local snapshots, Spotlight indexing, launchd, LaunchAgent, LaunchDaemon, login items, TCC permissions, Full Disk Access, Screen Recording denied, Gatekeeper, quarantine, com.apple.quarantine, app is damaged, helper tool, /Library/PrivilegedHelperTools, pmset, wake reasons, dark wake, sysdiagnose, panic.ips, DiagnosticReports, configuration profile, MDM profile, remote diagnostics over SSH.
a11y-audit
IncludedRun accessibility audits on web projects combining automated scanning (axe-core, Lighthouse) with WCAG 2.1 AA compliance mapping, manual check guidance, and structured reporting. Output is configurable: markdown report only, markdown plus machine-readable JSON, or markdown plus issue tracker integration. Use this skill whenever the user mentions "accessibility audit", "a11y audit", "WCAG audit", "accessibility check", "compliance scan", or asks to check a web project for accessibility issues. Also trigger when the user wants to verify WCAG conformance or map findings to a specific standard (CAN-ASC-6.2, EN 301 549, ADA/AODA).
erpclaw
IncludedAI-native ERP system with self-extending OS. Full accounting, invoicing, inventory, purchasing, tax, billing, HR, payroll, advanced accounting (ASC 606/842, intercompany, consolidation), and financial reporting. 413 actions across 14 domains, 43 expansion modules. Constitutional guardrails, adversarial audit, schema migration. Double-entry GL, immutable audit trail, US GAAP.
assess
IncludedAssesses and rates quality 0-10 across multiple dimensions (correctness, maintainability, security, performance, testability, simplicity) with pros/cons analysis. Compares against project conventions and prior decisions from memory. Produces structured evaluation reports with actionable improvement suggestions. Use when evaluating code, designs, architectures, or comparing alternative approaches.
spring-boot-security-jwt
IncludedProvides JWT authentication and authorization patterns for Spring Boot 3.5.x covering token generation with JJWT, Bearer/cookie authentication, database/OAuth2 integration, and RBAC/permission-based access control using Spring Security 6.x. Use when implementing authentication or authorization in Spring Boot applications.
code-hardcode-audit
IncludedDetect hardcoded values, magic numbers, and leaked secrets. TRIGGERS - hardcode audit, magic numbers, PLR2004, secret scanning.