Elena6918/Evolution-of-Log-Based-Detection-Rules

GitHub: Elena6918/Evolution-of-Log-Based-Detection-Rules

这是一篇关于公共仓库中日志检测规则演进研究的配套资源库,提供数据分析 pipeline 和预处理好数据集,用于复现论文中关于检测规则随时间推移如何变化的各项分析结果。

Stars: 0 | Forks: 0

# 基于日志的检测规则的演进 本仓库是论文 [**公共仓库中基于日志的检测规则的演进**](https://arxiv.org/abs/2605.05383) 的配套资源。其中包含分析笔记本、准备好的数据集,以及用于提取规则演进语料库的数据准备 pipeline。 ## 交互式演示 *(开发中)* 我们正在构建一个公开的交互式工具,用于探索规则演进数据——任何人都可以通过该工具按名称搜索检测规则、查看其修订时间线,并并排比较任意两个版本。该演示托管在 [elena6918.github.io/rule-explorer](https://elena6918.github.io/rule-explorer/),目前正在积极开发中。随着工作的推进,其功能和数据覆盖范围将会不断扩大。 最简单的开始方式是使用 Google Drive 上共享的准备好的数据。按照此路径,您可以立即重现论文中报告的结果,并在接触完整的 pipeline 之前,为您理解数据格式提供一个具体的起点。 ## 快速开始 ### 1. 创建 Python 环境 ``` python -m venv venv source venv/bin/activate pip install -r requirements.txt ``` ### 2. 下载准备好的数据 准备好的 pipeline 输出托管在 Google Drive 上: **[https://drive.google.com/drive/folders/1jdDMVvuRV3cT0WwRK91-R-AHfpUxXvzU?usp=sharing](https://drive.google.com/drive/folders/1jdDMVvuRV3cT0WwRK91-R-AHfpUxXvzU?usp=sharing)** 下载这些文件夹并将它们放置在 `data_prep/` 目录下: | Google Drive 文件夹 | 本地路径 | |---|---| | `build_data/` | `data_prep/build_data/` | | `ir_data/` | `data_prep/ir_data/` | | `align_data/` | `data_prep/align_data/` | | `llm_data/` | `data_prep/llm_data/` | 这是推荐的设置路径。 - 这是重现论文中报告结果的最快方法。 - 它有助于您直接检查数据集和中间格式。 ## 重现论文结果 所有报告的图表和表格都可以通过 `analysis/scripts/` 中的笔记本进行重现。放置好下载的四个数据文件夹后,无需重新构建数据 pipeline 即可直接运行这些笔记本。 | 笔记本 | 论文输出内容 | |---|---| | `dataset.ipynb` | 表 1 — 数据集概览 | | `temporal.ipynb` | 图 2、图 3、表 2 — 时间趋势与队列 | | `structural.ipynb` | 图 4、图 5、表 4、表 5 — 结构性规则变更 | | `llm.ipynb` | 表 7、表 8、表 9 — 基于LLM的意图分析与验证 | ## 理解数据 准备好的数据目录对应于 pipeline 的各个连续阶段: | 目录 | 包含内容 | |---|---| | `data_prep/build_data/` | 规则谱系构建输出和带版本的规则记录 | | `data_prep/ir_data/` | 解析后的规则表示和谓词图IR | | `data_prep/align_data/` | 成对规则对齐和轨迹摘要 | | `data_prep/llm_data/` | Prompt 输入和收集到的 LLM 标注输出 | 对于大多数读者来说,从这些准备好的输出开始是了解数据布局和研究设计的最佳方式。 ## 从规则仓库快照生成您自己的分析 如果您想从上游规则仓库的快照自行重新生成数据集,请参阅相应 pipeline 文件夹中的 README: - [data_prep/build_src/README.md](/Users/elena/Desktop/Evolution-of-Log-Based-Detection-Rules/data_prep/build_src/README.md) - [data_prep/ir_src/README.md](/Users/elena/Desktop/Evolution-of-Log-Based-Detection-Rules/data_prep/ir_src/README.md) - [data_prep/align_src/README.md](/Users/elena/Desktop/Evolution-of-Log-Based-Detection-Rules/data_prep/align_src/README.md) - [data_prep/llm_src/README.md](/Users/elena/Desktop/Evolution-of-Log-Based-Detection-Rules/data_prep/llm_src/README.md) 这些指南详细介绍了如何重新构建 pipeline 阶段、如何使用仓库快照,以及如何生成新的派生输出。 ## 注意事项 - `llm_data/` 应被视为用于复现的提供数据;重新运行 LLM 标注可能不会产生完全相同的输出。 - 仓库的结构设计使得新手可以先从准备好的数据开始,然后只有在需要生成新分析时才进入 pipeline。
标签:AMSI绕过, C2, NoSQL, Python, TruffleHog, 代码分析, 公开仓库, 凭证管理, 威胁检测, 学术论文, 安全运营, 扫描框架, 搜索引擎优化, 攻击分析, 数据管道, 文本对齐, 无后门, 检测规则, 版本对比, 网络安全, 网络安全研究, 网络资产发现, 规则演化, 软件工程, 逆向工具, 配套代码, 隐私保护