stacihanim/cyber-threat-intelligence-nlp

GitHub: stacihanim/cyber-threat-intelligence-nlp

基于DistilBERT的威胁情报文本自动分类与可视化工具,能从语义层面理解安全报告并识别人工标注错误。

Stars: 0 | Forks: 0

# 网络威胁情报分析 (NLP & BERT) ## 项目概述 本项目应用 **人工智能 (AI)** 来分析和理解网络安全威胁报告。 该项目不仅依赖于关键词匹配,还使用 **BERT 语言模型** 来理解威胁描述背后的 **语境和含义**。 这种方法有助于安全团队 **更准确地检测、分类和响应网络威胁**。 ## 主要功能 ### 可视化威胁对比 生成词云 (Word Clouds) 以可视化不同攻击类型之间的语言差异。 - **电子邮件攻击** 通常包含与社会工程学相关的词汇,例如: *phishing, email, link, account* - **网络攻击** 更多侧重于技术术语,例如: *exploit, vulnerability, traffic, protocol* ### AI 自动分类 使用 **DistilBERT**,系统可以阅读描述网络威胁的句子并自动确定 **攻击类型**,即使未明确提供类别。 ### 质量控制 AI 模型充当 **第二验证层**,可以在分析师审查之前,检测手动标记的网络安全数据集中的不一致或错误。 ## 使用的工具 - **Python** – 主要编程语言 - **Pandas** – 数据分析和表格管理 - **Matplotlib** – 数据可视化和图表 - **WordCloud** – 常见威胁相关词汇的可视化 - **Hugging Face Transformers** – 运行和测试 BERT AI 模型 - **PyTorch** – Transformers 使用的后端框架 ## 流程原理 ### 1. 数据准备 加载并准备了一个包含 **1,100 份网络安全威胁报告** 的数据集以供分析。 ### 2. 探索 分析了常见的词汇和模式,以了解攻击者如何描述其活动。 ### 3. AI 测试 使用数据集中的选定行来测试 AI 模型是否可以仅根据文本描述正确识别 **网络攻击类型**。 ### 4. 验证 将模型的预测结果与 **官方数据集标签** 进行比较,以评估准确性。 ## 重要发现 在测试过程中,发现了一个 **数据异常**。 示例: - **数据集标签:** `DDoS` - **AI 预测:** `Phishing` - **置信度:** **99%+** 文本示例: AI 正确识别出该描述明显指的是 **phishing**,而不是 **DDoS 攻击**。 这证明了 **AI 可以帮助检测和纠正网络安全数据集中的人工标记错误**。 ## 未来研究目标 计划的改进和研究方向: ### 命名实体识别 (NER) 训练模型以自动提取: - 威胁行为者名称 - 恶意软件家族 - 攻击中使用的工具 ### IOC 研究 (失陷指标/威胁指标) 识别技术指标,例如: - IP 地址 - 文件哈希 - 恶意 URL - 域名 ### 行为威胁分析 分析攻击者的 **战术、技术和程序 (TTPs)**,以更好地理解和预测未来的攻击模式。 ## 安装 安装所需的 Python 库: ``` pip install transformers torch pandas matplotlib wordcloud ```
标签:AI, AMSI绕过, Apex, BERT, DistilBERT, ESC8, Hugging Face, Matplotlib, NLP, Python, PyTorch, SOC工具, 人工智能, 凭据扫描, 威胁检测, 攻击识别, 数据清洗, 文本分类, 无后门, 机器学习, 深度学习, 漏洞发现, 用户模式Hook绕过, 社会工程学, 网络威胁情报, 网络安全, 自动化代码审查, 词云, 逆向工具, 隐私保护