13 个版本 (7 个重大更新)

0.8.0 2024年2月29日
0.7.1 2021年11月15日
0.7.0 2021年9月13日
0.6.0 2020年11月29日
0.1.1 2018年3月17日

#958解析器实现

Download history 4838/week @ 2024-03-13 5252/week @ 2024-03-20 4004/week @ 2024-03-27 4655/week @ 2024-04-03 7192/week @ 2024-04-10 6046/week @ 2024-04-17 6840/week @ 2024-04-24 5823/week @ 2024-05-01 3468/week @ 2024-05-08 4426/week @ 2024-05-15 5826/week @ 2024-05-22 6779/week @ 2024-05-29 5350/week @ 2024-06-05 3505/week @ 2024-06-12 4175/week @ 2024-06-19 4530/week @ 2024-06-26

18,793 每月下载量
用于 suricata

MIT/Apache

65KB
877 代码行

Kerberos 解析器

License: MIT Apache License 2.0 Build Status Crates.io Version

Kerberos 解析器

一个 Kerberos v5 (RFC4120) 解析器,使用 nom 解析器组合框架实现。

代码可在 Github 上获取。

提供特定的解析函数用于 Kerberos 消息类型。例如,要解析 KRB_AS_REQ 消息,请使用 parse_as_req

示例

解析 KRB_AS_REQ 消息

use kerberos_parser::krb5::MessageType;
use kerberos_parser::krb5_parser::parse_as_req;

static AS_REQ: &'static [u8] = include_bytes!("../assets/as-req.bin");

let res = parse_as_req(AS_REQ);
match res {
    Ok((rem, kdc_req)) => {
        assert!(rem.is_empty());
        //
        assert_eq!(kdc_req.msg_type, MessageType::KRB_AS_REQ);
    },
    _ => panic!("KRB_AS_REQ parsing failed: {:?}", res),
}

Rusticata

此解析器是 rusticata 项目的组成部分。该项目旨在提供 安全 的解析器,可在其他项目中使用。

解析器的测试是手动进行的,也使用单元测试和 cargo-fuzz。如果您发现任何问题,请填写错误报告。

欢迎贡献:测试、反馈、文档、新解析器的建议(或代码)等。

许可证

许可方式为以下之一

任选其一。

贡献

除非您明确声明,否则根据 Apache-2.0 许可证定义的,您有意提交以包含在作品中的任何贡献,均应双重许可如上所述,不附加任何额外条款或条件。

依赖项

~1.9–2.6MB
~50K SLoC