Detect DNS lookups for bandwidth-monetization proxyware services
Matches a Sysmon DNS query for the control and enrolment domains of bandwidth-selling proxyware clients, resolved by a process that is not an installed browser. AN0741 fuses sustained CPU load, a mining or obfuscated command line and egress to mining or proxy endpoints; CPU utilisation is not an event Sigma can read at all, and the command-line branch is T1496.001, so what is left is the reselling branch. Being the parent technique's rule, it necessarily overlaps T1496.002 — at this level of ATT&CK there is no observable that is resource hijacking in general rather than one of its sub-techniques, and the corpus's T1496.002 rule is the Linux execve arm of this same behaviour while this is its Windows DNS arm. It is MITRE's DestinationIPList knob, described there as known mining pool IPs or proxy service endpoints, populated here with proxyware vendor domains rather than addresses, since these services move endpoints constantly and a static IP list ages out within weeks. The browser exclusion is matched on the full install path under Program Files rather than on the image name, so that copying a client to chrome.exe no longer buys the exclusion for free; writing into Program Files still does, and it needs administrator rights. That list is a starting point and not a browser inventory — per-user browser installs and embedded web hosts sit outside it. Sysmon EventID 22 is the prerequisite and is frequently disabled or filtered for volume; a client resolving over DoH produces no EventID 22 at all; and this pipeline models no Sentinel table for the dns_query taxonomy, so the KQL has to be written by hand against DeviceNetworkEvents. The domain list is a snapshot of the vendors known at authoring time, and these services rebrand continually, so a quiet result is at least as likely to mean a stale list as a clean estate. UNVERIFIED AS AUTHORED — derived from MITRE ATT&CK DET0267, not hand-written and not tested by its author. Any lab result is on this rule's own page.Full descriptionShow less
The detection
The 3 SIEM queries below are previews produced by Siemphony’s own translator, not pySigma, and none has been executed against a real backend — review before you deploy.
detection.yml
Splunk · SPL
Run this as a search.
index=* ((QueryName="*honeygain.com*" OR QueryName="*peer2profit.com*" OR QueryName="*iproyal.com*" OR QueryName="*pawns.app*" OR QueryName="*packetstream.io*" OR QueryName="*traffmonetizer.com*" OR QueryName="*earnapp.com*" OR QueryName="*earn.fm*" OR QueryName="*repocket.co*" OR QueryName="*proxyrack.com*" OR QueryName="*proxylite.ru*" OR QueryName="*getgrass.io*" OR QueryName="*bitping.com*" OR QueryName="*mysterium.network*") AND NOT ((Image="C:\\Program Files\\Google\\Chrome\\*" OR Image="C:\\Program Files (x86)\\Google\\Chrome\\*" OR Image="C:\\Program Files\\Microsoft\\Edge\\*" OR Image="C:\\Program Files (x86)\\Microsoft\\Edge\\*" OR Image="C:\\Program Files\\Microsoft\\EdgeWebView\\*" OR Image="C:\\Program Files (x86)\\Microsoft\\EdgeWebView\\*" OR Image="C:\\Program Files\\Mozilla Firefox\\*" OR Image="C:\\Program Files (x86)\\Mozilla Firefox\\*" OR Image="C:\\Program Files\\BraveSoftware\\*" OR Image="C:\\Program Files (x86)\\BraveSoftware\\*" OR Image="C:\\Program Files\\Opera\\*" OR Image="C:\\Program Files (x86)\\Opera\\*")))Elastic · ES|QL
Run this as a search.
FROM logs-*| WHERE ((TO_LOWER(dns.question.name) LIKE "*honeygain.com*" OR TO_LOWER(dns.question.name) LIKE "*peer2profit.com*" OR TO_LOWER(dns.question.name) LIKE "*iproyal.com*" OR TO_LOWER(dns.question.name) LIKE "*pawns.app*" OR TO_LOWER(dns.question.name) LIKE "*packetstream.io*" OR TO_LOWER(dns.question.name) LIKE "*traffmonetizer.com*" OR TO_LOWER(dns.question.name) LIKE "*earnapp.com*" OR TO_LOWER(dns.question.name) LIKE "*earn.fm*" OR TO_LOWER(dns.question.name) LIKE "*repocket.co*" OR TO_LOWER(dns.question.name) LIKE "*proxyrack.com*" OR TO_LOWER(dns.question.name) LIKE "*proxylite.ru*" OR TO_LOWER(dns.question.name) LIKE "*getgrass.io*" OR TO_LOWER(dns.question.name) LIKE "*bitping.com*" OR TO_LOWER(dns.question.name) LIKE "*mysterium.network*") AND NOT ((TO_LOWER(process.executable) LIKE "c:\\\\program files\\\\google\\\\chrome\\\\*" OR TO_LOWER(process.executable) LIKE "c:\\\\program files (x86)\\\\google\\\\chrome\\\\*" OR TO_LOWER(process.executable) LIKE "c:\\\\program files\\\\microsoft\\\\edge\\\\*" OR TO_LOWER(process.executable) LIKE "c:\\\\program files (x86)\\\\microsoft\\\\edge\\\\*" OR TO_LOWER(process.executable) LIKE "c:\\\\program files\\\\microsoft\\\\edgewebview\\\\*" OR TO_LOWER(process.executable) LIKE "c:\\\\program files (x86)\\\\microsoft\\\\edgewebview\\\\*" OR TO_LOWER(process.executable) LIKE "c:\\\\program files\\\\mozilla firefox\\\\*" OR TO_LOWER(process.executable) LIKE "c:\\\\program files (x86)\\\\mozilla firefox\\\\*" OR TO_LOWER(process.executable) LIKE "c:\\\\program files\\\\bravesoftware\\\\*" OR TO_LOWER(process.executable) LIKE "c:\\\\program files (x86)\\\\bravesoftware\\\\*" OR TO_LOWER(process.executable) LIKE "c:\\\\program files\\\\opera\\\\*" OR TO_LOWER(process.executable) LIKE "c:\\\\program files (x86)\\\\opera\\\\*")))
Wazuh · XML rule
Deploy to your manager — this is a rule, not a search.
<group name="sigma,windows,dns_query,"> <!-- Rule ids must be unique on your manager; 100000+ is the user range. --> <rule id="100000" level="7"> <!-- Set <if_sid> to the decoder/base rule for windows so this only evaluates relevant events. --> <field name="QueryName" type="pcre2">(?i)(honeygain\.com|peer2profit\.com|iproyal\.com|pawns\.app|packetstream\.io|traffmonetizer\.com|earnapp\.com|earn\.fm|repocket\.co|proxyrack\.com|proxylite\.ru|getgrass\.io|bitping\.com|mysterium\.network)</field> <field name="Image" negate="yes" type="pcre2">(?i)(^C:\\Program Files\\Google\\Chrome\\|^C:\\Program Files \(x86\)\\Google\\Chrome\\|^C:\\Program Files\\Microsoft\\Edge\\|^C:\\Program Files \(x86\)\\Microsoft\\Edge\\|^C:\\Program Files\\Microsoft\\EdgeWebView\\|^C:\\Program Files \(x86\)\\Microsoft\\EdgeWebView\\|^C:\\Program Files\\Mozilla Firefox\\|^C:\\Program Files \(x86\)\\Mozilla Firefox\\|^C:\\Program Files\\BraveSoftware\\|^C:\\Program Files \(x86\)\\BraveSoftware\\|^C:\\Program Files\\Opera\\|^C:\\Program Files \(x86\)\\Opera\\)</field> <description>Detect DNS lookups for bandwidth-monetization proxyware services</description> <mitre> <id>T1496</id> </mitre> </rule></group>
Sentinel · KQL
Run this as a search.
Sentinel cannot express this construct. No Sentinel table is modelled for this logsource ({"category":"dns_query","product":"windows"}), so there is nothing honest to query. Pick a logsource this translator maps, or write the KQL by hand. The Sigma source is on the first tab, unchanged.
Verdicts · reactions · comments
Community
Verdicts from engineers who actually deployed it, and the conversation around it.
Nobody has run this in a real environment and said what happened.
Verdicts from engineers who deployed it
0 castNo verdicts reported yet. The first one is worth more than the tenth — say what you ran it against.
Log in to report a verdict.
Log in to join the discussion.
No comments yet. Someone who deploys this will have something to say about it.