mcpField
V
vulnerability-scanner

vulnerability-scanner

github.com/vudovn安全8.2k198 次安装9 周前更新
代码仓库

关于 vulnerability-scanner

vulnerability-scanner 是面向安全审查与开发工作的漏洞分析指南,包含威胁建模、风险排序、代码模式检查和报告建议。它还提供 Python 脚本用于安全原则验证,并引用 OWASP 检查清单。

主要功能

  1. 01威胁建模与攻击面梳理
  2. 02按 CVSS、EPSS 和资产排序风险
  3. 03检查高风险代码与密钥模式
  4. 04供应链及云安全检查要点
  5. 05异常处理与失效关闭原则
  6. 06Python 安全验证脚本

适用场景

  1. 01梳理应用入口和数据流
  2. 02确定漏洞修复的优先级
  3. 03检查代码中的注入或密钥风险
  4. 04整理含影响与修复建议的发现报告

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/vudovn/ag-kit --skill vulnerability-scanner

安装后在 Claude Code 中输入/vulnerability-scanner确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

checklists.md
scripts/
dependency_analyzer.py
security_scan.py

详细介绍

漏洞扫描器

像攻击者一样思考,像专家一样防御。2025 威胁态势认知。

🔧 运行时脚本

执行以进行自动化验证:

脚本用途用法
scripts/security_scan.py验证已应用的安全原则python scripts/security_scan.py <project_path>

📋 参考文件

文件用途
checklists.mdOWASP Top 10、认证、API、数据保护检查清单

1. 安全专家思维模式

核心原则
原则应用
假设已被入侵像攻击者已经在内部一样进行设计
零信任从不信任,始终验证
纵深防御多层防护,无单点
最小权限仅授予所需的最小访问权限
安全失败出错时拒绝访问
威胁建模问题

在扫描之前,先问:

  1. 我们在保护什么?(资产)
  2. 谁会攻击?(威胁行为者)
  3. 他们会如何攻击?(攻击向量)
  4. 影响是什么?(业务风险)

2. OWASP Top 10:2025

风险类别
排名类别思考要点
A01失效的访问控制谁能访问什么?IDOR、SSRF
A02安全配置错误默认值、标头、暴露的服务
A03软件供应链 🆕依赖项、CI/CD、构建完整性
A04加密失败弱加密、暴露的密钥
A05注入用户输入 → 系统命令
A06不安全设计有缺陷的架构
A07认证失败会话、凭据管理
A08完整性失败未签名的更新、被篡改的数据
A09日志与告警盲点、无监控
A10异常情况 🆕错误处理、失效开放状态
2025 关键变化
2021 → 2025 Shifts:
├── SSRF merged into A01 (Access Control)
├── A02 elevated (Cloud/Container configs)
├── A03 NEW: Supply Chain (major focus)
├── A10 NEW: Exceptional Conditions
└── Focus shift: Root causes > Symptoms

3. 供应链安全(A03)

攻击面
向量风险要问的问题
依赖项恶意软件包我们是否审计新依赖项?
锁文件完整性攻击它们是否已提交?
构建管道CI/CD 被攻陷谁可以修改?
注册表域名抢注来源是否已验证?
防御原则
  • 验证软件包完整性(校验和)
  • 锁定版本,审计更新
  • 对关键依赖项使用私有注册表
  • 签名并验证制品

4. 攻击面映射

要映射什么
类别元素
入口点API、表单、文件上传
数据流输入 → 处理 → 输出
信任边界检查认证/授权的位置
资产密钥、PII、业务数据
优先级矩阵
Risk = Likelihood × Impact

High Impact + High Likelihood → CRITICAL
High Impact + Low Likelihood  → HIGH
Low Impact + High Likelihood  → MEDIUM
Low Impact + Low Likelihood   → LOW

5. 风险优先级排序

CVSS + 上下文
因素权重问题
CVSS 评分基础严重性漏洞有多严重?
EPSS 评分利用可能性它正在被利用吗?
资产价值业务上下文什么处于风险之中?
暴露面攻击面是否面向互联网?
优先级排序决策树
Is it actively exploited (EPSS >0.5)?
├── YES → CRITICAL: Immediate action
└── NO → Check CVSS
         ├── CVSS ≥9.0 → HIGH
         ├── CVSS 7.0-8.9 → Consider asset value
         └── CVSS <7.0 → Schedule for later

6. 异常情况(A10 - 新增)

失效开放 vs 失效关闭
场景失效开放(不好)失效关闭(好)
认证错误允许访问拒绝访问
解析失败接受输入拒绝输入
超时永远重试限制 + 中止
要检查什么
  • 捕获所有异常并忽略的异常处理器
  • 安全操作上缺少错误处理
  • 认证/授权中的竞态条件
  • 资源耗尽场景

7. 扫描方法

基于阶段的方法
1. RECONNAISSANCE
   └── Understand the target
       ├── Technology stack
       ├── Entry points
       └── Data flows

2. DISCOVERY
   └── Identify potential issues
       ├── Configuration review
       ├── Dependency analysis
       └── Code pattern search

3. ANALYSIS
   └── Validate and prioritize
       ├── False positive elimination
       ├── Risk scoring
       └── Attack chain mapping

4. REPORTING
   └── Actionable findings
       ├── Clear reproduction steps
       ├── Business impact
       └── Remediation guidance

8. 代码模式分析

高风险模式
模式风险关注点
查询中的字符串拼接注入"SELECT * FROM " + user_input
动态代码执行RCEeval()、exec()、Function()
不安全的反序列化RCEpickle.loads()、unserialize()
路径操纵遍历文件路径中的用户输入
禁用安全机制多种verify=False、--insecure
密钥模式
类型指示符
API 密钥api_key、apikey、高熵
令牌token、bearer、jwt
凭据password、secret、key
云AWS_、AZURE_、GCP_ 前缀

9. 云安全注意事项

责任共担
层你负责提供商负责
数据✅❌
应用✅❌
操作系统/运行时视情况而定视情况而定
基础设施❌✅
云特定检查
  • IAM:是否应用了最小权限?
  • 存储:是否有公开存储桶?
  • 网络:安全组是否已收紧?
  • 密钥:是否使用密钥管理器?

10. 反模式

❌ 不要✅ 要
在不了解的情况下扫描先绘制攻击面
对每个 CVE 都告警按可利用性 + 资产进行优先级排序
忽略误报维护经验证的基线
只修复症状解决根本原因
部署前扫描一次持续扫描
盲目信任第三方依赖验证完整性、审计代码

11. 报告原则

发现结构

每项发现都应回答:

  1. 是什么? - 清晰的漏洞描述
  2. 在哪里? - 确切位置(文件、行、端点)
  3. 为什么? - 根本原因解释
  4. 影响? - 业务后果
  5. 如何修复? - 具体修复措施
严重性分类
严重性标准
严重RCE、认证绕过、大规模数据泄露
高数据泄露、权限提升
中范围有限,需要特定条件
低信息性、最佳实践

记住: 漏洞扫描发现问题。专家思维会优先考虑重要的事项。始终问自己:“攻击者会利用这个做什么?”

评论

支持 Markdown