
Senior-CSO security audit skill for vibe-coded apps. 22-check audit anchored to real 2026 incidents (Moltbook, Lovable CVE-2025-48757). Drop-in Claude Code skill.

██████╗███████╗ ██████╗ ██╗ ██╗██╗██████╗ ███████╗
██╔════╝██╔════╝██╔═══██╗ ██║ ██║██║██╔══██╗██╔════╝
██║ ███████╗██║ ██║ ██║ ██║██║██████╔╝█████╗
██║ ╚════██║██║ ██║ ╚██╗ ██╔╝██║██╔══██╗██╔══╝
╚██████╗███████║╚██████╔╝ ╚████╔╝ ██║██████╔╝███████╗
╚═════╝╚══════╝ ╚═════╝ ╚═══╝ ╚═╝╚═════╝ ╚══════╝
senior-CSO security audit for vibe-coded apps
Senior-CSO security audit skill for vibe-coded apps (Cursor / Lovable / Bolt / Replit / v0 / Claude-built).
Runs a deterministic, repeatable 20-layer audit and produces a structured report with file:line evidence and copy-paste remediation diffs.
Vibe-coded apps consistently ship the same shortlist of failures:
.env filesReal incidents this skill is anchored to:
/api/projects/[id], 18k user records exposed, 48 days unpatched.sk- / AKIA / AIzaSy keys frequently shipped in JS bundles..env / .cursor/ configs committed to git.pickle.loads on network input → RCE.VibeWrench scanned 100 vibe-coded apps (2026):
| Finding | % of apps | Covered by |
|---|---|---|
| Missing CSRF | 70% | Check 21 |
| Exposed secrets / API keys | 41% | Checks 6, 16 |
| Stack-trace leak | 36% | Check 8 |
| Missing input validation | 28% | Checks 3-5 |
| No endpoint auth | 21% | Checks 1, 11, 19 |
| Missing security headers | 20% | Check 22 |
| XSS | 18% | Check 5 |
| Exposed Supabase creds | 12% | Checks 6, 13 |
Wiz Research (2025): 20% of vibe-coded apps ship serious flaws. ETH Zurich BaxBench (2025): 45% of AI-generated code contains an OWASP Top 10 vulnerability.
22 layered checks:
NEXT_PUBLIC_*/VITE_*)max_tokens + timeout + canary on every LLM calltenant_id at the DB level/[id] route (BOLA / IDOR)console.log(req.body).env* in .gitignore AND not in git historypickle.loads / eval / yaml.load / Function() / shell:true on user inputuseEffect redirectFull procedure for each check: references/checks.md.
One-liner:
curl -fsSL https://raw.githubusercontent.com/git-akki/cso-vibecheck/main/install.sh | bash
Or manual:
git clone https://github.com/git-akki/cso-vibecheck.git ~/.claude/skills/cso-vibecheck
Then in any Claude Code session, ask:
audit my app for security issues
or invoke directly:
/cso-vibecheck
For a 30-second scan of the 5 most catastrophic categories (key in client, IDOR, RLS off, .env exposed, identity from request):
bash ~/.claude/skills/cso-vibecheck/scripts/triage.sh /path/to/repo
Then ask Claude:
/cso-vibecheck quick scan
Structured Markdown report with:
file:line evidence, plain-English description, anchor incident, one-sentence exploit, copy-paste diff fixSee references/report-template.md for the exact template.
MIT