Linux host rewrites /etc/hosts or /etc/resolv.conf
AN0824 groups two different mechanisms under one analytic — file tampering with the files that steer name resolution, and ARP-layer traffic anomalies. Only the first has a real observable in the strategy's log sources: no logSource here carries raw ARP frames or NIC-level traffic, so an ARP-cache poisoning attempt is invisible to this rule and needs packet-level telemetry no analytic in this brief supplies. What is observable is the host-side enabler MITRE calls out in the technique description — an adversary steering a victim to attacker infrastructure by rewriting where DNS resolution points. The rule matches the auditd PATH record naming either file, kept separate from the SYSCALL record's own fields since the two arrive as distinct record types for the same event. UNVERIFIED AS AUTHORED — derived from MITRE ATT&CK DET0296, 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=* (type="PATH" AND (name="/etc/hosts" OR name="/etc/resolv.conf"))Elastic · ES|QL
Run this as a search.
FROM logs-*| WHERE (TO_LOWER(type) == "path" AND (TO_LOWER(name) == "/etc/hosts" OR TO_LOWER(name) == "/etc/resolv.conf"))
Wazuh · XML rule
Deploy to your manager — this is a rule, not a search.
<group name="sigma,linux,"> <!-- Rule ids must be unique on your manager; 100000+ is the user range. --> <rule id="100000" level="5"> <!-- Set <if_sid> to the decoder/base rule for linux so this only evaluates relevant events. --> <field name="type" type="pcre2">(?i)^PATH$</field> <field name="name" type="pcre2">(?i)(^/etc/hosts$|^/etc/resolv\.conf$)</field> <description>Linux host rewrites /etc/hosts or /etc/resolv.conf</description> <mitre> <id>T1557</id> </mitre> </rule></group>
Sentinel · KQL
Run this as a search.
Sentinel cannot express this construct. No Sentinel table is modelled for this logsource ({"product":"linux","service":"auditd"}), 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.