Next.js Security Scan
Skill139 starsChanged 9 months agoMITView on GitHub
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.
- Reads credentials
In this repository23 other files it gives its agents.
- CLAUDE.mdCLAUDE.md
- add-feishuSkill
- claude-session-managerSkill
- codex-cliSkill
- codex-session-managerSkill
- cover-designSkill
- cover-imageSkill
- diagram-to-imageSkill
- fpl-copilotSkill
- interactive-inputSkill
- mining-session-skillsSkill
- personal-chinese-writing-styleSkill
- producing-videoSkill
- promote-postSkill
- publish-substack-articleSkill
- publish-x-articleSkill
- publish-zsxq-articleSkill
- Python Security ScanSkill
- share-readingSkill
- slides-videoSkill
- subtitle-correctionSkill
- tweet-insightSkill
- video-plannerSkill
The file
We split this skill into the rules it gives an agent
5 rules. About 0 are common, 3 are distinctive, and 2 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈3
Distinctive · estimate
This author's own choices. Worth a look.
2
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 29
All OWASP Top 10:2025 categories
- Distinctive: line 56
Run the dependency audit script:
- Very specific: line 76
Only .env.example and .env.template files are analyzed for documentation quality
- Very specific: line 77
Use --include-env-files flag only if explicitly requested by user
- Distinctive: line 84
If placeholder values look like real secrets
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
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
- Identify project type (Next.js App Router, Pages Router, or plain React)
- Locate configuration files (
next.config.js,package.json,.env*) - Map the codebase structure
Step 2: Dependency Audit
Run the dependency audit script:
./scripts/dependency-audit.shOr manually:
npm audit --json
# or
yarn audit --jsonStep 3: Secret Scanning
Scan for hardcoded secrets:
python scripts/secret-scanner.py /path/to/projectImportant: Environment File Handling
- By default, real
.envfiles are SKIPPED (.env,.env.local,.env.production, etc.) - These files contain actual secrets and should not be in version control
- Only
.env.exampleand.env.templatefiles are analyzed for documentation quality - Use
--include-env-filesflag only if explicitly requested by user
The scanner will:
- Scan source code for hardcoded secrets
- Analyze
.env.exampletemplates 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 vulnerabilitiesreferences/injection-patterns.md- Injection flawsreferences/auth-vulnerabilities.md- Auth issuesreferences/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 codenext.config.js,next.config.mjs- Next.js configurationpackage.json,package-lock.json- Dependenciesmiddleware.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 Actionslib/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 referencereferences/xss-patterns.md- XSS detection patternsreferences/injection-patterns.md- Injection vulnerability patternsreferences/auth-vulnerabilities.md- Authentication security patternsreferences/nextjs-specific.md- Next.js specific vulnerabilities and CVEs
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

