ari034/DeepSAST-Scanner

GitHub: ari034/DeepSAST-Scanner

混合静态应用安全测试工具,结合确定性污点分析与大模型辅助推理,在降低误报的同时检测传统规则难以覆盖的逻辑类漏洞。

Stars: 0 | Forks: 0

# DeepSAST Scanner DeepSAST 是一款混合静态应用安全测试 (SAST) 工具,它将确定性污点分析与 LLM 辅助推理相结合,旨在识别真实漏洞并减少误报。 ## 概述 DeepSAST 遵循严格的检测流程: SOURCE → FLOW → SINK → VULNERABILITY → SEVERITY → OUTPUT 只有当用户控制的输入到达已知的危险 Sink 时,系统才会报告漏洞。与基于模式的扫描器相比,这种方法减少了噪音并提高了准确性。 基于 LLM 的分析被有选择地用于授权问题和 IDOR 等逻辑漏洞,而核心检测仍然保持规则驱动和确定性。 ## 功能 - Source 到 Sink 的污点跟踪 (req.query, req.body, req.params) - 严格的 Sink 到漏洞映射 - 跨变量的最小污点传播 - 针对 Express.js 和 Django 的框架感知分析 - 检测以下漏洞: - 远程代码执行 (RCE) - 命令注入 - SSRF - 路径遍历 - 跨站脚本攻击 (XSS) - IDOR 和越权访问 - 身份验证绕过 - 硬编码 Secrets - 发现结果去重 - 通过跳过无关文件进行降噪 - 生成 SARIF 报告 ## 检测理念 DeepSAST 遵循一条简单的规则: 只有当用户输入到达危险 Sink 时才报告漏洞。 这确保了: - 更少的误报 - 清晰且可解释的发现结果 - 确定性的行为 ## 架构 该扫描器由以下部分组成: - 污点引擎 跟踪用户控制的输入并验证其流入 Sink 的过程 - Sink 映射 将危险函数映射到漏洞类型 - 框架分析 检测 Express 和 Django 中的路由级别问题 - LLM 引擎 仅用于逻辑缺陷和授权问题等边缘情况 - 去重层 根据文件、行号和漏洞类型移除重复的发现结果 ## 支持的 Sink - exec → 命令注入 - eval → 远程代码执行 - axios.get / fetch → SSRF - fs.readFile → 路径遍历 - res.send → XSS ## 使用方法 ``` python main.py ```
标签:CISA项目, DeepSeek, DevSecOps, Django, DLL 劫持, Express.js, IDOR, SARIF报告, SAST, SSRF, XSS, 上游代理, 代码安全, 代码安全审计, 低误报率, 命令注入, 大语言模型, 混合分析引擎, 源到汇追踪, 漏洞情报, 漏洞枚举, 熵值分析, 盲注攻击, 硬编码密码, 确定性分析, 结构化查询, 编程工具, 网络安全, 自动化安全, 访问控制失效, 越权漏洞, 跨站脚本攻击, 路径穿越, 身份验证绕过, 远程代码执行, 逆向工具, 隐私保护, 静态应用安全测试