abdullahcicekli/ahtapot

GitHub: abdullahcicekli/ahtapot

一款 Chrome 浏览器扩展,集成 10 个威胁情报源和 3 个 AI 模型,支持在网页中选中文字后一键自动识别并分析 IOC 失陷指标,帮助安全分析师快速完成威胁分诊与研判。

Stars: 19 | Forks: 3

Ahtapot Logo # Ahtapot - IOC 分析扩展 **直接在您的浏览器中快速安全地分析失陷指标 (IOC)** [![Website](https://img.shields.io/badge/Website-ahtapot.me-purple?style=flat-square&logo=google-chrome)](https://ahtapot.me) [![Chrome Web Store](https://img.shields.io/badge/Chrome-Extension-blue?style=flat-square&logo=google-chrome)](https://chromewebstore.google.com/detail/ahtapot-ioc-analysis-tool/gmekhigahdiddngdhfdkeefcomcankpg) [![License](https://img.shields.io/badge/license-MIT-green?style=flat-square)](LICENSE) [![Version](https://img.shields.io/badge/version-3.0.1-brightgreen?style=flat-square)](package.json) [![TypeScript](https://img.shields.io/badge/TypeScript-5.x-blue?style=flat-square&logo=typescript)](https://www.typescriptlang.org/) [官网](https://ahtapot.me) | [功能特性](#features) | [安装说明](#installation) | [使用方法](#usage) | [隐私说明](#privacy) | [开发](#development) | [API Keys](#api-keys) | [版本控制](#versioning)
## 🎉 v3.0.0 中的新功能 ### 主要版本 - AI 驱动的威胁情报 (2025 年 12 月 4 日) 这是一个**主要版本**,带来了 AI 驱动的分析、新的威胁情报提供商以及全面的 UI 改进。 #### 🤖 AI 集成 - **3 个 AI 提供商** - Claude (Anthropic), Gemini (Google), GPT-4o (OpenAI) - **3 种分析模式** - 摘要(快速分诊)、分析(升级研判)、详细(深入调查) - **结构化响应** - 包含结论、风险级别、置信度分数的一致 JSON 输出 - **智能缓存** - 具有语言感知能力和 24 小时有效期的 AI 结果缓存 - **导出选项** - 复制为 Markdown,导出为 PNG 图像 #### 🔌 新提供商 (自 2.3.2 起) - **URLhaus** - abuse.ch 提供的恶意 URL 数据库(免费无限次使用) - **Pulsedive** - 带有风险评分的威胁情报(每天免费 250 次请求) - **Scamalytics** - IP 欺诈检测(每月 5,000 次免费额度) #### 🎨 全面的 UI 改进 - **全新调色板** - 青柠绿强调色 (#C7F54D),珊瑚红危险色 (#E63946) - **响应式设计** - 针对移动设备优化的操作按钮和布局 - **拖放调整提供商顺序** - 自定义提供商的显示方式 - **现代化结果卡片** - 为所有提供商增强了 UI ### AI 提供商 (3 个提供商) **Claude** (Sonnet 4) | **Gemini** (2.0 Flash) | **GPT-4o** (Mini) ### 活跃的威胁情报提供商 (10 个提供商) **VirusTotal** | **OTX AlienVault** | **AbuseIPDB** | **MalwareBazaar** | **ARIN** | **Shodan** | **GreyNoise** | **URLhaus** | **Pulsedive** | **Scamalytics** - **智能 API 调用** - 仅查询支持该 IOC 类型的提供商 - **速率限制保护** - GreyNoise 和 Shodan 的确认系统 - **无需 API Key** - ARIN WHOIS 和 URLhaus(始终可用) **[查看完整更新日志](CHANGELOG.md)** - 完整的版本历史和详细的发布说明 ## 功能特性 ### 智能 IOC 检测 自动检测和分析各种类型的安全指标:
网络 IPv4/IPv6 地址、域名、URL
哈希 MD5, SHA1, SHA256 文件哈希
身份 电子邮件地址、CVE 编号
加密货币 Bitcoin, Ethereum 地址
### 闪电般的工作流 1. 在任意网页上选择任意文本 2. 立即出现浮动按钮 3. 一键分析 4. 在精美的侧边栏中查看结果 ### 多源威胁情报 | 服务 | 用途 | 速率限制 | |---------|---------|------------| | **VirusTotal** | 恶意软件与 URL 扫描 | 4 次请求/分钟 (免费) | | **OTX AlienVault** | 威胁情报与 IOC 脉冲 | 10,000 次请求/天 | | **AbuseIPDB** | IP 信誉与滥用报告 | 1,000 次请求/天 (免费) | | **MalwareBazaar** | 恶意软件哈希库与样本仓库 | 无严格限制 (免费) | | **ARIN** | IP WHOIS 与网络注册 | 15 次请求/分钟 (无需 Key) | | **Shodan** | 设备搜索与漏洞扫描 | 100 次结果/月 (免费) * | | **GreyNoise** | 互联网噪音检测与分类 | 50 次搜索/周 (免费) * | | **URLhaus** | 恶意 URL 与恶意软件分发数据库 | 无限制 (免费) | | **Pulsedive** | 威胁情报与 IOC 丰富信息 | 250 次请求/天 (免费) | | **Scamalytics** | IP 欺诈评分与诈骗检测 | 5,000 次额度/月 (免费) | 注意:具有速率限制的提供商包含确认系统,以保护您的配额 ### 智能提供商匹配 - **实时支持检测** - 每个 IOC 通过徽章显示兼容的提供商 - **优化的 API 调用** - 仅查询支持该 IOC 类型的提供商 - **零浪费请求** - 通过跳过不支持的类型来节省 API 速率限制 - **清晰的消息提示** - 当提供商不支持某 IOC 类型时提供明确的解释 ### 现代且直观的界面 - Google 翻译风格的浮动按钮 - **基于选项卡的提供商结果** - 在所有提供商 (VirusTotal, OTX, AbuseIPDB, MalwareBazaar, ARIN, Shodan, GreyNoise) 之间无缝切换 - **提供商支持徽章** - 一目了然地查看哪些提供商支持每个 IOC - **信息丰富的空状态** - 当提供商不支持某 IOC 类型时提供清晰的解释 - 干净、专业的设计 - 深色模式优化 - 流畅的动画 - 非侵入式用户体验 ### 隐私至上 - 所有 API Key 仅本地存储在您的设备上 - 不收集或跟踪任何数据 - 仅使用安全的 HTTPS 连接 - 可选的缓存功能,具有可配置的保留期 - 开源且透明 - 符合 Content Security Policy 规范 - 阅读我们的[隐私政策](docs/PRIVACY.md) | [Gizlilik Politikasi (TR)](docs/PRIVACY_TR.md) ## 安装说明 ### 从 Chrome Web Store 安装(推荐) **安装 Ahtapot 最简单的方法:** 1. 访问 [Chrome Web Store](https://chromewebstore.google.com/detail/ahtapot-ioc-analysis-tool/gmekhigahdiddngdhfdkeefcomcankpg) 2. 点击 "Add to Chrome" 3. 确认权限 4. 开始分析 IOC! ### 从源码构建 ``` # Clone 仓库 git clone https://github.com/yourusername/ahtapot-extension.git cd ahtapot-extension # 安装依赖 npm install # Build 扩展 npm run build ``` ### 在 Chrome 中加载 1. 打开 Chrome 并访问 `chrome://extensions` 2. 启用右上角的 "Developer mode" 3. 点击 "Load unpacked" 4. 选择项目目录中的 `dist` 文件夹 ## 隐私说明 我们非常重视您的隐私。以下是您需要了解的内容: ### 我们存储的内容(仅限本地) - **API Keys**:使用 Chrome 加密存储安全地保存在您的设备上 - **缓存结果**:以前分析过的 IOC(可选,用户可配置保留期) - **用户偏好设置**:语言选择和设置 ### 我们不会做的事情 - **无跟踪**:零分析或遥测 - **无服务器**:我们不运营任何服务器 - **无数据传输**:除了发送给安全服务的 API 调用外,没有任何数据离开您的设备 - **不出售数据**:您的数据归您所有,绝不例外 - **无第三方共享**:只有您和您配置的安全 API 可以访问 ### 缓存管理 - 配置已分析的 IOC 保留时间(1-30 天,默认:7 天) - 自动清理旧的缓存数据 - 随时手动清除缓存 - 所有缓存数据仅保存在本地 ### 完整隐私政策 **阅读完整的隐私政策:** - [English Version](docs/PRIVACY.md) - [Türkçe Versiyon](docs/PRIVACY_TR.md) ## 使用方法 ### 快速入门指南 #### 1. 配置设置 - 点击 Ahtapot 扩展图标 → 设置 - **通用设置选项卡:** - 选择您的语言 (English/Türkçe) - 配置缓存保留期(可选) - **API Keys 选项卡:** - 添加您的 API Keys 以增强分析能力 - 请参阅 [API Keys 部分](#-api-keys) 了解如何获取它们 #### 2. 分析 IOC 选择您偏好的方法: **方法 A:文本选择** ``` 1. Select text containing IOCs on any webpage 2. Floating button appears automatically 3. Click "Analyze" button 4. View results in side panel ``` **方法 B:上下文菜单** ``` 1. Select text with IOCs 2. Right-click → "Analyze with Ahtapot" 3. Results appear in side panel ``` **方法 C:手动输入** ``` 1. Click extension icon → Open side panel 2. Paste IOCs into text area 3. Click "Detect IOCs" → "Analyze" ``` #### 3. 解读结果 结果采用颜色编码,便于快速进行威胁评估: - **安全** - 未检测到威胁 (绿色) - **可疑** - 潜在威胁,需进一步调查 (黄色) - **恶意** - 已确认威胁,需采取行动 (红色) - **未知** - 数据不足以进行评估 (灰色) ## AI 驱动的分析 Ahtapot 与领先的 AI 提供商集成,提供智能的 IOC 分析。获取即时的结论、风险评估和可行的建议。 ### 支持的 AI 提供商 | 提供商 | 模型 | 最适用场景 | |----------|-------|----------| | **Claude** | Claude Sonnet 4 | 高级推理、详细分析 | | **Gemini** | Gemini 2.0 Flash | 快速分析、提供免费额度 | | **GPT-4o** | GPT-4o Mini | 平衡的性能、高性价比 | ### AI 分析模式 IOC 分析结果可以以 3 种不同的模式呈现。每种模式都针对不同的用例和 SOC 级别进行了优化。 | 功能 | 摘要 | 分析 | 详细 | |---------|---------|----------|----------| | **目标受众** | L1 分诊 | L1/L2 交接 | L2/L3 + IR 团队 | | **字数** | ~200 | 400-600 | 800-1200 | | **阅读时间** | 10 秒 | 1-2 分钟 | 3-5 分钟 | | **用例** | 快速分诊决策 | 升级研判决策 | 全面调查 | | **MITRE ATT&CK** | - | 基本 | 详细 + 证据 | | **IR 指导** | 单个行动 | 2-3 个行动 | 完整 playbook | | **检测规则** | - | - | Sigma + Hunting 查询 | | **威胁归因** | - | 如果可用 | 全面分析 | #### 摘要模式 专为快速分诊决策而设计。可在 10 秒内阅读完毕,并提供即时的可操作性输出。 **最适合:** 告警队列管理、初始分诊、大容量环境 **输出包括:** - 带有颜色编码指示器的结论 - 风险和置信度级别 - 太长不看版总结 (1-2 句话) - 关键信号 (检测、信誉、关联) - 单个建议行动 #### 分析模式 为升级研判决策提供充足的上下文。在 L1 到 L2 交接过程中使用。 **最适合:** 升级决策、L1/L2 交接文档、告警验证 **输出包括:** - 摘要中的所有内容,以及: - 按提供商划分的细分表格 - 共识和冲突分析 - 误报指标 - 基本的 MITRE ATT&CK 映射 - 多个优先级排序的行动 - 分析师注意事项和局限性 #### 详细模式 提供全面的调查支持。符合事件响应 (IR) 工作流的结构,带有基于证据的分析。 **最适合:** 全面的事件调查、IR 团队交接、威胁狩猎、事件后文档记录 **输出包括:** - 分析模式中的所有内容,以及: - 针对每个 IOC 的深入分析 - 威胁攻击者/活动归因 - 杀伤链阶段评估 - CIA 影响分析 - 完整的 IR playbook (抑制 → 根除 → 恢复) - Sigma 规则建议 - SI/EDR hunting 查询 - 外部情报参考 - 用于拓展调查的相关 IOC ### 结论指示器 所有模式均使用一致的结论指示器: | 颜色 | 结论 | 含义 | |-------|---------|---------| | 红色 | MALICIOUS | 已确认威胁,需立即采取行动 | | 橙色 | SUSPICIOUS | 疑似威胁,建议进行调查 | | 黄色 | LIKELY BENIGN | 可能安全,如需要可进行验证 | | 绿色 | CLEAN | 未检测到威胁 | | 灰色 | UNKNOWN | 数据不足以进行评估 | ### 选择正确的模式 ``` ┌─────────────────────────────────────────────────────────────┐ │ Which mode to use? │ ├─────────────────────────────────────────────────────────────┤ │ │ │ Need quick triage decision? │ │ └─► Summary │ │ │ │ Need to decide on escalation? │ │ └─► Analysis │ │ │ │ Investigating confirmed incident? │ │ └─► Detailed │ │ │ │ Writing IR report or hunting threats? │ │ └─► Detailed │ │ │ └─────────────────────────────────────────────────────────────┘ ``` ## 支持的 IOC 类型 | 类型 | 示例 | 模式 | |------|---------|---------| | **IPv4** | `192.168.1.1` | `0-255.0-255.0-255.0-255` | | **IPv6** | `2001:0db8:85a3::8a2e:0370:7334` | 完整/压缩 | | **Domain** | `example.com` | 需要有效的 TLD | | **URL** | `https://example.com/path` | HTTP/HTTPS | | **MD5** | `d41d8cd98f00b204e9800998ecf8427e` | 32 个十六进制字符 | | **SHA1** | `da39a3ee5e6b4b0d3255bfef95601890afd80709` | 40 个十六进制字符 | | **SHA256** | `e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855` | 64 个十六进制字符 | | **Email** | `user@example.com` | RFC 5322 | | **CVE** | `CVE-2021-44228` | CVE-YYYY-NNNNN | | **Bitcoin** | `1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa` | Base58/Bech32 | | **Ethereum** | `0x742d35Cc6634C0532925a3b844Bc9e7595f0bEb` | 0x + 40 个十六进制字符 | ## 开发 ### 前置条件 - Node.js 18+ 和 npm - Chrome 浏览器 - TypeScript 知识(推荐) ### 技术栈 - **框架:** React 18 + TypeScript - **构建工具:** Vite 5 - **样式:** CSS3 与 CSS Variables - **图标:** Lucide React - **扩展:** Manifest V3 - **存储:** Chrome Storage API ### 从源码构建 1. Clone 此代码仓库 2. 安装依赖项:`npm install` 3. (可选) 复制 `.env.example` 到 `.env` 并添加您的 API Key 以便开发 4. 构建扩展:`npm run build` 5. 在 Chrome 中加载 `dist` 文件夹 6. 在各种网站上进行测试 ### 开发 API Keys 在开发模式下,API Keys 可以从 `.env` 文件中自动加载: ``` # 复制示例文件 cp .env.example .env # 编辑 .env 并添加你的 keys ``` **支持的环境变量:** | 变量 | 提供商 | |----------|----------| | `VITE_VIRUSTOTAL_API_KEY` | VirusTotal | | `VITE_URLHAUS_API_KEY` | URLhaus | | `VITE_PULSEDIVE_API_KEY` | Pulsedive | | `VITE_SCAMALYTICS_API_KEY` | Scamalytics | | `VITE_OTX_API_KEY` | AlienVault OTX | | `VITE_ABUSEIPDB_API_KEY` | AbuseIPDB | | `VITE_SHODAN_API_KEY` | Shodan | | `VITE_GREYNOISE_API_KEY` | GreyNoise | | `VITE_MALWAREBAZAAR_API_KEY` | MalwareBazaar | | `VITE_CLAUDE_API_KEY` | Claude (Anthropic) | | `VITE_GEMINI_API_KEY` | Gemini (Google) | | `VITE_OPENAI_API_KEY` | OpenAI | ## API Keys 获取免费的 API Keys 以解锁全面的分析功能: ### VirusTotal - **用途:** 恶意软件、文件、URL、IP 和域名分析 - **免费额度:** 每分钟 4 次请求 - **支持的 IOC:** IPv4, IPv6, 域名, URL, 文件哈希 (MD5, SHA1, SHA256) - **获取 Key:** [virustotal.com/gui/join-us](https://www.virustotal.com/gui/join-us) - **功能:** - 实时恶意软件扫描 - 全面的威胁分析 - 来自 70 多个防病毒引擎的检测统计数据 ### OTX AlienVault - **用途:** 威胁情报和 IOC 脉冲分析 - **免费额度:** 每天 10,000 次请求 (10 次请求/秒) - **支持的 IOC:** IPv4, IPv6, 域名, URL, 文件哈希 (MD5, SHA1, SHA256), CVE - **获取 Key:** [otx.alienvault.com/api](https://otx.alienvault.com/api) - **功能:** - 社区驱动的威胁情报 - 基于脉冲的威胁信息 - 恶意软件家族识别 - 目标国家和攻击者信息 - 自定义威胁评分算法 ### AbuseIPDB - **用途:** IP 地址信誉和滥用置信度评分 - **免费额度:** 每天 1,000 次请求 - **支持的 IOC:** 仅限 IPv4, IPv6 - **获取 Key:** [abuseipdb.com/register](https://www.abuseipdb.com/register) - **功能:** - 滥用置信度评分 (0-100%) - 详细的滥用报告和分类 - 地理和网络信息 - ISP 和使用类型检测 - 社区报告的滥用数据 ### MalwareBazaar (abuse.ch) - **用途:** 恶意软件样本库和哈希信誉查询 - **免费额度:** 无需 API Key,无严格速率限制 - **支持的 IOC:** 仅限文件哈希 (MD5, SHA1, SHA256) - **文档:** [bazaar.abuse.ch/api](https://bazaar.abuse.ch/api/) - **注意:** [abuse.ch](https://abuse.ch) 项目的一部分(与 URLhaus 属于同一组织) - **功能:** - 恶意软件样本信息和元数据 - 文件类型和签名检测 - 恶意软件家族分类 - 提交日期和首次发现信息 - 社区驱动的恶意软件情报 - 基础查询无需身份验证 ### ARIN - **用途:** IP 地址 WHOIS 和网络注册信息 - **免费额度:** 无需 API Key(公共只读访问) - **支持的 IOC:** 仅限 IPv4, IPv6 - **文档:** [arin.net/resources/registry/whois/rws](https://www.arin.net/resources/registry/whois/rws/) - **功能:** - 网络注册详情 - 组织信息 - IP 地址分配范围 - CIDR 表示法和网络块 - 注册和更新日期 - 父网络关系 - 无需配置即可始终使用 ### Shodan - **用途:** 互联网连接设备搜索和漏洞分析 - **免费额度:** 每月 100 个结果(受速率限制并带有确认提示) - **支持的 IOC:** IPv4, IPv6, 域名 - **获取 Key:** 访问 [developer.shodan.io/api](https://developer.shodan.io/api) → 点击右上角的 "Show API Key" - **功能:** - 开放端口和服务检测 - CVE 漏洞识别 - 设备 banners 和服务版本 - 地理位置数据 - ISP 和组织信息 - 历史扫描数据 - 域名的子域名发现 ### GreyNoise - **用途:** 互联网范围的噪音检测和威胁分类 - **免费额度:** 每周 50 次搜索(受速率限制并带有确认提示,与 Visualizer 使用量合并计算) - **支持的 IOC:** 仅限 IPv4 - **获取 Key:** [viz.greynoise.io/account/details](https://viz.greynoise.io/account/details) - **功能:** - 互联网扫描器检测(大规模扫描 vs 定向扫描) - RIOT (Rule It Out) - 良性服务识别 - 分类(恶意、良性、未知) - 攻击者信息和标签 - 最后出现的时间戳 - 有关扫描活动的元数据 ### URLhaus (abuse.ch) - **用途:** 恶意 URL 和恶意软件分发数据库 - **免费额度:** 无限制(免费账户) - **支持的 IOC:** URL, 域名, IPv4, IPv6, MD5, SHA256 - **文档:** [urlhaus.abuse.ch/api](https://urlhaus.abuse.ch/api/) - **注意:** [abuse.ch](https://abuse.ch) 项目的一部分(与 MalwareBazaar 属于同一组织) - **功能:** - 恶意 URL 数据库 - Payload 和威胁分类 - URL 状态监控(在线/离线) - 恶意软件分发跟踪 - 黑名单状态 (Spamhaus DBL, SURBL) ### Pulsedive - **用途:** 具有 IOC 丰富信息的威胁情报平台 - **免费额度:** 每天 250 次请求 (每月 2,500 次) - **支持的 IOC:** IPv4, IPv6, 域名, URL, MD5, SHA1, SHA256 - **获取 Key:** [pulsedive.com/account](https://pulsedive.com/account/) - **功能:** - 风险级别评估 (无/低/中/高/严重) - 威胁源跟踪 - 风险因素分析 - 地理和组织数据 - 社区驱动的情报 ### Scamalytics - **用途:** IP 欺诈评分和诈骗检测 - **免费额度:** 每月 5,000 次额度(15 天 PREMIUM 试用) - **支持的 IOC:** 仅限 IPv4, IPv6 - **获取 Key:** [scamalytics.com/ip/api](https://scamalytics.com/ip/api) (需人工审批) - **注意:** 注册需要人工审核。您将在 24 小时内通过电子邮件收到 API 凭证。 - **功能:** - IP 欺诈风险评分 (0-100) - 数据中心和 VPN 检测 - TOR 出口节点检测 - 外部黑名单检查 - 代理检测 (iCloud Private Relay, AWS, Google) ### 数据流 1. 用户选择文本 → Content script 检测 IOC 2. Content script 通过消息将 IOC 发送到后台 3. Background worker 发出安全的 API 调用 4. 结果返回到侧边栏进行显示 5. 不永久存储敏感数据 ## 贡献 欢迎贡献!本项目处于积极维护状态。 ### 如何贡献 1. Fork 此代码仓库 2. 创建一个 feature 分支 git checkout -b feature/amazing-feature 3. 提交您的更改 git commit -m 'Add amazing feature' 4. 推送到您的分支 git push origin feature/amazing-feature 5. 发起一个 Pull Request ## 许可证 本项目采用 MIT 许可证授权 - 有关详细信息,请参见 [LICENSE](LICENSE) 文件。 ## 支持 - **官网:** [ahtapot.me](https://ahtapot.me) - **Chrome Web Store:** [安装扩展](https://chromewebstore.google.com/detail/ahtapot-ioc-analysis-tool/gmekhigahdiddngdhfdkeefcomcankpg) - **问题:** [GitHub Issues](https://github.com/abdullahcicekli/ahtapot/issues) - **讨论:** [GitHub Discussions](https://github.com/abdullahcicekli/ahtapot/discussions) - **隐私问题:** 参见 [隐私政策](docs/PRIVACY.md) - **安全漏洞:** 请通过 GitHub Security 选项卡私下报告安全问题 ## 版本控制 本项目遵循 [语义化版本 2.0.0](https://semver.org/) (SemVer)。 **版本格式:** `MAJOR.MINOR.PATCH` - **MAJOR** - 不向下兼容的更改(例如,移除一个提供商) - **MINOR** - 向下兼容的新功能(例如,添加一个提供商) - **PATCH** - 错误修复和小改进 获取详细信息: **[VERSIONING.md](docs/VERSIONING.md)** - 完整的版本控制策略和贡献者指南 **[CHANGELOG.md](CHANGELOG.md)** - 完整的版本历史和发布说明 **当前版本:** 3.0.0
**为网络安全社区而构建** [官网](https://ahtapot.me) | [Chrome Web Store](https://chromewebstore.google.com/detail/ahtapot-ioc-analysis-tool/gmekhigahdiddngdhfdkeefcomcankpg) | [报告 Bug](https://github.com/abdullahcicekli/ahtapot/issues) | [请求新功能](https://github.com/abdullahcicekli/ahtapot/issues)
标签:Ahtapot, AI分析, ChatGPT, Chrome插件, Claude, CVE检测, DAST, DLL 劫持, Gemini, GPT-4, IOC分析, IP 地址批量处理, Promptflow, TypeScript, 大语言模型, 失陷标示, 威胁情报, 安全插件, 库, 应急响应, 开发者工具, 恶意软件分析, 浏览器插件, 网络信息收集, 网络安全, 自动化攻击, 隐私保护