ysraelll/AI-Vulnerability-Scanner-SAST
GitHub: ysraelll/AI-Vulnerability-Scanner-SAST
一款结合 AST 静态分析、机器学习分类和本地 LLM 综合的 Python 代码安全漏洞扫描工具,可生成专业级安全评估报告。
Stars: 0 | Forks: 0
# 🛡️ 专业 AI 漏洞扫描器 (SAST)
一款专业级的静态应用安全测试 (SAST) 工具,结合了**抽象语法树 (AST) 分析**、**机器学习**和**本地 LLM 综合**,用于识别 Python 代码中的安全漏洞。
## 🚀 功能特性
- **🧩 多层静态分析流水线**:
- **深度 SAST**:使用 Python 的 `ast` 模块检测危险模式和安全隐患模式。
- **ML 分类**:基于特征的 ML 模型可预测文件包含安全漏洞的概率。
- **本地 LLM 综合**:使用 **Ollama (gemma4)** 分析结果并生成专业的安全报告,包括风险评估和修复步骤。
- **📂 智能摄取**:递归扫描整个目录或单个 `.py` 文件。
- **📜 专业报告**:基于安全行业标准生成 Markdown 报告。
## 🛠️ 架构
```
graph TD
A[User Input: File/Directory] --> B[File Ingestion]
B --> C{Analysis Pipeline}
C --> D[Static Analysis - AST]
C --> F[ML Classification]
D --> G[Result Aggregator]
F --> G
G --> H[Local LLM Synthesis - Ollama]
H --> I[Professional Security Report]
I --> J[User]
```
## 📦 安装说明
### 1. 前置条件
- **Python 3.11+**
- **Ollama**(生成本地 LLM 报告时必需)- [下载 Ollama](https://ollama.com)
### 2. 设置
```
# 安装依赖
pip install -r requirements.txt
# 拉取所需的 LLM 模型(默认:gemma4)
ollama pull gemma4
```
### 3. 用法
**使用默认模型扫描单个文件:**
```
python cli.py mal_test.py
```
**使用特定的 Ollama 模型扫描文件:**
```
python cli.py mal_test.py --model gemma4:31b-cloud
```
**扫描目录:**
```
python cli.py ./src/my_project
```
## 🧪 测试
使用 `pytest` 运行流水线测试:
```
pytest tests/test_pipeline.py
```
## 📜 许可证
MIT 许可证。
标签:AI风险缓解, Apex, LLM, LLM评估, ML分类, odt, Ollama, Python, SAST, Unmanaged PE, 云安全监控, 人工智能, 代码安全, 反取证, 安全评估, 抽象语法树, 无后门, 本地大语言模型, 本地部署, 机器学习, 漏洞修复, 漏洞枚举, 用户模式Hook绕过, 盲注攻击, 网络安全培训, 自动化payload嵌入, 逆向工具, 隐私计算, 静态分析, 静态应用安全测试, 风险报告