maxias13/snort-2-to-3-migration

GitHub: maxias13/snort-2-to-3-migration

端到端的 Snort 2 到 Snort 3 规则迁移管道,通过 22 种确定性转换和前后验证实现规则集的安全升级。

Stars: 0 | Forks: 0

# snort_2_to_3_migration 端到端迁移管道:Snort 2 `.rules` → Snort 3 `.rules`,并在两端完成验证。 由两个现有技能组合而成: * [`snort_2_validator`](../snort_2_validator) — Snort 2 预检验证器 * [`snort_3_validator`](../snort_3_validator) — Snort 3 后检验证器 `scripts/migrate.py` 中的迁移引擎复用了 Snort 2 解析器 AST (避免重复解析),并生成规范的 Snort 3 规则,同时确保 sticky buffer 位于 正确位置。 ## 快速开始 ``` SKILL=/Users/kaishin/Downloads/Py/.claude/skills/snort_2_to_3_migration # 1. 迁移单个文件 (输出 → ./snort3_migrated/) python3 $SKILL/scripts/migrate.py /path/to/local.rules # 2. 迁移目录,选择输出位置,JSON 报告 python3 $SKILL/scripts/migrate.py /path/to/rules/ \ --out /Users/kaishin/Downloads/Py/20260505_120000_snort_migration/ \ --format json # 3. HTML 并排 diff 报告 python3 $SKILL/scripts/migrate.py /path/to/local.rules --format html ``` 退出代码:`0` = 迁移成功,`1` = 存在残留的 Snort 3 错误(请查阅 报告),`2` = 调用错误。 ## 转换 ID 22 个确定性转换(M001..M022)。完整表格: [`references/transform_catalogue.md`](references/transform_catalogue.md)。 ## 该技能不会执行的操作 * 不负责将 `snort.conf` 转换为 `snort.lua`(需手动操作)。 * 不会将经典 HTTP 头部规则提升为 Snort 3 服务规则形式 (在没有流量上下文的情况下,端口到服务的推断是不安全的)。 * 不会重写 `byte_test` / `byte_jump`(Snort 3 保留了相同的语法)。 有关完整工作流、安全说明和重写目录,请参阅 [`SKILL.md`](SKILL.md)。
标签:AMSI绕过, AST解析, PB级数据处理, Python, SecOps, Snort 2, Snort 3, Sticky Buffers, 云安全架构, 云计算, 入侵检测系统, 后置验证, 域环境探测, 威胁检测, 安全数据湖, 安全运维, 数据验证, 无后门, 粘性缓冲区, 网络安全, 规则引擎, 规则转换, 规则迁移, 语法树, 逆向工具, 隐私保护, 预处理验证