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, 无后门, 逆向工具, 错误基检测, 静态代码分析