AdiZzZ0052/IOC-Threat-Scanner
GitHub: AdiZzZ0052/IOC-Threat-Scanner
一个基于 Python 的专业级 IOC 威胁情报平台,帮助安全团队跨多源快速查询与分析入侵指标。
Stars: 1 | Forks: 0
# IOC威胁扫描器
[](https://www.python.org/downloads/)
[](LICENSE)
[](#security-features)
[](#installation)
一个使用 Python 和 PyQt6 构建的专业级 **IOC(入侵指标)威胁情报平台**。该工具使安全分析师能够快速调查可疑的 IP 地址、域名和文件哈希,并跨多个威胁情报源进行查询。

## 作者
**Adi Cohen**
- GitHub: [@AdiZzZ0052](https://github.com/AdiZzZ0052)
- LinkedIn: [Adi Cohen](https://www.linkedin.com/in/adi-cohen-ac/)
## 功能特性
### 核心扫描能力
- **单一 IOC 扫描** - 查询单个 IP 地址、域名或文件哈希
- **批量扫描** - 同时处理多个 IOC 并带有进度跟踪
- **邮件分析** - 解析邮件头并检测钓鱼企图
- **分析师辅助工具** - 安全运营中心分析师必备的实用工具
### 集成的威胁情报源
| 来源 | 类型 | 描述 |
|------|------|------|
| VirusTotal | API | 多引擎查杀结果和检测详情 |
| AbuseIPDB | API | IP 信誉和滥用报告 |
| AlienVault OTX | API | 威胁脉冲和社区情报 |
| Hybrid Analysis | API | 沙箱分析结果 |
| URLScan.io | API | 网站扫描和截图 |
| ThreatYeti | Link | 额外的威胁上下文 |
| WHOIS | 查询 | 域名注册详情 |
| GeoIP | 查询 | IP 地理位置和 ISP 信息 |
### AI 驱动分析
- 集成 **Bytez AI**(Mistral-7B)进行智能威胁摘要
- 自动钓鱼邮件分析并附带判决评分
- 上下文感知威胁评估
### 安全特性
- **密码保护** - 使用 SHA-256 哈希的应用程序密码
- **暴力破解防护** - 10 次失败尝试后锁定账户(30 分钟冷却时间)
- **输入净化** - 防止注入攻击
- **XSS 预防** - HTML 输出转义
- **安全配置** - 受保护的 API 密钥存储和受限文件权限
## 安装
### 先决条件
- Python 3.8 或更高版本
- pip(Python 包管理器)
### 快速开始
1. **克隆仓库**
```
git clone https://github.com/AdiZzZ0052/IOC-Threat-Scanner.git
cd IOC-Threat-Scanner
```
2. **安装依赖**
```
pip install -r requirements.txt
```
3. **运行应用程序**
```
python ioc_scanner.py
```
### 首次设置
首次启动时,系统会提示你创建一个主密码来保护你的 API 密钥和配置。
## 配置
### API 密钥设置
1. 启动应用程序并完成身份验证
2. 点击 **设置**(齿轮图标)
3. 输入你要使用的服务的 API 密钥:
| 服务 | 获取 API 密钥 |
|------|-------------|
| VirusTotal | [virustotal.com/gui/join-us](https://www.virustotal.com/gui/join-us) |
| AbuseIPDB | [abuseipdb.com/account/api](https://www.abuseipdb.com/account/api) |
| AlienVault OTX | [otx.alienvault.com/api](https://otx.alienvault.com/api) |
| Hybrid Analysis | [hybrid-analysis.com/apikeys](https://www.hybrid-analysis.com/apikeys/info) |
| URLScan.io | [urlscan.io/user/profile](https://urlscan.io/user/profile) |
| Bytez AI | [bytez.com](https://bytez.com) |
### 配置文件位置
- **Windows:** `C:\Users\\ioc_scanner_config.json`
- **Linux/macOS:** `~/ioc_scanner_config.json`
## 使用方法
### 单一 IOC 扫描
1. 切换到 **单一扫描器** 标签页
2. 输入一个 IOC(IP 地址、域名或文件哈希)
3. 点击 **扫描** 或按 Enter
4. 查看带有详细报告链接的结果
### 批量扫描
1. 切换到 **批量扫描器** 标签页
2. 输入多个 IOC(每行一个或逗号分隔)
3. 点击 **运行批处理**
4. 监控进度并查看汇总结果
### 邮件分析
1. 切换到 **邮件分析** 标签页
2. 粘贴原始邮件内容(包括头部)
3. 点击 **分析头部** 进行技术分析
4. 点击 **AI 钓鱼检测** 进行 AI 驱动的钓鱼识别
### 分析师辅助工具
- **Defang/Refang** - 转换 URL 以便安全分享
- **Base64 编码/解码** - 处理编码内容
- **URL 解码** - 解码 URL 编码字符串
- **提取 IP** - 从文本中提取所有 IP 地址
- **端口查询** - 识别常用端口服务
## 支持的 IOC 类型
| 类型 | 示例 | 检测方式 |
|------|------|----------|
| IPv4 | `192.168.1.1` | 自动检测 |
| IPv6 | `2001:0db8::1` | 自动检测 |
| 域名 | `example.com` | 自动检测 |
| MD5 哈希 | `d41d8cd98f00b204e9800998ecf8427e` | 32 位字符 |
| SHA1 哈希 | `da39a3ee5e6b4b0d3255bfef95601890afd80709` | 40 位字符 |
| SHA256 哈希 | `e3b0c44298fc1c149afbf4c8996fb924...` | 64 位字符 |
## 截图
### 主扫描器界面
```
┌─────────────────────────────────────────────────────────┐
│ Threat Intelligence Platform [⚙️] │
├─────────────────────────────────────────────────────────┤
│ [Single Scanner] [Bulk Scanner] [Helper] [Email] │
├─────────────────────────────────────────────────────────┤
│ Enter IOC: [________________________] [🔍 Scan] │
├─────────────────────────────────────────────────────────┤
│ Results: │
│ VirusTotal: 5/72 detections | [Scan link] │
│ AbuseIPDB: 87/100 confidence | [Scan link] │
│ OTX: Found in 3 pulses | [Scan link] │
│ │
│ AI Analysis: This IP is associated with a known │
│ botnet command and control server... │
└─────────────────────────────────────────────────────────┘
```
## 安全注意事项
### 对于用户
- 永远不要共享你的配置文件(包含 API 密钥)
- 为应用程序使用强而唯一的密码
- 妥善保管 API 密钥并定期轮换
- 在采取操作前审查扫描结果
### 对于开发者
- 输入净化可防止命令/SQL 注入
- HTML 转义可防止 XSS 攻击
- API 请求使用 HTTPS 并进行证书验证
- 敏感数据不会被记录或以明文显示
## 故障排除
### 常见问题
**"API 密钥缺失"错误**
- 打开设置并验证你的 API 密钥是否正确输入
- 某些服务在提供 API 访问之前需要账户验证
**"账户锁定"消息**
- 等待 30 分钟让锁定过期
- 如果忘记密码,请联系仓库维护者
**依赖项安装失败**
```
# 首先尝试升级 pip
python -m pip install --upgrade pip
pip install -r requirements.txt
```
**PyQt6 在 Linux 上的问题**
```
# 安装系统依赖
sudo apt-get install python3-pyqt6 libxcb-xinerama0
```
## 贡献
欢迎贡献!请阅读 [CONTRIBUTING.md](CONTRIBUTING.md) 获取指南。
### 开发环境设置
```
git clone https://github.com/AdiZzZ0052/IOC-Threat-Scanner.git
cd IOC-Threat-Scanner
pip install -r requirements-dev.txt
```
## 许可证
本项目根据 MIT 许可证授权 - 详见 [LICENSE](LICENSE) 文件。
## 致谢
- [VirusTotal](https://www.virustotal.com) 提供的综合恶意软件数据库
- [AbuseIPDB](https://www.abuseipdb.com) 提供的 IP 信誉数据
- [AlienVault OTX](https://otx.alienvault.com) 提供的开放威胁交换
- [Bytez](https://bytez.com) 提供的 AI 模型托管
## 免责声明
本工具仅用于合法的安全研究和防御目的。用户需确保其使用行为符合适用法律以及集成 API 的服务条款。作者不对本软件的滥用承担任何责任。
### 主扫描器界面
```
┌─────────────────────────────────────────────────────────┐
│ Threat Intelligence Platform [⚙️] │
├─────────────────────────────────────────────────────────┤
│ [Single Scanner] [Bulk Scanner] [Helper] [Email] │
├─────────────────────────────────────────────────────────┤
│ Enter IOC: [________________________] [🔍 Scan] │
├─────────────────────────────────────────────────────────┤
│ Results: │
│ VirusTotal: 5/72 detections | [Scan link] │
│ AbuseIPDB: 87/100 confidence | [Scan link] │
│ OTX: Found in 3 pulses | [Scan link] │
│ │
│ AI Analysis: This IP is associated with a known │
│ botnet command and control server... │
└─────────────────────────────────────────────────────────┘
```
## 安全注意事项
### 对于用户
- 永远不要共享你的配置文件(包含 API 密钥)
- 为应用程序使用强而唯一的密码
- 妥善保管 API 密钥并定期轮换
- 在采取操作前审查扫描结果
### 对于开发者
- 输入净化可防止命令/SQL 注入
- HTML 转义可防止 XSS 攻击
- API 请求使用 HTTPS 并进行证书验证
- 敏感数据不会被记录或以明文显示
## 故障排除
### 常见问题
**"API 密钥缺失"错误**
- 打开设置并验证你的 API 密钥是否正确输入
- 某些服务在提供 API 访问之前需要账户验证
**"账户锁定"消息**
- 等待 30 分钟让锁定过期
- 如果忘记密码,请联系仓库维护者
**依赖项安装失败**
```
# 首先尝试升级 pip
python -m pip install --upgrade pip
pip install -r requirements.txt
```
**PyQt6 在 Linux 上的问题**
```
# 安装系统依赖
sudo apt-get install python3-pyqt6 libxcb-xinerama0
```
## 贡献
欢迎贡献!请阅读 [CONTRIBUTING.md](CONTRIBUTING.md) 获取指南。
### 开发环境设置
```
git clone https://github.com/AdiZzZ0052/IOC-Threat-Scanner.git
cd IOC-Threat-Scanner
pip install -r requirements-dev.txt
```
## 许可证
本项目根据 MIT 许可证授权 - 详见 [LICENSE](LICENSE) 文件。
## 致谢
- [VirusTotal](https://www.virustotal.com) 提供的综合恶意软件数据库
- [AbuseIPDB](https://www.abuseipdb.com) 提供的 IP 信誉数据
- [AlienVault OTX](https://otx.alienvault.com) 提供的开放威胁交换
- [Bytez](https://bytez.com) 提供的 AI 模型托管
## 免责声明
本工具仅用于合法的安全研究和防御目的。用户需确保其使用行为符合适用法律以及集成 API 的服务条款。作者不对本软件的滥用承担任何责任。
用 ❤️ 为网络安全社区制作
@AdiZzZ0052
标签:AbuseIPDB, AI威胁摘要, Elastic, GeoIP, Hybrid Analysis, IOC威胁情报, IOC扫描, masscan, Mistral-7B, PyQt6, Python, SOC分析工具, ThreatYeti, URLScan.io, WHOIS, 分析师工具, 单次IOC扫描, 多源情报, 威胁分析, 威胁情报平台, 字节AI, 安全硬化, 情报收集, 批量IOC扫描, 指示器扫描, 无后门, 无服务器架构, 漏洞研究, 生产就绪, 电子邮件解析, 病毒总览, 网络安全, 自动化侦查工具, 逆向工具, 钓鱼邮件分析, 隐私保护