ahmetsn702/IDS-Otomasyon
GitHub: ahmetsn702/IDS-Otomasyon
一个基于 SSH 远程连接的统一安全运维平台,将 IDS 管理、网络扫描、流量分析和紫队演练整合到 Windows 工作站进行远程编排。
Stars: 0 | Forks: 0
# IDS 自动化平台
## 免责声明
**本平台仅严格用于教育和授权安全测试目的。未经授权访问计算机系统是非法的。作者不对滥用行为承担任何责任。在进行任何安全测试之前,请务必获得适当的授权。请仅在受控实验室环境中使用。**
## 概述
IDS 自动化平台提供了一个统一的界面,用于从 Windows 工作站管理和编排在 Kali Linux 上运行的安全工具。它通过 SSH 连接远程执行命令,支持 IDS 监控、网络扫描、流量分析、payload 生成以及协调的紫队演练——所有操作均可从单一控制点完成。
## 架构
```
+---------------------------+ SSH/SCP +---------------------------+
| Windows Host | ───────────────────────> | Kali Linux |
| | | |
| - Python GUI (tkinter) | | - Suricata IDS |
| - Python CLI (asyncio) | | - Nmap |
| - Windows Defender | | - tshark / Wireshark |
| - Nmap (local) | | - Metasploit Framework |
| - tshark (local) | | - msfvenom |
| | | - Nikto |
+---------------------------+ +---------------------------+
```
## 模块
| 模块 | 描述 | 类别 |
|--------|-------------|----------|
| `safe_tool_manager/` | 核心 CLI — IDS 管理、nmap、PCAP 分析、异步菜单 | 防御 |
| `safe_tool_manager/purple_team/` | 紫队操作 — 场景、检测测试、差距分析、MITRE ATT&CK 映射、威胁狩猎、报告 | 紫队 |
| `cyber_toolkit_ui/` | 图形用户界面 (tkinter),包含工具卡片和输出控制台 | UI |
| `nmap_scanner/` | Nmap 网络扫描器封装 — 15 种扫描类型(TCP、UDP、隐蔽扫描、服务检测) | 侦察 |
| `wireshark_scanner/` | Wireshark/tshark 集成,用于数据包捕获分析 | 防御 |
| `defender_scanner/` | 通过 PowerShell 运行的 Windows Defender 扫描器 | 防御 |
| `metasploit_integration/` | Metasploit Framework 集成 — 通过 SSH 执行 msfconsole | 进攻 |
| `backdoor_generator/` | 通过 msfvenom 生成 payload 并通过 SCP 下载 | 进攻 |
| `kali_scripts/` | 用于 Suricata 日志分析、IOC 狩猎、规则更新的 Bash 脚本 | 防御 |
| `scenarios/` | 攻击场景定义 (JSON),包含杀伤链和 MITRE 映射 | 紫队 |
## 功能特性
- **IDS 管理** — 启动、停止、监控 Suricata IDS;更新检测规则
- **网络扫描** — 15 种 Nmap 扫描类型,包括 SYN、隐蔽、UDP、OS 检测
- **流量分析** — 通过 tshark 进行 PCAP 文件分析(本地和远程)
- **Payload 生成** — msfvenom payload(Windows、Linux、PHP、Python)
- **Metasploit 集成** — 远程 msfconsole 执行、multi/handler 设置
- **Web 服务器扫描** — Nikto 集成,用于 Web 漏洞评估
- **Windows Defender** — 通过 PowerShell 进行本地防病毒状态检查和扫描
- **紫队框架** — 攻击模拟与检测验证
- **MITRE ATT&CK 映射** — 技术映射和覆盖率分析
- **威胁狩猎** — IOC 扫描、异常检测、日志关联
- **检测测试** — 自动化检测率测量和差距分析
- **报告** — 带有指标仪表盘的 HTML/JSON 报告
- **双界面** — 同时提供 GUI (tkinter) 和 CLI (异步菜单)
## 技术栈
- **语言**:Python 3.7+
- **SSH**:系统 `ssh`/`scp` 命令(无 paramiko 依赖)
- **GUI**:tkinter
- **IDS**:Suricata
- **扫描**:Nmap、Nikto
- **数据包分析**:tshark (Wireshark CLI)
- **漏洞利用**:Metasploit Framework、msfvenom
- **操作系统**:Windows(主机)+ Kali Linux(通过 SSH/WSL 的目标机)
## 快速开始
### 前置条件
- Python 3.7+
- 系统PATH中可用 SSH/SCP
- 可通过 SSH 访问的 Kali Linux(虚拟机、WSL 或远程)
- 已安装 Nmap(本地或在 Kali 上)
- 已安装 Wireshark/tshark(可选,用于 PCAP 分析)
### 安装
```
# 克隆 repository
git clone https://github.com/YOUR_USERNAME/ids-automation-platform.git
cd ids-automation-platform
# (可选)创建 virtual environment
python -m venv venv
venv\Scripts\activate # Windows
# source venv/bin/activate # Linux/Mac
# 安装 dependencies(大多数是可选的 — 参见 requirements.txt)
pip install -r requirements.txt
```
### 配置
复制示例配置文件并填写您的凭据:
```
cp config.json.example config.json
```
编辑 `config.json`:
```
{
"kali": {
"ip": "YOUR_KALI_IP",
"username": "YOUR_USERNAME",
"password": "YOUR_PASSWORD",
"port": 22
}
}
```
### 运行
```
# GUI(推荐)
python -m cyber_toolkit_ui.main
# CLI 交互式菜单
python -m safe_tool_manager.main menu
# CLI 直接命令
python -m safe_tool_manager.main status-ids
python -m safe_tool_manager.main nmap-scan
python -m safe_tool_manager.main analyze-pcap
# Purple Team
python run_purple_team.py
```
或使用批处理启动器 (Windows):
- `baslat_gui.bat` — GUI
- `baslat.bat` — CLI 菜单
- `baslat_purple_team.bat` — 紫队
## 截图
*即将推出*
## 紫队操作
紫队模块支持协调的攻击与检测演练:
1. **定义场景** — 基于 JSON 的攻击场景,包含杀伤链阶段和 MITRE ATT&CK 映射
2. **执行攻击** — 针对目标运行场景,逐步执行
3. **测试检测** — 根据预期检测自动检查 Suricata 警报
4. **分析差距** — 识别检测覆盖范围中的盲点
5. **生成报告** — 带有指标和建议的 HTML/JSON 报告
详情请参阅 [紫队指南](PURPLE_TEAM_GUIDE.md) 和 [场景创建](SCENARIO_CREATION.md)。
## 项目结构
```
ids-automation-platform/
├── cyber_toolkit_ui/ # tkinter GUI
├── safe_tool_manager/ # Core CLI and tool management
│ ├── core/ # Abstract interfaces
│ ├── infra/ # SSH/SCP connectivity
│ ├── menu/ # Interactive menu system
│ ├── tools/ # IDS, Nmap, PCAP tools
│ └── purple_team/ # Purple team framework
│ ├── scenarios/ # Attack scenario engine
│ ├── detection/ # Detection testing and gap analysis
│ ├── hunting/ # Threat hunting (IOC, anomaly)
│ ├── reporting/ # Reports and dashboards
│ └── mitre/ # MITRE ATT&CK mapping
├── nmap_scanner/ # Nmap wrapper modules
├── wireshark_scanner/ # tshark integration
├── defender_scanner/ # Windows Defender integration
├── metasploit_integration/ # Metasploit over SSH
├── backdoor_generator/ # msfvenom payload generation
├── kali_scripts/ # Bash scripts for Kali
├── scenarios/ # Scenario JSON definitions
├── config.json.example # Configuration template
├── requirements.txt # Python dependencies
└── README.md
```
## 文档
- [紫队指南](PURPLE_TEAM_GUIDE.md) — 完整的紫队使用指南
- [场景创建](SCENARIO_CREATION.md) — 如何创建攻击场景
- [MITRE 映射](MITRE_MAPPING.md) — MITRE ATT&CK 集成指南
## 贡献
1. Fork 本仓库
2. 创建一个功能分支 (`git checkout -b feature/my-feature`)
3. 提交您的更改
4. 推送到该分支
5. 打开一个 Pull Request
## 许可证
本项目采用 MIT 许可证授权。详情请参阅 [LICENSE](LICENSE)。
标签:ATT&CK映射, CISA项目, CTI, FTP漏洞扫描, Google搜索, HTTP工具, IDS管理, IP 地址批量处理, Metaprompt, Nmap, PE 加载器, Python安全工具, SSH管理, Suricata, Wireshark, 云存储安全, 元数据包分析, 入侵检测系统, 句柄查看, 命令行控制台, 图形化界面, 安全数据湖, 安全编排, 密码管理, 插件系统, 现代安全运营, 紫队演练, 网络安全, 网络扫描, 虚拟驱动器, 计算机取证, 远程安全运维, 逆向工具, 速率限制处理, 防御绕过, 隐私保护