Skip to main content

string_analyze/rules/
hexfile.rs

1use crate::rules::lazy_rule;
2
3// Hex 文件
4lazy_rule!(
5    RE_HEX_ZIP = r#"\b504b0304[0-9a-fA-F]{16,}\b"#,
6    "发现 Hex 形式的 ZIP 文件头",
7    45
8);
9lazy_rule!(
10    RE_HEX_PNG = r#"\b89504e470d0a1a0a[0-9a-fA-F]{16,}\b"#,
11    "发现 Hex 形式的 PNG 文件头",
12    45
13);
14lazy_rule!(
15    RE_HEX_JPEG = r#"\bffd8ffe[0-9a-fA-F]{16,}\b"#,
16    "发现 Hex 形式的 JPEG 文件头",
17    45
18);
19lazy_rule!(
20    RE_HEX_PDF = r#"\b255044462d[0-9a-fA-F]{16,}\b"#,
21    "发现 Hex 形式的 PDF 文件头",
22    45
23);
24lazy_rule!(
25    RE_HEX_ELF = r#"\b7f454c4601010100[0-9a-fA-F]{16,}\b"#,
26    "发现 Hex 形式的 ELF 文件头",
27    45
28);
29lazy_rule!(
30    RE_CAFEBABE = r#"\bcafebabe[0-9a-fA-F]{16,}\b"#,
31    "发现 Hex 形式的 Java Class 文件头",
32    45
33);
34lazy_rule!(
35    RE_HEX_RAR = r#"\b526172211a07[0-9a-fA-F]{16,}\b"#,
36    "发现 Hex 形式的 RAR 文件头",
37    45
38);
39lazy_rule!(
40    RE_HEX_GZIP = r#"\b1f8b0800[0-9a-fA-F]{16,}\b"#,
41    "发现 Hex 形式的 Gzip 文件头",
42    45
43);
44
45#[cfg(test)]
46mod tests {}