ritesh-ui/RepoInspect
GitHub: ritesh-ui/RepoInspect
融合 AST 精确分析与 LLM 自主推理的混合型代码安全引擎,通过过程间污点追踪和 Agent 交叉验证大幅降低误报率,同时覆盖传统 Web 漏洞与 LLM 特有安全风险。
Stars: 0 | Forks: 0
# 🛡️ RepoInspect:确定性 AI 安全引擎
**下一代应用安全 (AppSec)。** RepoInspect 是一款高性能安全引擎,通过将**抽象语法树 (AST)** 的精准性与**自主 AI Agent** 的深度推理相融合,彻底消除了“误报税”。
[](https://github.com/ritesh-ui/RepoInspect/actions/workflows/repoinspect.yml)
[](https://www.python.org/)
[](#)

## ⚡ 确定性护城河
传统的 SAST 工具会产生大量噪音。初级的 AI 扫描器不仅速度慢,还会产生幻觉。**RepoInspect 通过混合模式取得胜利。**
1. **阶段 1:确定性过滤器(手术刀)**
我们定制的两遍 (Two-Pass) 扫描引擎可并行扫描数千个文件。它不仅仅是查找字符串,而是通过映射抽象语法树来识别结构上有效的漏洞路径。
2. **阶段 2:AST 感知的 GraphRAG 索引(资料库)**
为了保证不遗漏任何上下文,RepoInspect 严格按照语义边界(函数、类)对您的代码库进行分块,并将其索引到本地向量数据库 (Vector DB) 中。
3. **阶段 3:智能体取证(大脑)**
RepoInspect 不会仅仅标记每一个“热点”,而是启动一个**自主安全智能体 (Autonomous Security Agent)**。如果发现的结果存在歧义,Agent 会通过 `semantic_search` 查询 GraphRAG 索引,以检索外部依赖项完整且精确的源代码,从而消除 AI 幻觉和“迷失在中间 (Lost in the Middle)”错误。
## 🚀 核心特性
### 🔍 精准审计引擎
- **过程间污点追踪 (Inter-Procedural Taint Tracking)**:采用双遍架构构建全局函数传播图。即使数据经过多个辅助函数传递,我们也能追踪受用户控制的数据。
- **流敏感分析 (Flow-Sensitive Analysis)**:能够理解变量覆盖。如果被污染的变量被重新赋值为安全的字面量,RepoInspect 会动态清除其风险状态。
- **词边界智能 (Word-Boundary Intelligence)**:语义分段可防止在类似 `metadata` 或 `target` 的名称上产生误报。
### 🛡️ 企业级语言支持
为以下语言提供深度的 AST 和 Tree-Sitter 支持:
- **Python** (原生 ast.NodeVisitor)
- **JavaScript / TypeScript** (Tree-Sitter)
- **Java** (Tree-Sitter)
- **Go** (Tree-Sitter)
### 🤖 AI 原生安全 (LLM 安全)
专门检测标准扫描器容易遗漏的漏洞:
- **提示词注入**:LLM01:2023 追踪。
- **不安全的工具/Agent 使用**:LLM08:2023 过度授权 (Excessive Agency)。
- **提示词中的敏感信息泄露**:LLM06:2023。
## 🏗 高层架构
```
graph TD
CLI[scan_repo.py] --> P1[Pass 1: Global Prop Map Builder]
P1 -->|Parallel Processes| Map[Inter-Procedural Taint Map]
Map --> RAG[Pass 2.5: AST-Aware GraphRAG Indexer]
RAG -->|Semantic Embeddings| ChromaDB[(Local Vector DB)]
RAG --> P2[Pass 3: Deep Pattern Scanner]
P2 -->|Hotspots| Agent[Autonomous Forensic Agent]
Agent -->|Tool Use: semantic_search| ChromaDB
Agent -->|Cross-File Validation| Logic[Deterministic Logic Check]
Logic --> Result[Verified Vulnerability]
Result --> Report[MD/JSON/CLI Reports]
```
## 🛠 安装与设置
1. **克隆并进入项目**:
git clone https://github.com/ritesh-ui/RepoInspect.git && cd RepoInspect
2. **环境设置**:
python3 -m venv venv && source venv/bin/activate
pip install -r requirements.txt
pip install tree-sitter tree-sitter-languages
3. **配置 API**:
创建一个 `.env` 文件:
OPENAI_API_KEY=your_key_here
OPENAI_MODEL=gpt-4o-mini
## 📖 使用方法
### 标准扫描
```
python3 scan_repo.py /path/to/repo
```
### 企业级 CI/CD 扫描(遇到高/严重级别风险则失败)
```
python3 scan_repo.py . --fail-on High --markdown SECURITY_REPORT.md
```
### 远程代码库审计
```
python3 scan_repo.py https://github.com/org/repo --branch main
```
## 🏆 案例研究:真实世界的影响
| 项目 | 发现 | 状态 | 报告 |
| :--- | :--- | :--- | :--- |
| **OpenAI Agents SDK** | 10 个高风险 (SQL 及命令注入) | ✅ 已审计 | [查看报告](reports/benchmarks/RESULTS_OPENAI_SDK.md) |
| **Mem0 (AI Memory)** | 23 个高风险 (SQL/提示词注入/硬编码敏感信息) | ✅ 已审计 | [查看报告](reports/benchmarks/RESULTS_MEM0.md) |
| **Firecrawl (Scraping)** | 0 个高风险 (已验证安全) | ✅ 已审计 | [查看报告](reports/benchmarks/RESULTS_FIRECRAWL.md) |
| **Dify (LLM Platform)** | 正在分析 (8,900+ 个文件)... | ⏳ 进行中 | [待处理...] |
| **HF SmolAgents** | 0 个高风险 (已验证安全) | ✅ 已审计 | [查看报告](reports/benchmarks/RESULTS_SMOLAGENTS.md) |
## 🛡️ 许可证
采用 MIT 许可证分发。更多信息请参见 `LICENSE`。
标签:AI安全, Chat Copilot, CISA项目, DLL 劫持, DOE合作, GitHub Actions, Go语言工具, GraphRAG, LLM, odt, Petitpotam, Python, RAG, RepoGuard, RepoInspect, SAST, SQL注入检测, StruQ, Unmanaged PE, XSS注入, 不安全编码模式, 人工智能, 代码安全扫描, 代码审查, 向量数据库, 大语言模型, 安全合规, 抽象语法树, 提示注入防御, 无后门, 源代码安全, 用户模式Hook绕过, 盲注攻击, 硬编码密钥检测, 网络代理, 网络安全, 自动化payload嵌入, 自动化安全代理, 自动笔记, 误报消除, 跨过程分析, 逆向工具, 错误基检测, 隐私保护, 静态代码分析