Next.js Security Scan — Claude Code skill: find vulns fast
A skill that scans Next.js and TypeScript/JavaScript projects for XSS, injection flaws, auth holes and hardcoded secrets. Useful before you ship.
npx skills add sugarforever/01coder-agent-skills --skill next.js-security-scan -a claude-code
npx skills add sugarforever/01coder-agent-skills --skill nextjs-security-scan -a claude-codeWhat Next.js Security Scan does
The skill walks a codebase through the OWASP Top 10:2025 checklist and adds Next.js-specific checks on top. It flags dangerous calls like dangerouslySetInnerHTML and eval, looks for Server Actions with no authentication, checks environment variable exposure and reads your next.config.js.
Three scan modes. Quick covers only the critical stuff: hardcoded secrets, dangerous functions, known-vulnerable dependencies. Full goes through every OWASP category, SQL/NoSQL/Command injection and cryptographic failures. Targeted runs one category at a time via --xss, --injection, --auth, --secrets, --deps or --nextjs. Dependency auditing runs through scripts/dependency-audit.sh, secret detection through scripts/secret-scanner.py, which needs Python. Real .env files are skipped by default; only .env.example and .env.template get analyzed. The --include-env-files flag overrides that, and if you ever need it, it is worth asking why secrets are sitting in the repo at all.
Findings come out in the shape set by assets/report-template.md: severity from CRITICAL down to INFO, file path with line number, the code snippet, the risk, and a fix. Output plugs into GitHub Security Advisories, SARIF for GitHub Code Scanning, or plain JSON.
What it helps with
- catch hardcoded API keys and passwords in source files
- check Server Actions for missing authentication
- spot XSS through
dangerouslySetInnerHTMLandeval - audit dependencies against known CVEs
- produce a SARIF report for CI code scanning
Example prompts for the agent
- scan this project for vulnerabilities before we deploy
- run a targeted scan with
--secretsacross theappfolder - check
app/actions.tsfor Server Actions without auth checks
How to install Next.js Security Scan
1Skills CLI (Vercel)
npx skills add sugarforever/01coder-agent-skills --skill next.js-security-scan -a claude-codenpx skills add sugarforever/01coder-agent-skills --skill nextjs-security-scan -a claude-code2Manually: put the files in place
~/.claude/skills/nextjs-security-scan/SKILL.mdCopy the whole skill folder; for one project use .claude/skills/nextjs-security-scan/
1Skills CLI (Vercel)
npx skills add sugarforever/01coder-agent-skills --skill nextjs-security-scan -a codex2Manually: put the files in place
.agents/skills/nextjs-security-scan/SKILL.mdFor all projects use ~/.agents/skills/
1Skills CLI (Vercel)
npx skills add sugarforever/01coder-agent-skills --skill nextjs-security-scan -a cursor2Manually: put the files in place
.cursor/skills/nextjs-security-scan/SKILL.mdCursor also reads .agents/skills/ and .claude/skills/
1GitHub CLI
gh skill install sugarforever/01coder-agent-skills nextjs-security-scan2Manually: put the files in place
.github/skills/nextjs-security-scan/SKILL.md1Skills CLI (Vercel)
npx skills add sugarforever/01coder-agent-skills --skill nextjs-security-scan -a gemini-cli2Platform CLI
gemini skills install https://github.com/sugarforever/01coder-agent-skills --path skills/nextjs-security-scanManually: put the files in place
.devin/skills/nextjs-security-scan/SKILL.mdThe legacy .windsurf/skills/ path still works
Skills CLI (Vercel)
npx skills add sugarforever/01coder-agent-skills --skill nextjs-security-scan -a opencodeClaude.ai
Zip the folder and upload it in Settings → Capabilities → Skills
Step by step, with commands for each platform: How to install skills in Claude Code: five ways
Questions about Next.js Security Scan
How do I install Next.js Security Scan in Claude?
Run npx skills add sugarforever/01coder-agent-skills --skill nextjs-security-scan -a claude-code. The skill lands at ~/.claude/skills/nextjs-security-scan/SKILL.md.
What does Next.js Security Scan do?
It scans Next.js and TypeScript/JavaScript projects for XSS, injection, authentication flaws, hardcoded secrets and Next.js-specific issues. It also audits dependencies for known CVEs and writes a report with fixes.
What scan modes does it offer?
Three: quick for critical issues, full across all OWASP Top 10:2025 categories, and targeted with --xss, --injection, --auth, --secrets, --deps or --nextjs.
Source text
SKILL.md · MIT
--- name: "Next.js Security Scan" description: "Comprehensive security vulnerability scanner for Next.js and TypeScript/JavaScript projects. Detects OWASP Top 10 vulnerabilities, XSS, injection flaws, authentication issues, hardcoded secrets, and Next.js-specific security problems. Audits dependencies for known CVEs and generates actionable security reports." --- # Next.js Security Scan Skill This skill enables comprehensive security scanning of Next.js and TypeScript/JavaScript projects based on OWASP guidelines and industry best practices. ## When to Use This Skill - Security audits of Next.js applications - Code review for security vulnerabilities - Pre-deployment security checks - Dependency vulnerability assessment - Detecting hardcoded secrets and credentials ## Scan Types ### 1. Quick Scan Fast scan focusing on critical vulnerabilities: - Hardcoded secrets and API keys - Dangerous function usage (`dangerouslySetInnerHTML`, `eval`) - Missing authentication in Server Actions - Known vulnerable dependencies ### 2. Full Scan Comprehensive security assessment covering: - All OWASP Top 10:2025 categories - XSS vulnerability patterns - Injection vulnerabilities (SQL, NoSQL, Command) - Authentication and authorization flaws - Security misconfigurations - Cryptographic failures - Next.js-specific vulnerabilities - Dependency audit (CVE check) - Environment variable exposure ### 3. Targeted Scan Focus on specific vulnerability categories: - `--xss` - Cross-site scripting patterns - `--injection` - SQL/NoSQL/Command injection - `--auth` - Authentication/authorization issues - `--secrets` - Hardcoded credentials - `--deps` - Dependency vulnerabilities - `--nextjs` - Next.js specific issues ## Scan Procedure ### Step 1: Project Discovery 1. Identify project type (Next.js App Router, Pages Router, or plain React) 2. Locate configuration files (`next.config.js`, `package.json`, `.env*`) 3. Map the codebase structure ### Step 2: Dependency Audit Run the dependency audit script: ```bash ./scripts/dependency-audit.sh ``` Or manually: ```bash npm audit --json # or yarn audit --json ``` ### Step 3: Secret Scanning Scan for hardcoded secrets: ```bash python scripts/secret-scanner.py /path/to/project ``` **Important: Environment File Handling** - By default, real `.env` files are **SKIPPED** (`.env`, `.env.local`, `.env.production`, etc.) - These files contain actual secrets and should not be in version control - Only `.env.example` and `.env.template` files are analyzed for documentation quality - Use `--include-env-files` flag only if explicitly requested by user The scanner will: 1. Scan source code for hardcoded secrets 2. Analyze `.env.example` templates to check: - Which sensitive variables are documented - Whether variables have descriptions (comments) - If placeholder values look like real secrets - Suggestions for missing common variables ### Step 4: Pattern Analysis For each file in the codebase, check against patterns in: - `references/xss-patterns.md` - XSS vulnerabilities - `references/injection-patterns.md` - Injection flaws - `references/auth-vulnerabilities.md` - Auth issues - `references/nextjs-specific.md` - Next.js vulnerabilities ### Step 5: Report Generation Generate a security report using: - `assets/report-template.md` - Report structure ## Severity Classification | Severity | Description | Action Required | |----------|-------------|-----------------| | CRITICAL | Exploitable vulnerability with severe impact | Immediate fix required | | HIGH | Significant security risk | Fix before deployment | | MEDIUM | Potential security issue | Fix in next release | | LOW | Minor security concern | Consider fixing | | INFO | Security best practice suggestion | Optional improvement | ## Key Files to Scan ### Always Check - `**/*.ts`, `**/*.tsx`, `**/*.js`, `**/*.jsx` - Source code - `next.config.js`, `next.config.mjs` - Next.js configuration - `package.json`, `package-lock.json` - Dependencies - `middleware.ts`, `middleware.js` - Middleware security ### Environment Files - `.env.example`, `.env.template` - **SCAN** for template analysis - `.env`, `.env.local`, `.env.production` - **SKIP** by default (contain real secrets) **Note:** Real `.env` files should never be committed to version control. The scanner analyzes `.env.example` templates to ensure proper documentation of required variables. ### High Priority Locations - `app/api/**/*` - API routes (App Router) - `pages/api/**/*` - API routes (Pages Router) - `**/actions.ts`, `**/*-actions.ts` - Server Actions - `lib/auth*`, `utils/auth*` - Authentication code - `**/middleware.*` - Middleware files ## Output Format Findings should be reported as: ``` [SEVERITY] Category: Description File: path/to/file.ts:lineNumber Code: <relevant code snippet> Risk: <explanation of the security risk> Fix: <recommended remediation> ``` ## Integration with CI/CD This skill can generate output compatible with: - GitHub Security Advisories - SARIF format for GitHub Code Scanning - JSON for custom integrations ## References Load additional context as needed: - `references/owasp-top-10.md` - OWASP Top 10:2025 quick reference - `references/xss-patterns.md` - XSS detection patterns - `references/injection-patterns.md` - Injection vulnerability patterns - `references/auth-vulnerabilities.md` - Authentication security patterns - `references/nextjs-specific.md` - Next.js specific vulnerabilities and CVEs
© sugarforever · MIT · sugarforever/01coder-agent-skills