ML Rules

Download 52
Last updated Jul 21, 2024

ml-scan-web-log

Detect anomaly web access. src_ip, status, method, path, query, user_agent fields are required.

ml-scan-web-log [features=FEATURES]
features=FEATURES
Specify 't' to output all features.

Output Fields

FieldTypeNameDescription
verdictStringVerdictattack or benign
tagsStringTagsCharacteristics of request. e.g. #not_found, #static
is_not_foundIntegerIs not found1 if resource not found, 0 otherwise. e.g. status 404
is_errorIntegerIs error1 if error occurred, 0 otherwise. e.g. statue 500
is_cloud_asnIntegerIs cloud ASN1 if src_ip is belongs to cloud service provider, 0 otherwise.
is_hosting_asnIntegerIs hosting ASN1 if src_ip is belongs to hosting provider, 0 otherwise.
is_asm_asnIntegerIs ASM ASN1 if src_ip is belongs to attack surface management provider, 0 otherwise.
is_broadband_asnIntegerIs broadband ASN1 if src_ip is belongs to broadband service provider, 0 otherwise. e.g. Korea Telecom
is_service_asnIntegerIs service ASN1 if src_ip is belongs to web service provider, 0 otherwise. e.g. facebook
is_good_asnIntegerIs good ASN1 if src_ip is belongs to broadband, web service, or attack surface management provider, 0 otherwise.
is_bad_asnIntegerIs bad ASN1 if src_ip belongs to cloud or hosting provider. 0 otherwise.
is_staticIntegerIs static resource1 if resource is static, 0 otherwise. e.g. image, stylesheet, javascript
is_scanningIntegerIs scanning1 if request has known scanning pattern, 0 otherwise.
is_exploitIntegerIs exploit1 if request has known exploit pattern, 0 otherwise.
is_indexIntegerIs index page1 if resource is root page, 0 otherwise.
is_hidden_fileIntegerIs hidden file1 if resource starts with /., 0 otherwise.
is_traversalIntegerIs path traversal1 if path contains "../" sequences, 0 otherwise.
is_phpIntegerIs php resource1 if resource is PHP, 0 otherwise.
chrome_verIntegerChrome versione.g. 131
edge_verIntegerEdge versione.g. 131
safari_verIntegerSafari versione.g. 537
is_browserIntegerIs browser1 if user_agent is common web browser, 0 otherwise. e.g. Chrome, MSEdge, Firefox, Safari, Opera
is_asmIntegerIs ASM agent1 if user_agent is known attack surface management crawler, 0 otherwise.
is_seoIntegerIs SEO agent1 if user_agent is known search engine optimization crawler, 0 otherwise.
is_goIntegerIs Go agent1 if user_agent is programmed by Go language, 0 otherwise.
is_javaIntegerIs Java agent1 if user_agent is programmed by Java language, 0 otherwise.
is_pythonIntegerIs Python agent1 if user_agent is programmed by Python language, 0 otherwise.
is_custom_botIntegerIs custom agent1 if user_agent is programmed bot, 0 otherwise.
is_shellIntegerIs shell agent1 if user_agent is shell program, 0 otherwise. e.g. curl, wget
is_socialIntegerIs social agent1 if user_agent is social agent, 0 otherwise. e.g. facebook crawler
is_search_engineIntegerIs search engine1 if user_agent is search engine crawler, 0 otherwise. e.g. google, bing
is_scannerIntegerIs scanner1 if user_agent is known scanner, 0 otherwise. e.g. zgrab, masscan
is_vpn_clientInteger 1 or 0
is_unknownIntegerIs unknown agent1 if user_agent is not classified as browser or bot, 0 otherwise.
is_good_agentIntegerIs good agent1 if user_agent is one of the following: search engine crawler, social crawler, search engine optimization crawler, or vpn client, 0 otherwise.
is_good_reqIntegerIs good request1 if request is good request, 0 otherwise. e.g. get static resource is classified as good request.
is_bad_reqIntegerIs bad request1 if request is bad request, 0 otherwise. e.g. hidden file access is classified as bad request.
is_special_queryIntegerIs special querystring1 if querystring contains special characters, 0 otherwise.