clivoa/S33R

GitHub: clivoa/S33R

一个完全无服务器化的网络安全新闻聚合与分析平台,基于GitHub基础设施自动采集、分类、归档威胁情报并生成趋势分析。

Stars: 1 | Forks: 1

# S33R 安全新闻源 [![Update News JSON](https://static.pigsec.cn/wp-content/uploads/repos/2026/03/e53c4bca32154716.svg)](https://github.com/clivoa/S33R/actions/workflows/update_news_json.yml) [![Build News Archive](https://static.pigsec.cn/wp-content/uploads/repos/2026/03/79ebcf3a87154717.svg)](https://github.com/clivoa/S33R/actions/workflows/build_news_archive.yml) [![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg)](LICENSE) ![Python](https://img.shields.io/badge/Python-3.11%2B-brightgreen) 一个完全自动化、对开源友好的**网络安全新闻聚合、标准化、归档和分析平台**,旨在完全在 **GitHub Pages** + **GitHub Actions** 上运行,无需服务器或数据库。 S33R 从数百个 RSS 源收集内容,使用 Smart Groups 对其进行分类,构建趋势分析,生成历史归档,并为分析师、研究人员和 OSINT 从业者提供多个前端仪表板。 ## 📌 概述 S33R 提供: - 由预构建 JSON 缓存支持的快速、可过滤的**新闻看板 (News Board)** - 用于高信噪比分组的 **Smart Group 分类** - **精选情报标记** - **趋势分析**(关键词、供应商、行为者时间线、CVE、日产量) - **历史归档引擎**(月度 + 年度 JSON) - **信号过滤的月度包** - 可选的**自动简报生成**(LLM 无关) - 100% 兼容 GitHub Pages 的静态部署 该系统的目标用户: - 网络安全分析师 - 威胁情报团队 - 研究人员和教育工作者 - OSINT 从业者 - 社区威胁监控项目 ## 🏗 架构概览 ``` RSS Feeds → Python ETL → JSON Datasets → GitHub Pages → Dashboards (HTML/JS) ``` ### 组件 - Python 数据摄取与数据处理 - GitHub Actions(自动化与调度) - `data/` 下的静态 JSON 数据集 - 使用 HTML + JavaScript + Canvas 构建的仪表板 所有功能均在无服务器或数据库的情况下交付。 ## 🔁 数据流 ``` sec_feeds.xml ↓ build_news_json.py ↓ data/news_recent.json ↓ index.html dashboard ↓ build_news_archive.py → monthly/yearly archive + signal-filtered packs ↓ build_trends_json.py → data/trends.json ↓ trend.html analytics dashboard ``` 可选: ``` curated items → build_morning_call.py → morning_call JSON → morning.html ``` ## 高层架构 ``` flowchart LR A[RSS Feeds] --> B[build_news_json.py] B --> C[data/news_recent.json] C --> D[index.html Dashboard] C --> E[build_news_archive.py] E --> F[data/archive/monthly & yearly] C --> G[build_trends_json.py] G --> H[data/trends.json] H --> I[trend.html Dashboard] C --> J[Optional: build_morning_call.py] J --> K[data/morning_call_latest.json] K --> L[morning.html] ``` ## ETL 流水线概览 ``` sequenceDiagram participant FEEDS as RSS Feeds participant INGEST as build_news_json.py participant RECENT as news_recent.json participant ARCH as build_news_archive.py participant TRENDS as build_trends_json.py FEEDS->>INGEST: Fetch + normalize entries INGEST->>RECENT: Write JSON (smart groups, curated) RECENT->>ARCH: Merge into monthly/yearly archives RECENT->>TRENDS: Compute trends (keywords, CVEs, actors) ``` ## 前端渲染流程 ``` flowchart TD A[index.html] --> B[Fetch news_recent.json] B --> C[Render smart groups] C --> D[Infinite scroll + filters] E[trend.html] --> F[Fetch trends.json] F --> G[Render charts - ChartJS] ``` ## 📦 JSON 输出 ### 🔹 `data/news_recent.json` 包含经过增强的标准化条目: - 元数据 (`generated_at`, `days_back`, `total_items`) - smart groups - curated 标记 ### 🔹 `data/archive/*` - 月度和年度 JSON 归档 - 信号过滤的月度包 ### 🔹 `data/trends.json` 保存以下数据: - 日产量 - smart group 分布 - 热门关键词 - 供应商活动 - CVE 出现情况 - 威胁行为者时间线 ## 🧠 Smart Groups 分类引擎 在摄取时应用的关键词驱动分组: - 勒索软件 - CVE / 漏洞 - 漏洞利用 / PoC - 威胁行为者 - 云安全 - 特定供应商类别 (Microsoft, Cisco, Palo Alto, CrowdStrike…) - Crypto / Web3 - 恶意软件家族 - 供应链 / 软件组件 - 初始访问技术 这些类别同时支持新闻看板和趋势分析。 ## 🎯 精选情报层 S33R 包含一个启发式系统,当条目匹配高信号模式时将其标记为 **curated**(精选): - 0-day 漏洞 - 在野利用 - 勒索软件组织公告 - 供应链入侵 - 大规模网络攻击 - 云/SaaS 泄露报告 精选条目可选择由自动简报生成器使用。 ## 📊 趋势分析 (trend.html) 由 `scripts/build_trends_json.py` 生成的趋势分析包括: - 每日新闻量时间线 - 每个时间窗口的热门类别 (smart groups) - 热门关键词(经过停用词过滤) - 供应商活动 - 热门安全术语 - CVE 出现排名 - 威胁行为者每日时间线 支持的时间窗口: - 过去 24 小时 - 过去 7 天 - 过去 30 天 - 过去 90 天 切换窗口时,仪表板会动态更新图表。 ## 🖥 仪表板 ### 📰 `index.html` - 实时搜索(随打随搜) - Smart group 和类别过滤器 - 无限滚动 - 显示生成元数据 ### 📚 `archive.html` - 浏览月度和年度归档 - 搜索历史数据 - 按来源对条目分组 ### 📈 `trend.html` - Chart.js 可视化 - 时间窗口选择器 - 对供应商、行为者、CVE、关键词的洞察 ### ☀️ `morning.html`(可选) 展示由用户选择的 LLM 生成的可选每日简报。 默认不需要 AI 提供商。 ## 🤖 可选:自动早报(LLM 无关) S33R 支持一个可选模块,用于生成**网络安全每日简报**。 - 默认禁用 - 适用于**任何** LLM 提供商(OpenAI, Anthropic, Gemini, 本地模型等) - 开发者定义角色、结构、语气和摘要规则 - 对研究、通讯或自动报告工作流友好 输出: ``` data/morning_call_latest.json data/archive/morning_call_YYYY-MM-DD.json data/archive/morning_call///morning_call_YYYY-MM-DD.json ``` 示例工作流使用如下环境变量: ``` # 可选 # LLM_API_KEY: ${{ secrets.LLM_API_KEY }} # LLM_MODEL: "provider/model-name" ``` ## ⚙ GitHub Actions 自动化 ### `update_news_json.yml`(每小时) - 构建 `news_recent.json` - 创建信号过滤的 promo 片段 ### `build_news_archive.yml`(每日) - 更新月度和年度归档 - 合并信号过滤的包 - 重建 `trends.json` ### `morning_call.yml`(可选) - 如果已配置,运行基于 LLM 的 SOC 早报 所有工作流均使用标准 GitHub Actions 运行器运行。 ## 📁 项目结构 ``` S33R/ │ ├── index.html ├── archive.html ├── archive-overview.html ├── trend.html ├── morning.html # Optional morning call UI ├── _config.yml ├── _config.local.yml # Local-only override (not for production) ├── Gemfile ├── Gemfile.lock │ ├── styles.css ├── ui.js │ ├── data/ │ ├── news_recent.json │ ├── trends.json │ ├── morning_call_latest.json │ └── archive/ │ ├── yearly/ │ ├── monthly/ │ ├── morning_call/ │ └── promo/ │ └── monthly/ │ ├── scripts/ │ ├── build_news_json.py │ ├── build_news_archive.py │ ├── build_trends_json.py │ └── build_morning_call.py # Optional LLM SOC brief │ ├── sec_feeds.xml │ └── .github/ └── workflows/ ├── update_news_json.yml ├── build_news_archive.yml └── morning_call.yml # Optional ``` ## 🧪 本地开发 克隆: ``` git clone https://github.com/clivoa/S33R.git cd S33R ``` 手动运行流水线: ``` python scripts/build_news_json.py python scripts/build_news_archive.py python scripts/build_trends_json.py # 可选: # python scripts/build_morning_call.py ``` 安装 Jekyll 依赖: ``` bundle install ``` 使用 Jekyll 本地服务(处理如 `{{ ... | relative_url }}` 等 Liquid 标签所需): ``` bundle exec jekyll serve --config _config.yml,_config.local.yml ``` 打开: ``` http://127.0.0.1:4000/ ``` 注意: - 请勿对此项目根目录使用 `python -m http.server`,因为它无法渲染 Jekyll/Liquid 模板。 - `_site/` 仅为构建输出,不应被提交。 ## 🧠 示例用例 - OSINT 监控 - 网络安全研究 - CVE/漏洞利用追踪 - 供应商公告分析 - 社区威胁仪表板 - 自动通讯 - 历史数据集构建 ## 🛣 路线图 - 基于 ML 的源质量评分 - 自动主题聚类 - 行为者/CVE 关联热力图 - 书签和已保存过滤器 - 多租户源配置 - 可导出快照 (PDF/MD) ## 📜 许可证 MIT — 可免费用于个人、商业或研究用途。 **S33R — 开放网络威胁情报,自动化且触手可及。**
标签:ESC4, ETL, GitHub Actions, Github Pages, HTTP/HTTPS抓包, JavaCC, OSINT, Python, RSS订阅, 代码示例, 信息聚合, 后端开发, 后端开发, 后端开发, 多模态安全, 威胁情报, 安全运营, 开发者工具, 态势感知, 情报收集, 扫描框架, 数据分析, 数据可视化, 新闻聚合, 无后门, 漏洞研究, 网络安全, 网络调试, 自动化, 自动笔记, 逆向工具, 隐私保护, 静态网站