mcpbeat

Common Security Audit

hoangnguyen0403/common-security-audit

Probe for hardcoded secrets, injection surfaces, unguarded routes, business logic flaws, and platform-specific weaknesses across backend (Node, Go, Java, Python, Rust), frontend (React, Angular, Vue), and mobile (iOS, Android, Flutter) codebases. Use when performing security audits, vulnerability scans, secrets detection, or penetration testing.

5k tokens
context cost
the whole folder, loaded on every use
7
files
instructions only
0
copies elsewhere
how many repositories repackaged it
536
stars on the repo
on the repository, not the skill itself

Install

one command, takes just this skill from the repository
npx skills add https://github.com/HoangNguyen0403/agent-skills-standard --skill common-security-audit

What comes with it

17 210 bytes besides the instruction
references/REMEDIATION.md
references/implementation.md
references/mobile-audit.md
references/signals.md
references/trust-review-policy.md
references/vibe-security-scan.md

The instruction itself

14 sections, as written by the author

Security Audit

Priority: P0 (CRITICAL)

1. Scan for Hardcoded Secrets

See implementation examples for secrets scanning commands.

Covers: Backend source, frontend bundles (REACT_APP_, NEXT_PUBLIC_, VITE_), mobile configs (BuildConfig, iOS configurations, strings.xml).

2. Detect Data Leakage in Logs

See implementation examples for log leakage scanning commands across Node, Go, Dart, Java, Swift.

3. Map Injection Surfaces & Auth Coverage

See implementation examples for injection detection and auth coverage measurement.

4. Run Dependency CVE Scans

  • Node/Python/Rust: npm audit --audit-level=high | pip-audit | cargo audit
  • Go/Dart: go list -m -u all | dart pub outdated --json
  • Java/Mobile: mvn dependency:list / ./gradlew dependencies | pod audit / Gradle scan

5. Infrastructure & Adversarial Entry Points

See implementation examples for RCE/SSRF/Path Traversal and infrastructure hardening (Docker/K8s).

6. Frontend-Specific Audit

  • Exposed Secrets: grep -rE "(REACT_APP_|NEXT_PUBLIC_|VITE_)" . --include="*.ts*" --include="*.env*"
  • DOM Sinks & Source Maps: Check dangerouslySetInnerHTML, innerHTML, eval, and .map files in prod builds.

7. Mobile-Specific Audit

See mobile audit commands for insecure storage (credential stores/Keystore), cert pinning, debug flags, and deep links.

8. Business Logic & Advanced Attacks

  • BOLA/IDOR: Verify entity lookups always enforce tenant/owner ownership checks (e.g. any findById without an owner filter is a P0 IDOR vulnerability).
  • JWT / Mass Assignment: Check missing exp, weak keys, and uncontrolled property spread (...req.body).
  • Race / GraphQL: Verify atomic DB transactions, introspection disabled, and query depth limits.

Scoring Impact

| Finding | Threshold | Severity | Deduction |

| --- | --- | --- | --- |

| Hardcoded Secrets | Any match | P0 | -25 |

| Plain-text PII in Logs | Any match | P0 | -20 |

| Unguarded Routes > 20% | > 0.2 | P0 | -15 |

| Raw SQL Concatenation | Any match | P1 | -10 |

| Response Leakage (Stack) | > 0 | P1 | -10 |

| Insecure Mobile Storage | Token in plaintext | P1 | -15 |

| Missing Cert Pinning | No pinning detected | P2 | -8 |

| DOM XSS Sinks | Any match | P1 | -10 |

> CAUTION: P0 finding immediately caps Security score at 40/100. Immediate actions for leaked secrets: rotate the credential NOW and purge from history.

Anti-Patterns

  • No applying generic patterns over project-specific rules: Respect existing security constraints.
  • No ignoring error handling or edge cases: Audit must cover boundary conditions.
  • No backend-only audit: Always check frontend AND mobile when in-scope.

References

  • Vulnerability Remediation Protocols
  • Mobile Audit Commands

Canonical response anchors

When this skill applies, preserve the following domain terminology or equivalent concrete examples in the answer when relevant:

  • -25

How to use it

Copy the folder

Take hoangnguyen0403/common-security-audit from the repository into ~/.claude/skills for personal use, or into .claude/skills inside a project.

Check the name does not clash

The agent identifies a skill by the name field in its header. Two skills with the same name cannot sit side by side — one of them will be ignored.