ariyaadinatha/counter-ttp
GitHub: ariyaadinatha/counter-ttp
一个威胁知情防御平台,通过将攻击者行为映射到 D3FEND 防御对策,将威胁情报转化为可优先执行的检测、预防和缓解策略。
Stars: 0 | Forks: 0
# ttp-counter:将攻击者技术转化为防御行动
ttp-counter 是一个基于威胁情报的防御平台,它通过将攻击者行为深度映射到防御对策,将现实世界的威胁情报转化为优先级的检测、预防和缓解措施。
它专注于如何对抗 TTPs,而不仅仅是编目它们。
## 🛡️ 问题所在
威胁情报无处不在,但可操作的防御却并非如此。大多数工具仅停留在列出威胁行为者、标记 ATT&CK 技术和展示仪表板上。防御者仍然需要弄清楚该构建什么。
ttp-counter 的存在是为了回答一个问题:**“鉴于攻击者目前正在做的事情,我们接下来应该检测、预防或缓解什么?”**
## ⚙️ 工作原理
1. **观察到的攻击者行为**:从报告和新闻中摄取情报。
2. **ATT&CK 映射**:识别所使用的特定技术。
3. **D3FEND 对策**:将技术映射到特定的防御行动。
4. **运营结果**:生成可操作的检测、预防和缓解策略。
## 💎 是什么让 ttp-counter 与众不同?
- **威胁情报 → 防御,而非仪表板**:每一项技术的存在都是为了推动要构建的检测、要实施的控制或要准备的缓解措施。
- **专为防御者构建**:为检测工程师、SOC 分析师、威胁情报团队和安全架构师设计。
- **以运营为中心**:如果它不能被运营化,它就不属于这里。
## 🚀 核心能力
- **防御指导**:针对每种技术的检测、预防和缓解指导。
- **上下文 TTP 热力图**:按国家、部门进行过滤,并随时间推移跟踪技术。
- **工程级输出**:所需的遥测数据和示例检测逻辑。
## 🧠 理念
1. 威胁情报只有在能改善防御时才有价值。
2. 更少的高质量检测胜过嘈杂的覆盖率。
3. 证据比归因更重要。
4. 仅有检测是不够的。
## 🚀 技术栈
- **前端**:React 19, TypeScript, Tailwind CSS
- **动画**:Motion (framer-motion)
- **图标**:Lucide React
- **情报数据**:通过自定义情报服务集成 MITRE ATT&CK®。
## 🛠️ 入门指南
### 前置条件
- Node.js (v18 或更高版本)
- npm 或 yarn
### 安装
1. 克隆仓库
2. 安装依赖:
npm install
3. 启动开发服务器:
npm run dev
### Docker
```
docker compose up --build
```
构建应用程序(包括运行时数据包),并使用 nginx 将其部署在
[http://localhost:3000](http://localhost:3000)。
**生产环境**:`VITE_` 变量在镜像构建时被固化到包中
(`.env` 文件本身被 dockerignored),因此请将 Intel-Hub endpoint 作为
构建参数传递 —— docker compose 会从 `./.env` 或 shell
环境中插入它:
```
VITE_TIFEED_URL=https://intel.example.com docker compose up --build
```
该 URL 必须能从**访问者的浏览器**中访问(请求
源自客户端),因此请使用公开的 Intel-Hub URL —— 切勿使用 `localhost` 或
容器网络主机名。更改 URL 需要重新构建镜像
(或者,按浏览器使用 `tifeed_url` localStorage 覆盖)。如果站点
通过 HTTPS 提供服务,Intel-Hub 也必须如此,否则浏览器将因
混合内容而阻止请求。
### 开发
- `npm run dev` / `npm run build` — 两者都首先重新生成 `public/data/`(通过 `npm run data`),该过程从 `src/data/` 中组装运行时数据包。
- `npm run lint` — ESLint + TypeScript 检查。
- `npm test` — Vitest 单元测试。
- 刷新底层 MITRE ATT&CK 数据的方法记录在 [utility/README.md](utility/README.md) 中。
## 📡 通过 ti-feed 获取实时情报(可选)
ttp-counter 可以从其附属
项目 [ti-feed / Intel-Hub](../ti-feed) 叠加**实时威胁情报** —— 这是一个 RSS 聚合器,用于标记每篇
安全新闻文章及其报道的 MITRE ATT&CK 技术和威胁行为者。当 ti-feed 可达时,有三件事会被激活:
- **矩阵 → “Live Intel 30d” 开关** — 根据过去 30 天内新闻中报道每项技术的
频率来为 ATT&CK 矩阵加热,而不是
使用静态的行为者画像。
- **技术详情 → “Recent News Sightings”** — 报道了该技术的文章(过去 90 天),
并附带了提及的行为者。
- **行为者 → “Recent News Activity”** — 在近期新闻中提及的行为者将获得
`ACTIVE` 徽章;详情视图显示了他们的最新报道以及随之报道的 TTPs。不属于该行为者静态 ATT&CK
画像中的技术将被标记为 `new` —— 可能是值得优先考虑的最新技术手法。
- **行为者 → “Live Intel 30d” 开关** — 将行为者列表缩小至过去 30 天内在安全新闻中被提及的
行为者,按提及次数排名,
并在每张卡片上显示计数。
- **行为者 → 仅 Intel-Hub 的行为者** — 在新闻中提及且与任何
静态 MITRE 画像(通过名称或别名)不匹配的行为者将出现在行为者列表中,并带有
`NEW` 徽章。他们的技术、目标部门和国家来自
Gemini 对提及他们的文章的标记,并且 **Source
References** 部分列出了提取该画像的每一篇文章 —
这些线索供您与原始报道进行核对,而不是一个经过策划的画像。
- **行为者 → 追加的实时情报** — 对于*确实*拥有静态
画像的行为者,近期新闻中报道但 MITRE
数据中缺失的部门和国家将作为琥珀色的 `news` 标签追加到画像部分,因此
实时情报绝不会与策划数据无声地混合。
- **技术详情 → “Real-world Context”** — 除了经过策划的
示例之外,该技术的近期新闻目击事件(通过
Intel-Hub 由 Gemini 提取)将作为带有文章链接和报道的
行为者的实时上下文条目出现。
Intel-Hub (ti-feed) endpoint 在 `.env` 中配置(复制
`.env.example`):`VITE_TIFEED_URL=http://localhost:8000`。它也可以在
运行时通过
浏览器控制台中的 `localStorage.setItem('tifeed_url', 'http://host:port')` 来
覆盖。如果 Intel-Hub 宕机,所有实时情报 UI 都将直接隐藏 — 应用程序将像以前一样
完全离线工作。
### 内部分析
匿名使用计数器(视图更改、技术/行为者打开、搜索和
实时情报使用情况 — 仅限事件名称 + 值,没有 cookie,没有用户 ID,没有第三方)将被发送到自托管的收集器:默认为 ti-feed 的
`/api/analytics/beacon`,可在其 **Stats** 标签页中查看。使用
`VITE_ANALYTICS_URL`(完整的 beacon URL,或 `off` 以禁用)或在
运行时通过 `localStorage.setItem('analytics_url', '…' /* 或 'off' */)` 进行配置。
当没有可达的收集器时,Beacon 将静默失败。
应用程序还会记录回**它合并了哪些实时情报**(`intel_actor_added`、
`intel_sector_added`、`intel_country_added`、`intel_ttp_new`、
`intel_context_added` — 每个浏览器会话针对每个事实记录一次),显示在
Intel-Hub 的 Stats 标签页下的 *"Intel added to counter-ttp"* 中,以便 feed 端
可以审计其数据贡献了什么。
## 📖 用法
1. **搜索**:按 `⌘K` / `Ctrl+K`(或点击导航栏中的 Search),通过 ID、名称或别名(例如,“T1566”、“Phishing”、“Cozy Bear”)查找任何技术或威胁行为者。
2. **分析**:点击某项技术以查看带有具体实施步骤的“Defensive Matrix”。
3. **情报**:导航到“Actors”标签页以研究特定组织,并点击“View Heatmap”查看他们的足迹。
4. **策略**:使用带有多个过滤器的“Matrix”标签页,以识别您所在行业领域内的常见 TTPs,从而优先制定您的防御路线图。
## 📜 许可证与归属
ttp-counter 是基于 **MIT License** 的开源项目(参见 `LICENSE`)。
MITRE ATT&CK® 内容版权归 The MITRE Corporation 所有,其使用遵循
[ATT&CK Terms of Use](https://attack.mitre.org/resources/legal-and-branding/terms-of-use/);
MITRE ATT&CK® 和 ATT&CK® 是 The MITRE Corporation 的注册商标。
本项目未受 MITRE 附属、赞助或认可。
实时情报标题和摘要仍归其发布者所有,并
始终链接回原始文章。
*注意:本系统专为防御性安全专业人员和研究人员设计。在执行安全评估之前,请务必确保您已获得适当的授权。*
标签:D3FEND, MITM代理, 威胁情报, 安全运营, 开发者工具, 扫描框架, 暗色界面, 自动化攻击, 请求拦截, 防御平台