AIGS (AI-powered Security Remediation Suggestion) 是一个基于人工智能的安全整改建议生成工具,专为网络安全运营团队设计。该工具能够:
- 智能分析:读取包含安全失效点数据的 Excel 文件
- 专业评估:逐行分析安全失效场景,识别攻击技术类型和涉及设备
- 精准建议:生成具体、可落地的安全设备整改策略建议
- 自动输出:将分析结果和整改建议写回 Excel 文件,便于直接使用
AIGS/
├── config/ # 配置管理模块
│ └── settings.py # 配置定义和管理
├── core/ # 核心功能模块
│ ├── ai_client.py # AI客户端封装
│ └── processor.py # 核心处理器
├── utils/ # 工具模块
│ └── excel_handler.py # Excel处理工具
├── files/ # 数据文件目录
│ ├── input.xlsx # 输入文件
│ └── output.xlsx # 输出文件
├── prompts/ # 提示词文件
│ └── security_remediation.md # 安全整改建议生成词
├── main.py # 主入口文件
├── requirements.txt # 依赖库列表
├── .gitignore # Git忽略文件
├── LICENSE # 许可证文件
└── README.md # 项目说明
-
配置管理 (
config/settings.py):- 使用 Pydantic 进行类型安全的配置管理
- 支持通过环境变量和配置文件进行灵活配置
-
AI 客户端 (
core/ai_client.py):- 封装 OpenRouter API 调用
- 支持推理增强,生成更准确的安全建议
- 强大的错误处理和日志记录
-
核心处理器 (
core/processor.py):- 协调各个模块的工作流程
- 管理数据处理和结果生成
-
提示词文件 (
prompts/security_remediation.md):- 包含安全整改建议生成的详细规则和示例
- 支持自定义提示词,满足不同场景的需求
-
Excel 处理工具 (
utils/excel_handler.py):- 负责 Excel 文件的读取和保存
- 提供数据迭代和转换功能
- 模块化设计:清晰的代码结构,便于维护和扩展
- 类型安全:使用 Pydantic 进行类型检查和配置管理
- AI 增强:利用 OpenRouter 的推理能力,生成更准确的整改建议
- 灵活配置:支持通过环境变量和命令行参数进行配置
- 错误处理:完善的错误处理机制,提高程序稳定性
- 数据安全:本地处理数据,保护敏感信息
git clone https://github.com/slienceLz/AIGS.git
cd AIGS# Windows
python -m venv venv
venv\Scripts\activate
# Linux/Mac
python3 -m venv venv
source venv/bin/activatepip install -r requirements.txt在config/settings.py下填入以下内容:
OPENROUTER_API_KEY=您的OpenRouter API密钥
OPENROUTER_BASE_URL=https://openrouter.ai/api/v1
注意:OpenRouter API 密钥可在 OpenRouter 官网 获取。
在 files 目录下创建或修改 input.xlsx 文件,包含以下列:
- 场景名称:安全失效的场景描述
- 用例名称:具体的测试用例名称
- 技术细节:安全失效的技术描述(可选)
- 其他相关字段:根据实际情况添加
# 使用默认输入/输出文件
python main.py
# 指定自定义文件路径
python main.py 自定义输入文件路径 自定义输出文件路径运行完成后,结果将保存到 files/output.xlsx 文件中,包含以下列:
- 场景名称:从输入文件读取
- 用例名称:从输入文件读取
- 技术细节:从输入文件读取(如果有)
- 整改建议:AI 生成的安全设备整改策略建议
| 场景名称 | 用例名称 | 技术细节 |
|---|---|---|
| Web应用防护 | SQL注入防护测试 | 攻击者通过输入特殊字符绕过WAF防护 |
| 终端安全 | 恶意代码检测 | EDR未检测到内存注入攻击 |
| 网络安全 | 异常流量检测 | 防火墙未识别DDoS攻击流量 |
| 场景名称 | 用例名称 | 技术细节 | 整改建议 |
|---|---|---|---|
| Web应用防护 | SQL注入防护测试 | 攻击者通过输入特殊字符绕过WAF防护 | 配置WAF规则:启用深度SQL语法解析,添加对常见绕过技术的检测,如注释注入、大小写混合、编码转换等,同时开启正则表达式匹配模式,增强对变形SQL注入的识别能力。 |
| 终端安全 | 恶意代码检测 | EDR未检测到内存注入攻击 | 配置EDR策略:启用内存行为监控,添加对常见内存注入技术的检测规则,如CreateRemoteThread、NtCreateThreadEx等API调用监控,同时开启行为基线分析,识别异常内存操作模式。 |
| 网络安全 | 异常流量检测 | 防火墙未识别DDoS攻击流量 | 配置防火墙IPS模块:启用DDoS防护规则,设置流量阈值,开启SYN Flood、UDP Flood等常见攻击类型的检测,同时配置流量采样分析,识别慢速DDoS攻击特征。 |
- AI 模型:默认使用
google/gemini-2.0-flash-thinking-exp:free - API 超时:默认 60 秒
- 批量处理:支持逐行处理,适合任意规模的数据集
- 输出格式:标准 Excel 格式,便于直接集成到现有工作流
- API 密钥:请确保您的 OpenRouter API 密钥有效且有足够的额度
- 输入数据:输入文件必须包含有效的数据,至少需要"场景名称"和"用例名称"列
- 处理时间:处理时间取决于数据量和 AI 响应速度,建议在网络环境良好的情况下运行
- 数据安全:请确保输入文件中的数据不包含敏感信息,或在处理后妥善保管
- 结果验证:AI 生成的建议仅供参考,实际实施前请由安全专家进行验证
-
ModuleNotFoundError: No module named 'pydantic_settings'
- 解决方案:运行
pip install pydantic-settings安装缺失的依赖
- 解决方案:运行
-
JSONDecodeError: Invalid \escape
- 解决方案:AI 返回的 JSON 格式可能有问题,系统会自动尝试使用备选解析方式
-
API调用失败
- 解决方案:检查网络连接和 API 密钥是否有效
系统会在控制台输出详细的处理日志,包括:
- 读取的记录数量
- 处理进度
- 错误信息
- 处理结果
本项目采用 MIT 许可证,详见 LICENSE 文件。
欢迎提交 Issue 和 Pull Request 来改进这个项目!
如有问题或建议,请通过 GitHub Issues 与我们联系。
版本:1.0.0 最后更新:2026-02-05