Skip to main content

security-audit

Guides comprehensive security audits to identify vulnerabilities and ensure compliance with security standards.

Install this skill

or
0/100

Security score

The security-audit skill was audited on Feb 28, 2026 and we found 39 security issues across 4 threat categories, including 2 high-severity. Review the findings below before installing.

Categories Tested

Security Issues

high line 427

Direct command execution function call

SourceSKILL.md
427exec(`convert ${filename} output.png`);
high line 436

Direct command execution function call

SourceSKILL.md
436const child = spawn('imagemagick', [validCommand, sanitizedFilename, 'output.png']);
medium line 333

Template literal with variable interpolation in command context

SourceSKILL.md
333const query = `SELECT * FROM users WHERE email = '${email}'`;
medium line 346

Template literal with variable interpolation in command context

SourceSKILL.md
346return await db.$queryRaw`
medium line 427

Template literal with variable interpolation in command context

SourceSKILL.md
427exec(`convert ${filename} output.png`);
medium line 471

Template literal with variable interpolation in command context

SourceSKILL.md
471return await fs.readFile(`./uploads/${filename}`);
medium line 535

Template literal with variable interpolation in command context

SourceSKILL.md
535return `${iv.toString('hex')}:${authTag.toString('hex')}:${encrypted}`;
medium line 1146

Template literal with variable interpolation in command context

SourceSKILL.md
1146```yaml
low line 419

Node child_process module reference

SourceSKILL.md
419import { spawn } from 'child_process';
low line 1199

Fetch to external URL

SourceSKILL.md
1199<form onSubmit={() => fetch('/api/subscribe', {
medium line 764

Webhook reference - potential data exfiltration

SourceSKILL.md
764#### Webhook Signature Verification
medium line 766

Webhook reference - potential data exfiltration

SourceSKILL.md
766**Best practice:** Use `crypto.timingSafeEqual()` for comparing webhook signatures to prevent timing attacks:
low line 770

Webhook reference - potential data exfiltration

SourceSKILL.md
770export function verifyWebhookSignature(payload: string, signature: string, secret: string): boolean {
low line 53

Access to .env file

SourceSKILL.md
53pattern: "process\\.env\\."
low line 113

Access to .env file

SourceSKILL.md
113secure: process.env.NODE_ENV === 'production',
low line 521

Access to .env file

SourceSKILL.md
521const ENCRYPTION_KEY = process.env.ENCRYPTION_KEY;
low line 588

Access to .env file

SourceSKILL.md
588glob: ".env"
medium line 595

Access to .env file

SourceSKILL.md
595- `.env` files committed to version control
low line 611

Access to .env file

SourceSKILL.md
611DATABASE_URL: process.env.DATABASE_URL,
low line 612

Access to .env file

SourceSKILL.md
612NEXTAUTH_SECRET: process.env.NEXTAUTH_SECRET,
low line 613

Access to .env file

SourceSKILL.md
613STRIPE_SECRET_KEY: process.env.STRIPE_SECRET_KEY,
low line 614

Access to .env file

SourceSKILL.md
614OPENAI_API_KEY: process.env.OPENAI_API_KEY,
low line 617

Access to .env file

SourceSKILL.md
617// Ensure .env is in .gitignore
low line 618

Access to .env file

SourceSKILL.md
618// Use .env.example (without values) to document required variables
low line 953

Access to .env file

SourceSKILL.md
953- ".env*"
low line 954

Access to .env file

SourceSKILL.md
954- "*.env"
medium line 968

Access to .env file

SourceSKILL.md
968- `.env` files in `.gitignore`
medium line 969

Access to .env file

SourceSKILL.md
969- Use `.env.example` (without values) to document variables
medium line 970

Access to .env file

SourceSKILL.md
970- Use secrets management in production (not `.env` files)
low line 744

External URL reference

SourceSKILL.md
744'https://example.com',
low line 745

External URL reference

SourceSKILL.md
745'https://app.example.com',
low line 840

External URL reference

SourceSKILL.md
840script-src 'self' 'unsafe-eval' 'unsafe-inline' https://cdn.vercel-insights.com;
low line 844

External URL reference

SourceSKILL.md
844connect-src 'self' https://api.example.com;
low line 942

External URL reference

SourceSKILL.md
942CMD node -e "require('http').get('http://localhost:3000/api/health', (r) => process.exit(r.statusCode === 200 ? 0 : 1))"
low line 1180

External URL reference

SourceSKILL.md
1180target: 'http://localhost:3000'
low line 1311

External URL reference

SourceSKILL.md
1311- [OWASP Top 10](https://owasp.org/www-project-top-ten/)
low line 1312

External URL reference

SourceSKILL.md
1312- [CWE Top 25](https://cwe.mitre.org/top25/)
low line 1313

External URL reference

SourceSKILL.md
1313- [NIST Cybersecurity Framework](https://www.nist.gov/cyberframework)
low line 1314

External URL reference

SourceSKILL.md
1314- [SANS Top 25 Software Errors](https://www.sans.org/top25-software-errors/)
Scanned on Feb 28, 2026
View Security Dashboard