osint-radar
收藏资源简介:
osint-radar 是一个专注于网络威胁情报(CTI)的数据集,由三个公开、仅广播的Telegram频道(ctinow、cveNotify、thehackernews)中的真实消息构成。所有频道均为管理员发布模式,无讨论组或用户评论,因此每条消息均为经过筛选的警报或报告。数据集包含超过14,295条消息,时间跨度从2025年1月到2026年8月,使用Telethon收集并存储在MySQL中后导出。每条消息包含15个字段:主键id、Telegram消息ID、频道名称、类别(始终为cti_alerts)、完整文本、UTC时间戳、阅读量、CVE标识符列表(JSON编码)、哈希值列表(MD5/SHA1/SHA256,JSON编码)、URL列表(JSON编码)、转发来源ID、转发时间、回复目标ID、处理状态(是否已嵌入和聚类)以及预计算的768维句子嵌入向量(使用sentence-transformers/all-mpnet-base-v2模型)。数据以Parquet分片格式存储,并附带EDA笔记本和嵌入比较/聚类评估笔记本。该数据集适用于文本分类、特征提取、OSINT分析、网络安全威胁检测、消息聚类和嵌入模型比较等任务。许可协议为CC BY-NC 4.0,仅允许学术用途,禁止商业使用。
osint-radar is a dataset focused on cyber threat intelligence (CTI), consisting of real messages from three public, broadcast-only Telegram channels (ctinow, cveNotify, thehackernews). All channels are in admin-posting mode, with no discussion groups or user comments, so each message is a curated alert or report. The dataset contains over 14,295 messages spanning from January 2025 to August 2026, collected using Telethon and stored in MySQL before export. Each message includes 15 fields: primary key id, Telegram message id, channel name, category (always cti_alerts), full text, UTC timestamp, view count, list of CVE identifiers (JSON-encoded), list of hash values (MD5/SHA1/SHA256, JSON-encoded), list of URLs (JSON-encoded), forward source id, forward time, reply target id, processing status (whether embedded and clustered), and a precomputed 768-dimensional sentence embedding vector (using the sentence-transformers/all-mpnet-base-v2 model). Data is stored in Parquet shard format, accompanied by EDA notebooks and embedding comparison/clustering evaluation notebooks. The dataset is suitable for tasks such as text classification, feature extraction, OSINT analysis, cybersecurity threat detection, message clustering, and embedding model comparison. The license is CC BY-NC 4.0, allowing only academic use and prohibiting commercial use.
数据集概述
osint-radar 是一个面向网络威胁情报(CTI)领域的英文文本数据集,包含从三个公开的、仅广播性质的 Telegram 频道中收集的真实消息。该数据集共包含 14,295+ 条消息,时间跨度从 2025 年 1 月到 2026 年 8 月,所有消息均归属于单一类别 cti_alerts。
数据来源
| 频道 | 侧重点 |
|---|---|
| ctinow | 混合 CTI 警报和 IOC 报告 |
| cveNotify | 结构化 CVE 通知 |
| thehackernews | 安全新闻和分析 |
所有频道均为管理员专用(无讨论组、无用户评论),每条消息都是经过策划的警报或报告,而非社区噪音。
数据文件
| 文件 | 描述 |
|---|---|
data/ |
Parquet 分片 — 主要数据集(可通过数据查看器浏览) |
notebooks/01_eda.ipynb |
完整 EDA 笔记本 |
notebooks/02_embedding_comparison.ipynb |
三模型嵌入比较 |
notebooks/03_clustering_eval.ipynb |
HDBSCAN 聚类 + FAISS 评估 |
字段说明
| 字段 | 类型 | 描述 |
|---|---|---|
id |
int | 主键(MySQL 自增) |
telegram_id |
int | 频道内的 Telegram 消息 ID |
channel |
str | 频道用户名(ctinow、cveNotify、thehackernews) |
category |
str | 监控类别(本数据集中始终为 cti_alerts) |
text |
str | 从 Telegram 收到的完整消息文本 |
timestamp |
datetime | 原始 Telegram 消息的 UTC 时间戳 |
views |
int | 采集时的观看次数(时间点快照) |
cves |
str | 从 text 中提取的 CVE 标识符列表(JSON 编码) |
hashes |
str | 从 text 中提取的 MD5/SHA1/SHA256 哈希列表(JSON 编码) |
urls |
str | 从 text 中提取的 HTTP/HTTPS URL 列表(JSON 编码) |
fwd_from_id |
int 或 null | 若消息被转发,则为原始频道的 Telegram ID |
fwd_date |
datetime 或 null | 原始转发消息的 UTC 时间戳 |
reply_to_id |
int 或 null | 此消息回复的 Telegram 消息 ID |
processed |
bool | 消息是否已在下游完成嵌入和聚类 |
embedding |
list[float] | 此消息的 768 维句子嵌入(见下文) |
EDA 要点
发布频率差异明显: ctinow 以中等速度发帖;thehackernews 每天发布几篇文章;cveNotify 在 CVE 披露期间以高频率发帖。
文本长度因频道而异: ctinow 简短(平均约 94 字符);cveNotify 较长(约 631 字符,包含结构化 CVE 元数据);thehackernews 介于两者之间(约 354 字符),但差异较大。
实体覆盖与频道定位匹配: cveNotify 的 CVE 覆盖近乎完整;thehackernews 的 URL 覆盖近乎完整;ctinow 为混合型。
跨频道 CVE 重叠有限: 由于 cveNotify 的收集窗口仅为约 4 天,只有在该时间段内报告的 CVE 才会出现在多个频道中。这种重叠是下游摘要生成的最强信号。
数据质量可靠: 所有频道均为已验证的仅广播频道;在数据库层面强制执行去重;所有行的实体提取均已完成。
嵌入信息
每一行的 embedding 列包含预计算的 sentence-transformers/all-mpnet-base-v2 向量(768 个浮点数),无需单独的索引文件或对齐步骤。该模型是在 notebooks/02_embedding_comparison.ipynb 中,基于同 CVE 代理差距指标对三个候选模型进行比较后选出的。模型本身不包含在数据集中,需从其 HF 仓库直接加载。导出时尚未嵌入的消息,其 embedding 列为 null。
许可与伦理
内容来源于公开的、仅广播性质的 Telegram 频道,仅为学术课程(OSINT-radar 课程项目)而收集。数据集中不包含任何私人消息、讨论线程或用户生成的评论。禁止将此数据集用于商业目的。




