mtayeb89/AI-Threat-Intelligence-Assistant

GitHub: mtayeb89/AI-Threat-Intelligence-Assistant

一款命令行网络安全聊天机器人,基于 NVD 和 CISA 真实数据源提供结构化 CVE 报告、威胁报告摘要及 IOC 自动提取功能。

Stars: 1 | Forks: 0

# 🌍 AI 威胁情报助手 一款命令行网络安全聊天机器人。询问它有关 CVE 的信息,它会返回结构化的报告(描述、CVSS 评分、漏洞利用状态、缓解措施、相关恶意软件、IOC、参考资料)。它还可以将冗长的威胁情报报告总结为快速的要点,并能从任何文本文件中提取 IOC(IP、域名、哈希值、URL、电子邮件、CVE)。 基于真实数据源构建——没有捏造或幻觉的 CVE 数据。CVE 和 CVSS 详细信息来自 [NVD API](https://nvd.nist.gov/developers),漏洞利用状态会与 [CISA 的 KEV 目录](https://www.cisa.gov/known-exploited-vulnerabilities-catalog) 进行交叉验证。 ## ✨ 功能 - **CVE 查询**:`Tell me about CVE-2024-3400` → 生成包含以下内容的结构化报告: - 描述 - CVSS 评分(自动选择 v3.1 / v3.0 / v2 版本,包含严重程度 + vector string) - 漏洞利用状态(实时与 CISA KEV 进行对比验证) - 缓解措施(CISA 要求的操作 + 通用指南) - 相关恶意软件(明确标注为 *NVD 不提供*,并附带扩充指南——参见下方说明) - IOC(同上——并提供指向内置提取器的指引,用于从报告中提取 IOC) - 参考资料(厂商安全公告、补丁、KEV 条目) - **报告总结**:将冗长的 PDF/TXT 威胁报告转换为 5-6 个要点。 - 完全离线工作(基于频率的抽取式摘要器)。 - 如果设置了 `ANTHROPIC_API_KEY`,会自动升级为基于 Claude 的摘要。 - **IOC 提取**:从任何文本中提取 IPv4、域名、URL、电子邮件、CVE、MD5/SHA1/SHA256 哈希值。 - **两种界面**:交互式聊天循环,或用于脚本编写的单次 CLI 命令。 ## 📦 安装说明 ``` pip install -r requirements.txt ``` 唯一依赖项:`requests`。 可选环境变量: ``` export NVD_API_KEY="..." # optional, raises NVD's rate limit (free key) export ANTHROPIC_API_KEY="..." # optional, enables higher-quality summaries via Claude ``` ## 🚀 用法 ### 交互式聊天模式 ``` python threat_intel_assistant.py ``` ``` You> Tell me about CVE-2024-3400 You> summarize sample_report.txt You> ioc sample_report.txt You> exit ``` ### 直接 CLI 命令 ``` python threat_intel_assistant.py cve CVE-2024-3400 python threat_intel_assistant.py summarize sample_report.txt python threat_intel_assistant.py ioc sample_report.txt ``` 附带了一个 `sample_report.txt` 文件,因此您可以立即体验总结/IOC 提取功能。 ## 🗂 项目结构 ``` threat_intel_assistant.py # main CLI / chatbot entry point modules/ cve_client.py # NVD API client + parser kev_client.py # CISA KEV catalog cross-check ioc_extractor.py # regex-based IOC extraction summarizer.py # offline + Claude-powered summarizer formatter.py # pretty-print helpers sample_report.txt # demo file for summarize/ioc commands requirements.txt README.md ``` ## 💡 扩展或脱颖而出的想法 - 使用 CVE ID 或产品名称作为切入点,通过真实的威胁情报 API(AlienVault OTX、VirusTotal、MISP、Shodan)来丰富“相关恶意软件”/“IOC”字段。 - 在相同模块的基础上添加 Telegram/Slack/Discord 机器人前端。 - 批量模式:输入包含多个 CVE ID 的 CSV 文件,并导出合并的 PDF/HTML 报告。 - 添加轻量级的本地缓存(SQLite),以避免重复查询时不断请求 API。 - 日常摘要模式:每天早上自动总结 CISA KEV 中的最新条目。 - Web 仪表盘(FastAPI + 简单的前端)以替代或配合 CLI 使用。 - 阿拉伯语输出模式:根据需要将结构化的 CVE 报告翻译成阿拉伯语。 ## ⚠️ 免责声明 本工具仅供教育和防御性安全研究使用。在生产环境中采取行动之前,请务必根据主要的厂商/CISA 来源核实关键发现。 # 🌍 AI 威胁情报助手 شات بوت طرفي (سطر أوامر) متخصص في الأمن السيبراني. اسأله عن أي CVE فيرد عليك بتقرير منظم (الوصف، درجة CVSS، حالة الاستغلال، إجراءات التخفيف، البرمجيات الخبيثة المرتبطة، مؤشرات الاختراق، والمراجع). كما يمكنه تلخيص تقارير التهديدات الطويلة في نقاط سريعة، واستخراج مؤشرات الاختراق (IOCs) من أي نص. يعتمد على مصادر بيانات حقيقية — لا يتم اختلاق بيانات CVE. تُجلب تفاصيل الثغرات و CVSS من [NVD API](https://nvd.nist.gov/developers)، ويتم التحقق من حالة الاستغلال مقابل [قائمة CISA للثغرات المُستغَلة فعليًا (KEV)](https://www.cisa.gov/known-exploited-vulnerabilities-catalog). ## ✨ 功能特性 - **البحث عن CVE**: اكتب `Tell me about CVE-2024-3400` فيرد بتقرير منظم يحتوي على: - الوصف (Description) - درجة CVSS (يتم اختيار الإصدار v3.1 / v3.0 / v2 تلقائيًا مع مستوى الخطورة و vector string) - حالة الاستغلال (يتم التحقق منها مباشرة عبر قائمة CISA KEV) - إجراءات التخفيف (Mitigation) — الإجراءات المطلوبة من CISA بالإضافة إلى إرشادات عامة - البرمجيات الخبيثة المرتبطة — يوضح البرنامج بشفافية أن هذه البيانات غير متوفرة من NVD (انظر الملاحظة أدناه) - مؤشرات الاختراق (IOC) — مع الإشارة إلى أداة الاستخراج المدمجة للتقارير النصية - المراجع (نشرات الشركة المصنّعة، التصحيحات، سجلات KEV) - **تلخيص التقارير**: يحوّل تقرير تهديدات طويل إلى ٥-٦ نقاط سريعة. - يعمل دون اتصال بالإنترنت بالكامل (خوارزمية تلخيص استخراجية تعتمد على تكرار الكلمات). - يتحسن تلقائيًا ليستخدم Claude للتلخيص الأدق عند توفر `ANTHROPIC_API_KEY`. - **استخراج مؤشرات الاختراق (IOC)**: يستخرج عناوين IPv4، النطاقات، الروابط، البريد الإلكتروني، أرقام CVE، وبصمات الملفات (MD5/SHA1/SHA256) من أي نص. - **واجهتان للاستخدام**: وضع محادثة تفاعلي، أو أوامر مباشرة عبر سطر الأوامر للأتمتة والسكربتات. ## 📦 安装 ``` pip install -r requirements.txt ``` الاعتمادية الوحيدة: `requests`. متغيرات بيئة اختيارية: ``` export NVD_API_KEY="..." # اختياري، يرفع حد الطلبات المسموح به في NVD (مفتاح مجاني) export ANTHROPIC_API_KEY="..." # اختياري، يفعّل تلخيصًا أدق عبر Claude ``` ## 🚀 使用方法 ### 交互式对话模式 ``` python threat_intel_assistant.py ``` ``` You> Tell me about CVE-2024-3400 You> summarize sample_report.txt You> ioc sample_report.txt You> exit ``` ### 通过命令行的直接命令 ``` python threat_intel_assistant.py cve CVE-2024-3400 python threat_intel_assistant.py summarize sample_report.txt python threat_intel_assistant.py ioc sample_report.txt ``` تم إرفاق ملف `sample_report.txt` كي تجرب التلخيص واستخراج مؤشرات الاختراق مباشرة. ## 🗂 项目结构 ``` threat_intel_assistant.py # نقطة الدخول الرئيسية (سطر الأوامر / الشات بوت) modules/ cve_client.py # عميل NVD API والمحلّل kev_client.py # التحقق من قائمة CISA KEV ioc_extractor.py # استخراج مؤشرات الاختراق بالتعبيرات النمطية summarizer.py # التلخيص (دون اتصال + عبر Claude) formatter.py # أدوات تنسيق المخرجات sample_report.txt # ملف تجريبي لأوامر summarize و ioc requirements.txt README.md ``` ## 💡 进一步完善的额外建议 - إثراء حقلي "البرمجيات الخبيثة المرتبطة" و"IOC" عبر ربط حقيقي بمصادر استخبارات تهديدات (AlienVault OTX، VirusTotal، MISP، Shodan) باستخدام رقم CVE أو اسم المنتج كمحور بحث. - إضافة واجهة بوت عبر Telegram أو Slack أو Discord فوق نفس الوحدات البرمجية. - وضع دفعي (Batch): تغذية ملف CSV بأرقام CVE متعددة وتصدير تقرير PDF/HTML موحّد. - إضافة تخزين مؤقت محلي خفيف (SQLite) لتجنّب تكرار الاستعلامات لنفس الـ CVE. - وضع "الملخص اليومي": تلخيص أحدث الإضافات في قائمة CISA KEV تلقائيًا كل صباح. - لوحة تحكم ويب (FastAPI + واجهة أمامية بسيطة) بدلًا من أو بالإضافة إلى سطر الأوامر. - وضع إخراج باللغة العربية: ترجمة التقرير المنظم لـ CVE إلى العربية عند الطلب. ## ⚠️ 免责声明 هذه الأداة مخصصة لأغراض البحث التعليمي والدفاعي في مجال الأمن السيبراني. يُرجى دائمًا التحقق من النتائج الحرجة من المصادر الأساسية (الشركة المصنّعة أو CISA) قبل اتخاذ أي إجراء عليها في بيئة الإنتاج.
标签:AI安全工具, API集成, Chatbot机器人, CLI命令行工具, NLP文本处理, Python, 可观测性, 威胁情报, 字符串匹配, 开发者工具, 无后门, 逆向工具