بنقرة واحدة
security-scanner
Comprehensive security scanner for vulnerabilities, hardcoded secrets, and OWASP Top 10 issues
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
Comprehensive security scanner for vulnerabilities, hardcoded secrets, and OWASP Top 10 issues
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
استنادا إلى تصنيف SOC المهني
Analyze and optimize code performance, identify bottlenecks, and suggest improvements
Automated deployment orchestration with rollback, blue-green, and canary deployment strategies
Manage development environments, configurations, and secrets across local, staging, and production
Technical documentation specialist - create docs, API references, user guides for technical and non-technical audiences
Backend architecture agent for API design, database schema, and microservices
Data engineering agent for ETL pipelines, data warehousing, and analytics
| name | security-scanner |
| description | Comprehensive security scanner for vulnerabilities, hardcoded secrets, and OWASP Top 10 issues |
| allowed-tools | ["Read","Grep","Glob","Bash"] |
| version | 1.0.0 |
| author | GLINCKER Team |
| license | Apache-2.0 |
| keywords | ["security","vulnerability","owasp","secrets","scanning"] |
Comprehensive security analysis detecting hardcoded secrets, SQL injection, XSS, insecure dependencies, and OWASP Top 10 vulnerabilities.
Search for common secret patterns:
# API Keys
Grep for patterns:
- AWS: AKIA[0-9A-Z]{16}
- GitHub: ghp_[0-9a-zA-Z]{36}
- Slack: xox[baprs]-[0-9]{10,13}-[0-9a-zA-Z]{24,}
- Stripe: sk_live_[0-9a-zA-Z]{24}
- Private keys: -----BEGIN.*PRIVATE KEY-----
# Passwords
- password\s*=\s*["'][^"']+["']
- DB connection strings
- Hardcoded credentials
Example findings:
HIGH: Hardcoded AWS key found
File: src/config.js:12
Pattern: const AWS_KEY = "AKIAIOSFODNN7EXAMPLE"
Risk: Exposed AWS credentials
Fix: Use environment variables or secrets manager
SQL Injection:
# BAD: String concatenation
query = "SELECT * FROM users WHERE id = " + user_id
# GOOD: Parameterized query
query = "SELECT * FROM users WHERE id = ?"
Command Injection:
// BAD: Direct execution
exec(`ls ${userInput}`)
// GOOD: Sanitized input
execFile('ls', [sanitize(userInput)])
XSS Detection:
// BAD: innerHTML with user input
element.innerHTML = userInput
// GOOD: textContent or sanitize
element.textContent = userInput
// Or use DOMPurify
element.innerHTML = DOMPurify.sanitize(userInput)
# Check for vulnerable dependencies
npm audit
pip-audit
cargo audit
# Generate report
npm audit --json > audit-report.json
Broken Access Control
Cryptographic Failures
Injection
Insecure Design
Security Misconfiguration
# Security Scan Report
**Scan Date**: 2025-01-13
**Project**: myapp
**Total Issues**: 12
## Critical (2)
1. Hardcoded AWS credentials
- File: config/aws.js:5
- Risk: Full AWS account compromise
- Fix: Use AWS IAM roles or environment variables
2. SQL Injection vulnerability
- File: api/users.js:45
- Code: `SELECT * FROM users WHERE id = ${userId}`
- Fix: Use parameterized queries
## High (5)
3. XSS vulnerability in search
- File: components/Search.jsx:23
- Risk: Arbitrary JavaScript execution
- Fix: Sanitize user input with DOMPurify
4. Missing authentication on /admin endpoint
- File: routes/admin.js
- Risk: Unauthorized access to admin functions
- Fix: Add authentication middleware
## Medium (3)
5. Weak CORS configuration
- File: server.js:10
- Issue: CORS set to *
- Fix: Whitelist specific domains
## Low (2)
6. Console.log in production
- Multiple files
- Risk: Information disclosure
- Fix: Remove or use proper logging
## Recommendations
1. Implement secrets management (AWS Secrets Manager, Vault)
2. Add input validation library (joi, express-validator)
3. Enable Content Security Policy
4. Implement rate limiting
5. Add security headers (helmet.js)
// Before (Vulnerable)
const query = `SELECT * FROM users WHERE email = '${email}'`;
// After (Fixed)
const query = 'SELECT * FROM users WHERE email = ?';
db.execute(query, [email]);
User: "Scan my code for security issues"
Output:
User: "Check for vulnerable dependencies"
Output:
npm audit fixGLINCKER Team