Vinxx10/AI-Security-Scanner-for-Python
GitHub: Vinxx10/AI-Security-Scanner-for-Python
一款调用 Gemini API 的本地 Python 命令行安全扫描器,利用 AI 分析源代码以检测常见安全漏洞并输出彩色分级报告。
Stars: 1 | Forks: 0
# 安全扫描器
## 概述
安全扫描器是一个小型的本地命令行工具,用于审查 Python 代码中常见的安全问题。它会将文件内容发送给 Gemini 并请求进行专注于安全的分析,然后以易读的终端格式输出分析结果。
`scanner.py` 是主入口点,负责执行扫描。`vulnerable.py` 是一个示例文件,其中包含故意设置的不安全模式,方便您测试扫描器。`test.py` 是一个实用脚本,用于检查您的 API key 可以使用哪些 Gemini 模型。
## 项目功能
该扫描器是一个小型的命令行工具,用于发现常见的代码安全问题,例如 SQL 注入、硬编码的 secrets、弱哈希以及不安全的命令执行。它专为快速审查单个源代码文件而设计。
## 文件说明
- `scanner.py`:主扫描器 CLI。
- `vulnerable.py`:故意包含漏洞的 Python 示例代码。
- `test.py`:用于列出您的 API key 可用 Gemini 模型的辅助脚本。
## 环境要求
- 推荐使用 Python 3.10+
- 一个 Google Gemini API key
- Python 包:
- `google-genai`
- `python-dotenv`
- `colorama`
## 设置说明
1. 创建并激活虚拟环境。
2. 安装依赖项:
```
pip install google-genai python-dotenv colorama
```
3. 在项目根目录下创建一个 `.env` 文件,并填入您的 API key:
```
GOOGLE_API_KEY=your_api_key_here
```
## 其他人如何使用
这是一个本地命令行工具,因此每个人都在自己的机器上使用自己的 Gemini API key 运行它。
1. 克隆仓库:
```
git clone
cd security_scanner
```
2. 设置 Python 环境并安装依赖项:
```
python -m venv venv
source venv/bin/activate
pip install google-genai python-dotenv colorama
```
3. 创建一个包含他们自己 key 的 `.env` 文件:
```
GOOGLE_API_KEY=their_api_key_here
```
4. 对任意 Python 文件运行扫描器:
```
python scanner.py vulnerable.py
```
## 用法
扫描文件:
```
python scanner.py vulnerable.py
```
列出可用的 Gemini 模型:
```
python test.py
```
## 注意事项
- 如果缺少 `GOOGLE_API_KEY`,`scanner.py` 将报错退出。
- 扫描器目前每次运行只分析一个文件。
- 输出的严重性标签在终端中已进行颜色化处理,以提高可读性。
## 示例
对内置的漏洞示例运行扫描器:
```
python scanner.py vulnerable.py
```
标签:AI大模型, DOE合作, Python, 无后门, 逆向工具, 错误基检测, 静态代码分析