Skip to main content

string_analyze/rules/core/
webkey.rs

1use crate::rules::lazy_rule;
2
3// web 凭证
4lazy_rule!(
5    RE_DB_CONN = r#"(?i)(?:mysql|postgresql|mongodb|redis|jdbc:[a-z]+)://[^\s]+"#,
6    "发现 数据库连接字符串",
7    80
8);
9lazy_rule!(
10    RE_JWT = r#"ey[A-Za-z0-9_-]{10,}\.[A-Za-z0-9_-]{10,}\.[A-Za-z0-9_-]{10,}"#,
11    "发现 JWT Token",
12    80
13);
14lazy_rule!(
15    RE_COOKIE = r#"(?i)(?:cookie|session)=[a-zA-Z0-9+/=]{20,}"#,
16    "发现 Cookie/Session 凭证",
17    80
18);
19lazy_rule!(
20    RE_SPRING_SECRET =
21        r#"(?i)\bspring\.(?:datasource\.(?:username|password)|redis\.password)\s*=\s*\S+"#,
22    "发现 Spring 配置敏感信息",
23    80
24);
25lazy_rule!(
26    RE_DJANGO_SECRET = r#"(?i)SECRET_KEY\s*=\s*['"][A-Za-z0-9!@#$%^&*()_+=-]{32,}['"]"#,
27    "发现 Django SECRET_KEY",
28    80
29);
30lazy_rule!(
31    RE_FLASK_SECRET = r#"(?i)app\.secret_key\s*=\s*['"][A-Za-z0-9!@#$%^&*()_+=-]{16,}['"]"#,
32    "发现 Flask secret_key",
33    80
34);
35lazy_rule!(
36    RE_RAILS_SECRET = r#"(?i)secret_key_base\s*[:=]\s*['"][a-f0-9]{64,}['"]"#,
37    "发现 Rails secret_key_base",
38    80
39);