漏洞扫描器Skill vulnerability-scanner

漏洞扫描器是一种用于检测代码安全漏洞的技能,通过识别CVE模式、评估严重性和提供修复建议,帮助开发者提高代码安全性。适用于安全审计、代码漏洞检测和OWASP十大问题扫描。关键词:安全漏洞扫描、CVE识别、代码安全、漏洞修复、OWASP扫描、静态分析、安全审计工具。

安全审计 0 次安装 0 次浏览 更新于 3/9/2026

名称: 漏洞扫描器 描述: 扫描代码中的安全漏洞,识别CVE模式,并提供严重性评级和修复指导。用于扫描安全问题、代码漏洞或OWASP十大问题。

漏洞扫描器

快速开始

扫描代码库以查找常见漏洞:

# 对于 JavaScript/TypeScript
npx eslint --plugin security .

# 对于 Python
bandit -r . -f json

# 对于通用模式
grep -rn "eval\|exec\|system\|shell" --include="*.py" --include="*.js"

指令

步骤1:识别项目类型

检测技术栈:

  • 检查 package.json (Node.js)
  • 检查 requirements.txtpyproject.toml (Python)
  • 检查 go.mod (Go)
  • 检查 Cargo.toml (Rust)

步骤2:运行静态分析

JavaScript/TypeScript:

npx eslint --plugin security --ext .js,.ts,.jsx,.tsx .

Python:

pip install bandit
bandit -r . -f json -o bandit-report.json

Go:

go install golang.org/x/vuln/cmd/govulncheck@latest
govulncheck ./...

步骤3:检查常见模式

扫描危险模式:

模式 风险 语言
eval() 代码注入 JS, Python
exec() 命令注入 Python
shell=True 命令注入 Python
dangerouslySetInnerHTML XSS React
SQL字符串拼接 SQL注入 所有
pickle.loads() 反序列化 Python

步骤4:分类发现

根据以下分配严重性:

  • 严重:远程代码执行,认证绕过
  • :SQL注入,XSS,SSRF
  • 中等:信息泄露,CSRF
  • :缺少头部,详细错误

步骤5:生成报告

格式化发现:

## 安全扫描结果

### 严重 (0)
[未找到]

### 高 (2)
1. **SQL注入** - src/db/queries.js:45
   - 模式:SQL查询中的字符串拼接
   - 修复:使用参数化查询

2. **XSS漏洞** - src/components/Comment.jsx:23
   - 模式:dangerouslySetInnerHTML 与用户输入
   - 修复:使用DOMPurify清理输入

常见漏洞模式

注入漏洞

// 错误:SQL注入
const query = `SELECT * FROM users WHERE id = ${userId}`;

// 正确:参数化查询
const query = 'SELECT * FROM users WHERE id = ?';
db.query(query, [userId]);

跨站脚本 (XSS)

// 错误:直接HTML插入
element.innerHTML = userInput;

// 正确:文本内容或清理
element.textContent = userInput;
// 或
element.innerHTML = DOMPurify.sanitize(userInput);

高级

详细信息,请参阅: