用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
直接命令不会经过审查 Prompt;运行前请先检查来源。
npx skills add https://github.com/tools-only/X-Skills --skill security-scan命令会保持在同一行。复制前请横向滚动并检查完整内容。
想先保存到本地?可下载 SkillsMP 当前能够提供的文件。
Index of Build Systems Skills
Coordination patterns for distributed dataflow systems including barriers, epochs, and distributed snapshots
Windowing, sessionization, time-series aggregation, and late data handling for streaming systems
基于 SOC 职业分类
正在显示 SKILL.md
| description | Fast automated security scan for common vulnerabilities and CVEs |
| shortcut | ss |
| category | security |
| difficulty | beginner |
| estimated_time | 2-5 minutes |
Run a fast automated security scan of your codebase to identify common vulnerabilities, dependency issues, and security misconfigurations.
Quick Security Analysis in under 5 minutes:
Output: Security scan report with actionable remediation steps
Time: 2-5 minutes (depending on project size)
Perfect For:
Use This When:
# Scan current directory
/security-scan-quick
# Scan specific directory
/security-scan-quick /path/to/project
# Scan with detailed output
/security-scan-quick --verbose
# Scan and save report
/security-scan-quick --output report.md
Shortcut:
/ss # Quick scan current directory
Scans For:
Example Findings:
// CRITICAL: Hardcoded AWS credentials
const AWS_ACCESS_KEY = "AKIAIOSFODNN7EXAMPLE"
const AWS_SECRET_KEY = "wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY"
// File: config/aws.js:12-13
// Severity: Critical
// Fix: Move to environment variables or AWS IAM roles
Checks:
Example Findings:
Critical Vulnerability in lodash@4.17.15
CVE: CVE-2020-8203
Severity: High (CVSS 7.4)
Vulnerable: lodash < 4.17.19
Fixed in: lodash >= 4.17.19
Vulnerability: Prototype Pollution
Impact: Remote code execution possible via crafted input
Fix: npm install lodash@^4.17.19
Scans For:
Example Findings:
// ️ HIGH: Debug mode enabled
app.set('debug', true) // Should be false in production
// ️ HIGH: Permissive CORS
app.use(cors({ origin: '*' })) // Allows all origins
// MEDIUM: Missing security headers
// Recommendation: Add helmet.js middleware
Code Pattern Detection:
Example Findings:
# ️ HIGH: SQL Injection risk
query = f"SELECT * FROM users WHERE id = {user_id}" # String interpolation
cursor.execute(query)
# File: api/users.py:45
# Severity: High
# Fix: Use parameterized queries
# cursor.execute("SELECT * FROM users WHERE id = ?", (user_id,))
$ /security-scan-quick
Running Quick Security Scan...
Project: my-express-api
Files scanned: 247
⏱️ Scan duration: 3.2 seconds
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
CRITICAL ISSUES (Fix Immediately)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
1. Hardcoded Database Password
File: config/database.js:8
Severity: Critical
const DB_PASSWORD = "MySecretPassword123!"
️ Impact: Database compromise if code repository is exposed
Fix:
- Move to .env file
- Add .env to .gitignore
- Use environment variables:
const DB_PASSWORD = process.env.DB_PASSWORD
2. AWS Access Key Exposed
File: services/s3-upload.js:15
Severity: Critical
AWS_ACCESS_KEY_ID: "AKIAIOSFODNN7EXAMPLE"
️ Impact: Unauthorized access to AWS account, potential $$$$ charges
Fix:
- Rotate AWS credentials immediately
- Use AWS IAM roles instead
- Never commit credentials to git
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
️ HIGH SEVERITY ISSUES
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
3. Vulnerable Dependency: express@4.16.0
Package: express
Severity: High (CVSS 7.5)
CVE: CVE-2022-24999
Current: 4.16.0
Fixed in: 4.17.3
️ Vulnerability: Denial of Service via qs parameter parsing
Fix:
npm install express@^4.17.3
4. SQL Injection Vulnerability
File: routes/users.js:34
Severity: High
const query = `SELECT * FROM users WHERE id = ${req.params.id}`
db.query(query)
️ Impact: Database compromise, data theft, data modification
Fix:
const query = 'SELECT * FROM users WHERE id = ?'
db.query(query, [req.params.id])
5. Missing Rate Limiting
File: routes/auth.js
Severity: High
Login endpoint has no rate limiting
️ Impact: Brute force attacks possible
Fix:
npm install express-rate-limit
const rateLimit = require('express-rate-limit')
const loginLimiter = rateLimit({
windowMs: 15 * 60 * 1000, // 15 minutes
max: 5 // 5 attempts per window
})
app.post('/login', loginLimiter, loginHandler)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
MEDIUM SEVERITY ISSUES
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
6. Debug Mode Enabled
File: app.js:10
Severity: Medium
app.set('debug', true)
️ Impact: Verbose error messages may leak sensitive information
Fix:
app.set('debug', process.env.NODE_ENV !== 'production')
7. Permissive CORS Configuration
File: app.js:25
Severity: Medium
app.use(cors({ origin: }))
️ Impact: Any website can make requests to your API
Fix:
app.use(cors({
origin: process.env.ALLOWED_ORIGINS.()
}))
8. Missing Security Headers
File: app.js
Severity: Medium
No helmet.js middleware detected
️ Impact: Missing protection against common web vulnerabilities
Fix:
npm install helmet
const helmet = require()
app.use(helmet())
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
SCAN SUMMARY
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Total Issues: 8
Critical: 2 (Fix immediately)
High: 3 (Fix before production)
Medium: 3 (Improve security posture)
Estimated Fix Time: 2-3 hours
Priority Actions:
1. Remove hardcoded credentials (30 min)
2. Update vulnerable dependencies (15 min)
3. Fix SQL injection (45 min)
4. Add rate limiting (30 min)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
NEXT STEPS
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
1. Fix critical issues immediately
2. Run scan again to verify fixes
3. For comprehensive audit, use: /security-audit
4. Set up automated scanning CI/CD
Need fixing these issues?
- Use Security Auditor Expert detailed remediation
- Ask:
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Scan completed successfully!
Report saved to: security-scan-report-2025-10-10.md
** Critical (Fix Immediately - Within 24 Hours)**
Risk: Active exploitation possible, immediate data breach
** High (Fix Before Production - Within 1 Week)**
Risk: Significant security impact, exploitation likely
** Medium (Improve Security Posture - Within 1 Month)**
Risk: Increases attack surface, defense in depth
** Low (Best Practices - Backlog)**
Risk: Minimal direct security impact
| Feature | Quick Scan (/ss) | Full Audit (/security-audit) |
|---|---|---|
| Time | 2-5 minutes | 30-60 minutes |
| Depth | Surface-level | Deep analysis |
| Coverage | Common issues | OWASP Top 10 + business logic |
| Manual Review | No | Yes (code review) |
| Best For | Daily checks | Pre-production assessment |
| Reporting | Brief summary | Comprehensive report |
Use Quick Scan For:
Use Full Audit For:
name: Security Scan
on: [push, pull_request]
jobs:
security:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Run Security Scan
run: |
/security-scan-quick --output security-report.md
- name: Upload Report
uses: actions/upload-artifact@v3
with:
name: security-report
path: security-report.md
- name: Fail on Critical Issues
run: |
if grep -q " Critical" security-report.md; then
echo "Critical security issues found!"
exit 1
fi
security_scan:
stage: test
script:
- /security-scan-quick --output security-report.md
artifacts:
paths:
- security-report.md
expire_in: 30 days
rules:
- if: '$CI_PIPELINE_SOURCE == "merge_request_event"'
1. Test Credentials
// Flagged as hardcoded secret, but it's a test credential
const TEST_API_KEY = "test_key_123" // Used only in tests
Solution: Add comment to clarify
// SECURITY_SCAN_IGNORE: Test credential, not used in production
const TEST_API_KEY = "test_key_123"
2. Public API Keys
// Flagged, but it's a public key (safe to commit)
const STRIPE_PUBLISHABLE_KEY = "pk_test_123" // Public key, safe
Solution: Public keys are safe to commit (they're meant to be public)
Business Logic Flaws:
Solution: Use full security audit (/security-audit) for business logic review
Runtime Vulnerabilities:
Solution: Dynamic testing (pen testing) required
Daily: Quick scan before pushing code
git add .
/ss # Quick security check
git commit -m "feat: add new feature"
Weekly: Full security audit
/security-audit
Monthly: External penetration test (for production systems)
Order of Operations:
Don't Get Overwhelmed:
Make Security Easy:
Share Findings:
Cause: Large codebase or many dependencies
Solution:
# Scan specific directories only
/ss src/ # Scan source code only
# Skip dependency check (faster)
/ss --skip-deps
# Exclude large directories
/ss --exclude node_modules,dist,build
Problem: Scan flags test credentials or public keys
Solution:
// Add ignore comment
// SECURITY_SCAN_IGNORE: Test credential
const TEST_KEY = "test_123"
Verify:
/ss /path/to/project)--skip-deps not used)If truly no issues: Congratulations! Run full audit to confirm.
/security-audit - Comprehensive OWASP Top 10 audit (30-60 min)/crypto-audit - Cryptography-specific security review/docker-security-scan - Container security analysis/api-security-audit - API-specific security testingFound a security issue?
Scan not working?
npm install, pip install, etc.)/ss --verboseTime Investment: 2-5 minutes per scan Value: Early detection prevents hours of post-breach incident response
Run quick scans often. Fix issues early. Ship secure code. ️