jasonish/suricatax-rule-parser-rs

GitHub: jasonish/suricatax-rule-parser-rs

一个实验性的 Rust crate,用于将 Suricata 规则文本扫描分词为 header 字段和原始 option 事件,供上层应用在此基础上构建自定义的规则解析与验证逻辑。

Stars: 13 | Forks: 4

# suricatax-rule-parser 用于 Suricata 规则的实验性 Rust 扫描器。 该 crate 将规则分词为 header 字段和原始 option 事件。它不会尝试完全解析 option 的语义;应用程序可以在事件流之上构建自己的验证或更高层级的解析。 ## 示例 ``` use suricatax_rule_parser::scanner::{RuleScanEvent, RuleScanner}; fn main() -> Result<(), suricatax_rule_parser::Error> { let rule = r#"alert tcp any any -> any any (msg:"TEST"; sid:1;)"#; for event in RuleScanner::new(rule) { match event? { RuleScanEvent::Action(action) => println!("action={action}"), RuleScanEvent::Option { name, value } => println!("{name}={value:?}"), _ => {} } } Ok(()) } ``` ## 许可证 根据以下任一许可证授权: - Apache License, Version 2.0 ([LICENSE-APACHE](LICENSE-APACHE)) - MIT license ([LICENSE-MIT](LICENSE-MIT)) 由您自行选择。
标签:Rust, Suricata, 可视化界面, 现代安全运营, 网络流量审计, 规则解析, 解析器, 词法分析, 通知系统