sggupta86/Cyber-Threat-Intelligence-System
GitHub: sggupta86/Cyber-Threat-Intelligence-System
这是一个基于Python和OpenSearch的自动化网络威胁情报收集、处理与可视化系统。
Stars: 0 | Forks: 0
# 网络威胁情报系统
基于 Python、OpenSearch 和 OpenSearch Dashboards 的网络威胁情报平台,用于从开源情报源收集、处理和分析网络威胁数据。该系统提取威胁指标,映射 MITRE ATT&CK 框架,并可视化 APT 活动。
自动化网络威胁情报收集、处理、分析与可视化平台
# 概述 网络威胁情报系统是一个基于 Python 的情报框架,旨在从多个开源情报源自动化收集、处理、丰富和可视化网络威胁数据。 该平台从以下来源收集网络安全信息: - 威胁情报博客 - 恶意软件分析报告 - 网络安全新闻网站 - 事件响应报告 - 安全研究出版物 - CVE 数据库 收集的数据以 JSON 格式存储,并通过清洗、规范化、标记和丰富流程进行处理。 系统提取有价值的威胁情报指标,包括: - CVE - IP 地址 - 域名 - 文件哈希 - 恶意软件家族 - 威胁行为者 - APT 组织 - 入侵指标 - MITRE ATT&CK 技术 - 攻击模式 处理后的情报数据被索引到 OpenSearch 中,用于高速搜索、过滤、关联分析和威胁狩猎操作。OpenSearch Dashboards 用于可视化监控网络威胁和 APT 活动。 # 核心功能 - 自动化 OSINT 威胁情报收集 - 基于 JSON 的数据处理流水线 - IOC 提取与丰富 - MITRE ATT&CK 映射 - APT 活动监控 - 威胁关联引擎 - OpenSearch 集成 - 交互式威胁仪表板 - 威胁狩猎支持 - 实时威胁监控 # 技术栈 ## 后端 - Python - BeautifulSoup - Scrapy - Requests - Selenium (可选) ## 数据处理 - Pandas - Regex - NLP 库 - JSON 处理 ## 搜索与分析 - OpenSearch - OpenSearch Dashboards ## 威胁情报框架 - MITRE ATT&CK - ATT&CK Navigator ## 部署 - Docker (可选) - Linux 服务器 / 云虚拟机 # 项目架构 ``` OSINT Sources │ ▼ Web Scraping Engine │ ▼ JSON Data Storage │ ▼ Data Cleaning & Enrichment │ ▼ IOC Extraction & MITRE Mapping │ ▼ OpenSearch Indexing │ ▼ OpenSearch Dashboards │ ▼ Threat Intelligence Visualization ``` # 项目工作流 ## 1. 数据收集 平台从以下来源收集威胁情报: - 网络安全新闻网站 - 威胁情报博客 - 恶意软件分析报告 - 安全研究出版物 - CVE 数据库 - 事件响应报告 ### 原始数据示例 ``` { "title": "APT29 phishing campaign detected", "source": "ThreatLab", "date": "2026-05-20", "content": "Threat actor using spear phishing...", "url": "https://example.com/report" } ``` ## 2. 数据处理 收集的数据需经过以下处理: - 去重 - HTML 标签清理 - 时间戳规范化 - 关键词提取 - 噪声过滤 - 威胁标记 ## 3. 威胁情报丰富 系统识别并丰富以下信息: - CVE ID - 恶意软件家族 - IP 地址 - 域名 - 哈希值 - 威胁行为者 - APT 组织 - MITRE ATT&CK 技术 ### 标记数据示例 ``` { "apt_group": "APT29", "malware": "Cobalt Strike", "mitre_technique": "T1566 - Phishing", "ioc": [ "192.168.1.10", "malicious-domain.com" ] } ``` ## 4. OpenSearch 集成 处理后的情报数据被索引到 OpenSearch 中,用于: - 快速搜索 - 威胁关联 - IOC 查找 - 时间线分析 - 威胁狩猎 ## 5. 仪表板与可视化 OpenSearch Dashboards 提供: - 威胁趋势可视化 - MITRE ATT&CK 映射 - IOC 仪表板 - 威胁行为者追踪 - 地理攻击洞察 - APT 活动监控 # 仓库结构 ``` Cyber-Threat-Intelligence-System/ │ ├── data/ │ ├── raw/ │ ├── processed/ │ └── tagged/ │ ├── scrapers/ │ ├── news_scraper.py │ ├── blog_scraper.py │ └── lab_report_scraper.py │ ├── processing/ │ ├── cleaner.py │ ├── tagger.py │ └── mitre_mapper.py │ ├── opensearch/ │ ├── index_data.py │ └── query_engine.py │ ├── dashboards/ │ └── dashboard_configs/ │ ├── ioc/ │ └── extractor.py │ ├── utils/ │ └── helpers.py │ ├── requirements.txt ├── README.md └── main.py ``` # 安装指南 ## 克隆仓库 ``` git clone https://github.com/your-username/Cyber-Threat-Intelligence-System.git ``` ## 进入项目目录 ``` cd Cyber-Threat-Intelligence-System ``` ## 安装依赖 ``` pip install -r requirements.txt ``` # 运行项目 ``` python main.py ``` # MITRE ATT&CK 映射 该项目将提取的威胁活动映射到 MITRE ATT&CK 框架,以识别: - 初始访问 - 执行 - 持久化 - 权限提升 - 防御规避 - 凭据访问 - 发现 - 命令与控制 - 数据渗出 | 威胁活动 | MITRE 技术 | |------------|------------| | 钓鱼邮件 | T1566 | | PowerShell 滥用 | T1059 | | 凭据转储 | T1003 | # 应用场景 - 安全运营中心 - 网络威胁狩猎 - 恶意软件情报分析 - 威胁情报研究 - 事件响应 - APT 监控 - 风险分析 - 安全分析 # 未来增强 - 基于 AI 的威胁分类 - 机器学习风险评分 - STIX/TAXII 集成 - 实时威胁源集成 - SOAR 集成 - 暗网监控 - 自动化告警系统 - 恶意软件沙盒集成 # 许可证 该项目旨在用于: - 教育目的 - 网络安全研究 - 威胁情报开发 - 安全监控 严禁未授权或恶意使用。 # 作者 **网络威胁情报研究项目** 为网络安全研究、威胁情报分析和防御性安全操作而开发。 # 软件与安装要求 设置和运行网络威胁情报平台需要以下软件和工具。 # 所需软件 | 软件 | 用途 | |--------|--------| | Python 3.10+ | 后端开发和自动化 | | Anaconda | Python 环境和包管理 | | Visual Studio Code | 代码编辑器和开发环境 | | Docker | 容器化部署 | | OpenSearch | 搜索和分析引擎 | | OpenSearch Dashboards | 威胁可视化和监控 | | Git | 版本控制系统 | # 系统要求 | 组件 | 最低要求 | |--------|------------| | 操作系统 | Windows 10/11, Ubuntu Linux, Kali Linux | | 内存 | 推荐 8 GB | | 存储 | 20 GB 可用空间 | | 处理器 | Intel i5 或更高 | | 网络 | OSINT 数据收集必需 | # Python 安装 下载并安装 Python: 验证安装: ``` python --version ``` # Anaconda 安装 Anaconda 有助于管理 Python 包和虚拟环境。 下载: - https://www.anaconda.com/download 验证安装: ``` conda --version ``` 创建环境: ``` conda create -n cti python=3.10 conda activate cti ``` # Visual Studio Code 安装 下载 Visual Studio Code: - https://code.visualstudio.com/ 推荐扩展: - Python - Docker - JSON Tools - GitHub Copilot (可选) # Docker 安装 Docker 用于 OpenSearch 部署和容器管理。 下载 Docker: - https://www.docker.com/products/docker-desktop/ 验证安装: ``` docker --version ``` # OpenSearch 安装 创建 Docker 网络: ``` docker network create opensearch-net ``` 运行 OpenSearch 容器: ``` docker run -d \ --name opensearch-node1 \ --network opensearch-net \ -p 9200:9200 \ -p 9600:9600 \ -e "discovery.type=single-node" \ -e "OPENSEARCH_JAVA_OPTS=-Xms512m -Xmx512m" \ -e "DISABLE_SECURITY_PLUGIN=true" \ opensearchproject/opensearch:latest ``` 验证 OpenSearch: ``` curl http://localhost:9200 ``` # OpenSearch Dashboards 安装 运行 OpenSearch Dashboards 容器: ``` docker run -d \ --name opensearch-dashboards \ --network opensearch-net \ -p 5601:5601 \ -e 'OPENSEARCH_HOSTS=["http://opensearch-node1:9200"]' \ opensearchproject/opensearch-dashboards:latest ``` 访问仪表板: - http://localhost:5601 # Git 安装 下载 Git: 验证安装: ``` git --version ``` # 安装项目依赖 ``` pip install -r requirements.txt ``` # 推荐的 Python 库 ``` pandas beautifulsoup4 scrapy requests opensearch-py numpy regex selenium lxml python-dotenv ``` 手动安装: ``` pip install pandas beautifulsoup4 scrapy requests opensearch-py selenium lxml python-dotenv ``` # 运行项目 ``` python main.py ``` # 访问服务 | 服务 | URL | |---------|-----| | OpenSearch | http://localhost:9200 | | OpenSearch Dashboards | http://localhost:5601 |标签:APT活动监控, BeautifulSoup, CVE情报, IOC提取, JSON处理, masscan, MITRE ATT&CK映射, NLP技术, OpenSearch Dashboards, Python, Scrapy, Splunk, Web抓取, 事件报告, 威胁分析, 威胁情报平台, 威胁数据关联, 威胁行为者分析, 字符串匹配, 安全事件响应, 恶意软件情报, 数据索引, 无后门, 网络安全, 自动化侦查工具, 自动化收集, 逆向工具, 隐私保护