Skip to content

slienceLz/AIGS

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

安全整改建议生成工具 (AIGS)

项目简介

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            # 项目说明

技术架构

核心模块

  1. 配置管理 (config/settings.py):

    • 使用 Pydantic 进行类型安全的配置管理
    • 支持通过环境变量和配置文件进行灵活配置
  2. AI 客户端 (core/ai_client.py):

    • 封装 OpenRouter API 调用
    • 支持推理增强,生成更准确的安全建议
    • 强大的错误处理和日志记录
  3. 核心处理器 (core/processor.py):

    • 协调各个模块的工作流程
    • 管理数据处理和结果生成
  4. 提示词文件 (prompts/security_remediation.md):

    • 包含安全整改建议生成的详细规则和示例
    • 支持自定义提示词,满足不同场景的需求
  5. Excel 处理工具 (utils/excel_handler.py):

    • 负责 Excel 文件的读取和保存
    • 提供数据迭代和转换功能

技术特点

  • 模块化设计:清晰的代码结构,便于维护和扩展
  • 类型安全:使用 Pydantic 进行类型检查和配置管理
  • AI 增强:利用 OpenRouter 的推理能力,生成更准确的整改建议
  • 灵活配置:支持通过环境变量和命令行参数进行配置
  • 错误处理:完善的错误处理机制,提高程序稳定性
  • 数据安全:本地处理数据,保护敏感信息

安装说明

1. 克隆项目

git clone https://github.com/slienceLz/AIGS.git
cd AIGS

2. 创建虚拟环境

# Windows
python -m venv venv
venv\Scripts\activate

# Linux/Mac
python3 -m venv venv
source venv/bin/activate

3. 安装依赖

pip install -r requirements.txt

4. 配置环境变量

在config/settings.py下填入以下内容:

OPENROUTER_API_KEY=您的OpenRouter API密钥
OPENROUTER_BASE_URL=https://openrouter.ai/api/v1

注意:OpenRouter API 密钥可在 OpenRouter 官网 获取。

使用方法

1. 准备输入文件

files 目录下创建或修改 input.xlsx 文件,包含以下列:

  • 场景名称:安全失效的场景描述
  • 用例名称:具体的测试用例名称
  • 技术细节:安全失效的技术描述(可选)
  • 其他相关字段:根据实际情况添加

2. 运行工具

# 使用默认输入/输出文件
python main.py

# 指定自定义文件路径
python main.py 自定义输入文件路径 自定义输出文件路径

3. 查看结果

运行完成后,结果将保存到 files/output.xlsx 文件中,包含以下列:

  • 场景名称:从输入文件读取
  • 用例名称:从输入文件读取
  • 技术细节:从输入文件读取(如果有)
  • 整改建议:AI 生成的安全设备整改策略建议

示例

输入文件示例 (input.xlsx)

场景名称 用例名称 技术细节
Web应用防护 SQL注入防护测试 攻击者通过输入特殊字符绕过WAF防护
终端安全 恶意代码检测 EDR未检测到内存注入攻击
网络安全 异常流量检测 防火墙未识别DDoS攻击流量

输出文件示例 (output.xlsx)

场景名称 用例名称 技术细节 整改建议
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 格式,便于直接集成到现有工作流

注意事项

  1. API 密钥:请确保您的 OpenRouter API 密钥有效且有足够的额度
  2. 输入数据:输入文件必须包含有效的数据,至少需要"场景名称"和"用例名称"列
  3. 处理时间:处理时间取决于数据量和 AI 响应速度,建议在网络环境良好的情况下运行
  4. 数据安全:请确保输入文件中的数据不包含敏感信息,或在处理后妥善保管
  5. 结果验证:AI 生成的建议仅供参考,实际实施前请由安全专家进行验证

故障排除

常见问题

  1. ModuleNotFoundError: No module named 'pydantic_settings'

    • 解决方案:运行 pip install pydantic-settings 安装缺失的依赖
  2. JSONDecodeError: Invalid \escape

    • 解决方案:AI 返回的 JSON 格式可能有问题,系统会自动尝试使用备选解析方式
  3. API调用失败

    • 解决方案:检查网络连接和 API 密钥是否有效

日志记录

系统会在控制台输出详细的处理日志,包括:

  • 读取的记录数量
  • 处理进度
  • 错误信息
  • 处理结果

许可证

本项目采用 MIT 许可证,详见 LICENSE 文件。

贡献

欢迎提交 Issue 和 Pull Request 来改进这个项目!

联系方式

如有问题或建议,请通过 GitHub Issues 与我们联系。


版本:1.0.0 最后更新:2026-02-05

About

本项目是一个基于AI的安全整改建议生成工具,由资深网络安全运营高级工程师设计。

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages