muchdogesec/obstracts
GitHub: muchdogesec/obstracts
将安全博客的 RSS/ATOM 订阅源自动转换为结构化 STIX 威胁情报并提取 IOC 指标。
Stars: 53 | Forks: 3
# Obstracts
[](https://codecov.io/gh/muchdogesec/obstracts)
## 开始之前...

我们提供完全托管的 Obstracts Web 版本,该版本包含比此代码库中更多的额外功能。[您可以在此处了解更多关于 Web 版本的信息](https://www.obstracts.com/)。
## 概述

Obstracts 接收博客 ATOM 或 RSS 源,并将其转换为结构化的威胁情报。
组织订阅大量博客以获取安全信息。这些博客包含有趣的恶意活动指标(例如恶意 URL)。
为了帮助自动化提取这些信息,Obstracts 自动下载博客文章并提取指标以供用户查看。
其高级工作流程如下:
1. 用户向 Obstracts 添加源(选择要使用的配置文件)
2. Obstracts 使用 history4feed 作为微服务来处理帖子的下载和存储。
3. history4feed 为每篇博客帖子提供的 HTML 使用 file2txt 在 `html` 模式下转换为 markdown
4. markdown 通过 txt2stix 运行,其中 txt2stix 模式提取/白名单/别名根据员工定义的配置文件运行
5. 为博客的每篇帖子生成 STIX bundles,并将其存储在名为 `obstracts_database` 的 ArangoDB 数据库以及与博客匹配的 Collections 名称中
6. 用户可以通过 API 访问 bundle 数据或 bundle 中的特定对象
7. 随着新帖子添加到远程博客,用户请求更新博客,这些请求由 history4feed 处理
## 安装
### 下载并配置
```
# 克隆最新代码
git clone https://github.com/muchdogesec/obstracts
```
### 前置条件
**重要提示**:ArangoDB 和 Postgres 必须正在运行。这些未在 compose 文件中部署。
如果您不确定此处该如何操作,[请按照此处的基本设置步骤操作](https://community.dogesec.com/t/best-way-to-create-databases-for-obstracts/153/2)。
### 配置选项
Obstracts 有多种在 `.env` 文件中定义的设置。
要创建该文件的模板:
```
cp .env.example .env
```
要了解有关如何设置这些变量及其作用的更多信息,请阅读 `.env.markdown` 文件。
### 构建 Docker Image
```
sudo docker compose build
```
### 启动服务器
```
sudo docker compose up
```
### 访问服务器
Web 服务器(Django)现在应该运行在:http://127.0.0.1:8001/
您可以在浏览器中访问 API 的 Swagger UI:http://127.0.0.1:8001/api/schema/swagger-ui/
## 实用的辅助工具
* [将任何博客文章转换为结构化威胁情报](https://www.dogesec.com/blog/launching_obstracts_open_source/)
* [发布网络威胁情报研究的威胁情报博客最新列表](https://github.com/muchdogesec/awesome_threat_intel_blogs)
## 支持
[通过 DOGESEC 社区提供有限支持](https://community.dogesec.com/)。
## 许可证
[Apache 2.0](/LICENSE)。
标签:ArangoDB, ATOM源, Cloudflare, CVE分析, ESC4, Markdown转换, MITRE ATT&CK, OpenCTI兼容, OSINT, PostgreSQL, RSS订阅, STIX标准, URL提取, 博客监控, 反编译, 威胁情报, 威胁源管理, 开发者工具, 恶意指标, 情报提取, 数据清洗, 文本处理, 测试用例, 结构化数据, 网络安全, 网络测绘, 请求拦截, 逆向工具, 隐私保护