Skip to content

Commit 52f0616

Browse files
committed
Add case handling for URL normalization in rule
1 parent aa68032 commit 52f0616

File tree

1 file changed

+9
-3
lines changed

1 file changed

+9
-3
lines changed

rules/cross-platform/reconnaissance_web_server_discovery_or_fuzzing_activity.toml

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -45,8 +45,13 @@ from
4545
logs-iis.access-*
4646
| where
4747
@timestamp > now() - 1 hours and
48+
(url.original is not null or url.full is not null) and
4849
http.request.method == "GET" and
4950
http.response.status_code in (404, 403)
51+
52+
| eval Esql_url_text = case(url.original is not null, url.original, url.full)
53+
| eval Esql_url_lower = to_lower(Esql_url_text)
54+
5055
| keep
5156
@timestamp,
5257
event.dataset,
@@ -55,10 +60,11 @@ from
5560
url.path,
5661
source.ip,
5762
agent.id,
58-
host.name
63+
host.name,
64+
Esql_url_lower
5965
| stats
6066
Esql.event_count = count(),
61-
Esql.url_path_count_distinct = count_distinct(url.path),
67+
Esql.url_lower_count_distinct = count_distinct(Esql_url_lower),
6268
Esql.host_name_values = values(host.name),
6369
Esql.agent_id_values = values(agent.id),
6470
Esql.http_request_method_values = values(http.request.method),
@@ -67,7 +73,7 @@ from
6773
Esql.event_dataset_values = values(event.dataset)
6874
by source.ip
6975
| where
70-
Esql.event_count > 500 and Esql.url_path_count_distinct > 250
76+
Esql.event_count > 500 and Esql.url_lower_count_distinct > 250
7177
| limit 100
7278
'''
7379

0 commit comments

Comments
 (0)