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, 可视化界面, 现代安全运营, 网络流量审计, 规则解析, 解析器, 词法分析, 通知系统