alexsilva-sh/IP-Shark
GitHub: alexsilva-sh/IP-Shark
一款带有图形界面的 Python 威胁情报查询工具,支持并行查询多个情报源以分析 IP、哈希和域名的信誉状况并自动生成处置建议。
Stars: 1 | Forks: 0
# 🦈 IP Shark
[](LICENSE)
[](https://github.com/alexsilva-sh/IP-Shark/issues)
[](https://github.com/alexsilva-sh/IP-Shark/pulls)
一款带有图形界面的 Python 工具,用于分析 IP、hash 和 domain 的信誉,集成了多个威胁情报来源。
IP Shark 整合了对 AbuseIPDB、VirusTotal、IBM X-Force、AlienVault、MetaDefender、IPinfo 和 JoeSandbox 的查询,支持并行执行、将结果导出为 Excel 以及自动生成建议。
## 🔍 核心功能
### ⚙ 自定义查询
每个选项卡都有一个 **自定义查询** 按钮,点击后会弹出窗口供您选择要查询的情报源。未勾选的情报源将不会被查询,并在报告、表格和电子表格中隐藏。它也不会导致结果不完整,因此您可以排除处于离线状态的数据库,而不会影响最终的判定结果。*仅快速源* 快捷方式仅保留基于 API 的查询,排除了依赖浏览器的查询(IBM X-Force 和 JoeSandbox)。该选择仅在当前会话有效,重新打开应用时会恢复为全选状态。
### 🚦 准确判定
每个情报源都有各自的状态,结果会真实地反映所发生的情况:
- **信誉不良**:当有响应的数据库标记了该指标时。
- **分析不完整**:当某个情报源查询失败或超出配额时。离线的情报源绝不会显示为“干净”。
- **无记录**:当所有数据库都不认识该指标时。这与“干净”是两回事。
- **需要复审**:当该 IP 位于 AbuseIPDB 的白名单中,但被其他数据库标记时。
### ✅ IP 分析
- **AbuseIPDB**:滥用评分、最后报告日期以及白名单检测。
- **VirusTotal**:多引擎杀毒软件检测。
- **IBM X-Force**:风险评分(通过 Selenium 自动查询)。
- **MetaDefender**:标记该 IP 的引擎数量。
- **IPinfo**:IP 定位(城市和国家),并自动翻译国家名称。
- 支持并行执行,可同时查询多达 10 个 IP,并有序显示结果。
- 支持导出为 **Excel (.xlsx)**,格式专业,并包含指向所有平台的直接链接。
- 自动生成分析文本,建议进行拦截或上报给 MSS。
### 🧪 Hash 分析 (MD5, SHA1, SHA256)
- **VirusTotal**:评分、文件名以及最后分析日期。
- **IBM X-Force**:hash 的风险等级。
- **AlienVault**:威胁脉冲、malware 家族及归属黑客组织。
- **MetaDefender**:标记该文件的引擎数量。
- **JoeSandbox**:沙箱执行判定、AV 检出率、观察到的行为,以及完整报告和 IOC 报告的链接。只有在存在分析记录时才会在结果中显示,并且只要判定为 `Malicious`,其本身就足以证明信誉不良。
- 支持导出为 **Excel (.xlsx)** 并包含所有链接。
### 🌐 Domain 分析
- **VirusTotal**:domain 信誉评分。
- **IBM X-Force**:domain 评分(通过 Selenium)。
- **AlienVault**:相关威胁脉冲、malware 家族及归属黑客组织。
- **MetaDefender**:标记该 domain 的引擎数量。
- 通过 Google 公共 DNS (`dns.google/resolve`) 和 `socket.gethostbyname_ex()` 自动解析关联的 IP,并对每个解析出的 IP 进行全面分析。
- 支持导出为 **Excel (.xlsx)**,包含独立的工作表:一张用于 domain,每个 domain 另外一张包含其关联的 IP。
## ⚙ 附加功能
- 结果以表格形式呈现,支持按任意列排序,所选行的详细信息会直接显示在下方。
- 支持浅色和深色**主题**,可调整字体大小,并保留最近扫描的历史记录,方便您无需重新粘贴数据即可重复查询。
- **支持两种语言**:葡萄牙语 🇧🇷 和英语 🇺🇸,可实时切换。
- 当某个 API 超出配额时会发出提醒,并预估何时可以再次使用;页脚会显示提供此数据的情报源的剩余配额。
- 支持并行执行,并动态显示正在进行的查询状态。
- 提供 **IP**、**Hash** 和 **Domain** 专属选项卡。
- 自动管理 ChromeDriver,具备驱动程序池,并在退出时彻底关闭相关进程。如果 Chrome 无法启动,扫描将继续使用 API 情报源进行,而不会卡死。
- 启动时自动在 GitHub 上检查新版本。
- 提供专属界面用于注册 API 密钥,密钥会**加密**存储在用户的设备上,并支持按服务进行连接测试。
- 灵活的输入方式:支持逗号、空格或换行符分隔。
- 彩色结果标识:🔴 红色代表信誉不良,🟡 琥珀色代表需要进一步验证,🟢 绿色代表安全。
## 🔐 API 配置
打开 IP Shark 并点击 **🗝 配置 API**。填写您想使用的服务密钥,然后点击 **保存**。
密钥仅保存在您的本地设备上,路径为 `%LOCALAPPDATA%\IPShark\api_keys.dat`,
通过 Windows 的 DPAPI 结合您的账户凭据进行加密。实际上,这意味着
只有您本人在这台计算机上才能读取它们。密钥不会被发送到
任何被查询的 API 之外的地方。
如果您从 v3.1 之前的版本升级并且使用了 `config/api.env`,您的密钥会在
首次运行时自动导入。配置界面还提供删除旧文件的选项,
因为该文件以明文形式存储所有内容,程序将不再读取它。
没有任何密钥是强制要求的。未配置密钥的情报源将显示为未配置,
其他情报源则会正常运行。
请通过以下链接获取您的免费密钥:
- [VirusTotal](https://www.virustotal.com/gui/my-apikey)
- [AbuseIPDB](https://www.abuseipdb.com/account/api)
- [IPinfo](https://ipinfo.io/account/token)
- [AlienVault OTX](https://otx.alienvault.com/api)
- [MetaDefender Cloud](https://metadefender.com/)
## 🚀 使用说明
1. 运行 `ipshark.exe`。
2. 选择所需语言:🇧🇷 葡萄牙语 (PT) 或 🇺🇸 英语 (EN)。
3. 选择 **IP**、**Hash** 或 **Domain** 选项卡。
4. 粘贴要查询的值(支持逗号、空格或换行符分隔)。
5. 配置选项:
- **⚙ 自定义查询**:选择要查询的情报源,包括在 Domain 选项卡中解析关联的 IP。
- **包含分析文本**:在扫描结束时生成自动建议。
- **包含 MSS 文本**:调整建议文本以包含向 MSS 的上报内容。
6. 点击 **🔍 查询** 开始。
7. 结果将显示在表格中,点击某一行可在下方查看其完整报告。您可以进行以下操作:
- 将所有内容**复制**到剪贴板;
- **导出**为格式专业的 Excel (.xlsx) 文件;
- 随时点击 ❌ 取消按钮或按 Esc 键**取消**扫描。
## 🛠 开发说明
这两个脚本都会自动在 `.venv/` 中创建并复用 venv,因此无需
提前进行任何准备工作。
```
build.bat :: gera dist\ipshark.exe (venv + dependências + PyInstaller)
build.bat fast run :: reaproveita o cache e abre o executável ao final
run_tests.bat :: roda as suítes de tests\
```
`build.bat help` 列出了其他可用选项(`publish`、`clean`)。
测试过程不需要网络、Selenium 或 Chrome:API 的响应都是模拟的,浏览器池
运行的也是替身。在生成用于分发的可执行文件之前,请务必先运行它们。
**演示**

标签:API集成, IP信誉分析, Python, 可观测性, 威胁情报, 安全调查, 开发者工具, 无后门, 桌面GUI, 漏洞挖掘, 逆向工具, 配置审计