nikhildesilva-squareai/square1-starter-cyber-10-ir-simulator
GitHub: nikhildesilva-squareai/square1-starter-cyber-10-ir-simulator
一个基于合成日志数据的离线事件响应练习项目,帮助初学者通过测试驱动开发掌握安全事件分析与报告撰写能力。
Stars: 0 | Forks: 0
# 事件响应模拟器 — Square 1 AI 入门模板
**[Square 1 AI](https://square1-tutor.vercel.app) · 网络安全 · 项目 10 的一部分。**
✅ **已包含数据。** 数据集已提交到 [`dataset/`](dataset/) 中,并且是**每位学习者使用的相同标准化数据集** —— 因此结果具有可比性。它是 100% 合成的且归 Square 1 所有(不包含第三方或个人数据)。你也可以从 Square 1 的项目页面将其作为单个文件下载。
🛡️ **防御性与自包含。** 核心任务在离线状态下使用包含的合成数据(或 `127.0.0.1` 上的捆绑本地应用)运行 —— 无需真实目标、云或网络,并且**不提供答案参考**。所有技术仅用于**对所提供材料的授权测试**。所提到的大型工具是一个**进阶目标**。
MIT 许可证 —— 尽情 fork、二次开发,并将其加入你的个人作品集。
# 事件响应模拟器 — 入门模板
Square 1 AI **网络安全 · 项目 10** 的入门模板。从分散的遥测数据中重构一次合成入侵,恢复 IOC 和攻击者的时间线,并撰写可供领导层采取行动的事件报告。
## 设置
```
python -m venv .venv && source .venv/bin/activate # Windows: .venv\Scripts\activate
pip install -r requirements.txt
```
## 数据说明
数据位于 `dataset/` 目录中:包含五个相关联的日志 —— `auth.log`、`access.log`、`process.log`、`network.log`、`file.log` —— 其中记录了一次与正常流量基线交织的入侵事件,以及 `ground_truth.json`(供你自我评分的答案参考)。它是**合成的、归 Square 1 所有、免费的**。详见 `dataset/data_dictionary.md`。在项目根目录下运行 `python generate_dataset.py` 即可生成(依赖 numpy + 标准库,随机种子为 42)。
## 你的任务
三个测试定义了契约 —— 在你实现 `irkit/core.py` 中的桩代码之前,它们将会失败:
```
pytest -q
```
- `test_load_artifacts` — 将来自多个数据源的原始行解析为一个标准化的事件流。
- `test_extract_iocs` — 恢复攻击者 IP(即那个*最终成功*的暴力破解者 —— **而不是**从未成功的噪音机器人)、被攻陷的账户、恶意进程以及数据外发(exfiltration)目标。
- `test_build_timeline` — 将事件串联成有序的杀伤链(初始访问 → … → 数据外发)。
然后端到端运行 pipeline:
```
python cli.py # analyse dataset/ and reconcile against ground_truth.json
```
1. **摄取 (Ingest)** 将所有五个日志合并为一个事件流。
2. **提取 IOC** 通过关联分析,排除噪音机器人和合法管理员。
3. **重构**四阶段时间线,映射到 NIST 800-61 / SANS PICERL 和 MITRE ATT&CK。
4. **报告** — 编写 `INCIDENT_REPORT.md`:包含执行摘要、时间线、IOC 表格以及遏制/根除/恢复措施,然后说明你恢复了多少 IOC 和阶段(与标准答案相比)。
完整的任务说明、评分标准和参考资料位于你的 Square 1 项目页面。MIT 许可证。
标签:AMSI绕过, PKI安全, Python, 威胁检测, 安全数据分析, 安全规则引擎, 库, 应急响应, 教育培训, 无后门, 网络安全, 逆向工具, 隐私保护