YARA · elceef yara-rulz
ELCEEF_HTML_Windows_Search_Abuse
Detects HTML files abusing Windows system functionalities to redirect and download malicious payloads
- Author
- marcin@ulikowski.pl
- Date
- 2024-06-15
- Modified
- 2024-06-16
- Score / Quality
- 75 / 73
What this rule detects
Detects HTML files abusing Windows system functionalities to redirect and download malicious payloads
It defines 9 patterns (9 text, 0 hex, 0 regex).
Summary generated from the rule's metadata and condition.
Rule source
rule ELCEEF_HTML_Windows_Search_Abuse
{
meta:
= "Detects HTML files abusing Windows system functionalities to redirect and download malicious payloads"
= "marcin@ulikowski.pl"
= "537cb46e-4cfc-517c-8d6d-0019f2c3e5ef"
= "2024-06-15"
= "2024-06-16"
= "https://github.com/elceef/yara-rulz"
= "https://github.com/elceef/yara-rulz/blob/5683b294a12cf0c875b624933586029ae43a852f/rules/HTML_Windows_Search.yara#L1-L22"
= "https://github.com/elceef/yara-rulz/blob/5683b294a12cf0c875b624933586029ae43a852f/LICENSE"
= "d136dcfc355885c502ff2c3be229791538541b748b6c07df3ced95f9a7eb2f30"
= "6a0d490cf08ab0aad3c535645abe9ebc26d12768cf2a2e932cdb7ec93cf3e2bd"
= 75
= 73
= ""
strings:
$location1 = "location.href" wide ascii
$location2 = "location.replace(" wide ascii
$location3 = "location.assign(" wide ascii
$metarefresh = "<meta http-equiv=\"refresh\"" nocase wide ascii
$search1 = "\"search-ms:query=" wide ascii
$search2 = "\"search:query=" wide ascii
$search3 = "URL=search:query=" wide ascii
$crumb1 = "&crumb=location:" wide ascii
$crumb2 = "&crumb=location:" wide ascii
condition:
( any of ( $location* ) or $metarefresh ) and any of ( $search* ) and any of ( $crumb* )
}
Strings (9 patterns)
| Identifier | Type | Value | Modifiers |
|---|---|---|---|
| $location1 | text | "location.href" | wide ascii |
| $location2 | text | "location.replace(" | wide ascii |
| $location3 | text | "location.assign(" | wide ascii |
| $metarefresh | text | "<meta http-equiv=\"refresh\"" | nocase wide ascii |
| $search1 | text | "\"search-ms:query=" | wide ascii |
| $search2 | text | "\"search:query=" | wide ascii |
| $search3 | text | "URL=search:query=" | wide ascii |
| $crumb1 | text | "&crumb=location:" | wide ascii |
| $crumb2 | text | "&crumb=location:" | wide ascii |
Condition
( any of ( $location* ) or $metarefresh ) and any of ( $search* ) and any of ( $crumb* )In plain words (Heuristic)
- At least one pattern in ( $location* ) must match.
- At least one pattern in ( $search* ) must match.
- At least one pattern in ( $crumb* ) must match.
- Pattern $metarefresh must be present.
Test this rule in your browser
Drop a file to scan it with this rule using YARA-X compiled to WebAssembly. Nothing is uploaded.
References
Sample hashes
Hashes of samples the author lists in the rule's meta (look them up in your threat-intelligence platform).
- d136dcfc355885c502ff2c3be229791538541b748b6c07df3ced95f9a7eb2f30
Licence & attribution
Author: marcin@ulikowski.pl
Source repository: elceef yara-rulz @ 5683b294a1
Licence: MIT License (repository licence)
Copyright notice: Copyright (c) 2022 Marcin Ulikowski
Mirrored via YARA Forge 20260927, which prefixes rule names with the source and adds normalised meta fields.
Rule id: 537cb46e-4cfc-517c-8d6d-0019f2c3e5ef
Related rules
- Exploitelceef yara-rulz· marcin@ulikowski.pl· 2025-08-18
- Genericelceef yara-rulz· marcin@ulikowski.pl· 2024-04-10
- Genericelceef yara-rulz· marcin@ulikowski.pl· 2023-05-05
- Suspicious / huntingelceef yara-rulz· marcin@ulikowski.pl· 2023-05-01
- Genericelceef yara-rulz· marcin@ulikowski.pl· 2023-04-17
- Exploitelceef yara-rulz· marcin@ulikowski.pl· 2023-09-23
- Genericelceef yara-rulz· marcin@ulikowski.pl· 2023-03-08
- Genericelceef yara-rulz· marcin@ulikowski.pl· 2022-10-25