[ DNS & domains ]

DNS cache poisoning and authentication evidence

Distinguish suspicious resolver differences from ordinary cache behavior and retain evidence that can support a defensible authentication investigation.

By the EmailAuth research team · 6 min read

[ Key points ]

  • Compare exact names, types, endpoints, views and timestamps before diagnosing poisoning.
  • DNSSEC validation, resolver transport security and administrative control are separate checks.
  • A current lookup cannot automatically reconstruct a receiver’s historical cache.
On this page

Separate an unexpected answer from a poisoning finding

DNS cache poisoning places incorrect data into a cache that later supplies answers to clients. For email authentication, that can distort the policy or key material a receiver retrieves. It is a possible explanation for suspicious resolver differences, not a diagnosis established by two disagreeing screenshots. First determine whether the observations concern the same owner name, record type, network view and time interval.

A useful investigation asks where the questionable answer entered the resolution path. An unauthorized authoritative edit, a poisoned recursive cache, a legitimate stale entry and a local resolver override are different conditions. They can all yield an answer that differs from an operator's expectation. Name the hypothesis and the evidence needed to distinguish it before recommending a repair.

Explain the security boundary without reproducing an attack

DNS resolvers need to reject responses that do not match their outstanding questions and apply rules about which received data is trustworthy. RFC 5452 section 9 specifies defensive matching requirements and unpredictable query identifiers and source ports. Those measures make forged responses harder to accept; they are not a substitute for maintaining supported resolver software and reviewing its actual configuration.

DNSSEC adds data-origin authentication and integrity where a validating resolver can establish the required chain of trust. The security states distinguish validated data from unsigned or unvalidated situations. RFC 4033 sections 3 and 5 explains these boundaries. A signed record visible in a tool is not, by itself, proof that the mail receiver validated it.

Encrypted transport to a resolver protects that connection under its own authentication assumptions. It does not establish that all data returned by the resolver is authoritative or correctly validated. Keep transport security, DNSSEC validation and administrative control as separate evidence fields rather than compressing them into a single secure-DNS badge.

Preserve a comparison that can be interpreted later

For each observation, retain the queried fully qualified name, type, resolver or authoritative endpoint, timestamp and network vantage point. Preserve response status, relevant flags, answer records, TTLs, authority material and any extended diagnostic information. Record whether validation was requested, performed locally or merely reported by an upstream resolver. Do not infer validation from an unexplained icon.

Compare a known baseline with the current delegated authority and more than one relevant recursive path when the organization authorizes those observations. Different public resolvers can provide useful comparison points, but none substitutes for the path actually used by the receiver. Preserve raw results before normalizing them into a table, so later reviewers can inspect omitted details.

The receiver's authentication result answers a different question: what it concluded for that message at processing time. A current lookup cannot reconstruct a past cache automatically. Correlate message time, queried identities and available resolver telemetry. Where telemetry is absent, mark the causal explanation unresolved instead of claiming that a particular DNS answer caused a specific pass or failure.

Test ordinary explanations before escalation

Cached positive and negative answers can diverge after a legitimate change. RFC 2308 section 5 describes retaining negative answers with their own lifetime. A newly published selector may therefore be visible at an authority while a resolver still returns earlier absence. That observation is compatible with caching and does not establish poisoning.

Resolution failures can also be cached under RFC 9520 section 3. SERVFAIL is not equivalent to a missing authentication record, and an immediate repeat may reproduce a retained failure rather than launch a fresh successful resolution. Separately, permitted serve-stale behavior under RFC 8767 means expiry alone is not a universal guarantee that old data cannot appear.

Check authorized split-horizon arrangements, inconsistent authoritative servers, recent delegation changes and local network policy. These explanations are not reasons to dismiss suspicious data. They provide competing hypotheses that an incident owner can confirm or rule out with evidence.

Fictional worked example of two different answers

In this fictional comparison, a mail owner expects a new selector at june._domainkey.example.com. The authority is recorded as serving the new key at 14:10, while Resolver A returns an earlier negative answer at 14:12 and Resolver B returns the key at 14:13. These times and results are invented, not query transcripts.

The proposed first decision is to examine the earlier negative response and its caching context. If Resolver A later returns the expected key in a manner consistent with that context, the case may be explained without poisoning. If it returns an unrelated key that never appeared in authorized history, the evidence becomes more suspicious, but the team still needs to investigate resolver and authoritative paths before identifying the cause.

No comparison should promote an invented example into an incident result. In a real case, both the suspicious value and the basis for calling it unauthorized need retained evidence and an accountable owner.

Choose recovery according to the affected layer

If the incident owner confirms a compromised recursive service, restore trustworthy operation using the organization's approved procedures and verify the affected clients' resolver paths. If authoritative content changed, repair and protect that administration path instead. A cache flush alone does not prevent reinsertion or reverse a compromised authority, and flushing a laptop does not clear a remote mail provider's cache.

After recovery, compare fresh observations with the approved baseline and inspect representative message outcomes. Record residual uncertainty about earlier decisions and downstream caches. The original-evidence requirement for this manuscript remains open: no timestamped resolver comparison with TTL, response type and authority has been collected, and no poisoning test or live remediation has been performed.

[ Takeaway ]

Unexpected answers justify investigation; proving poisoning requires evidence about the affected resolution path.

[ By role ]

What this means for you

Choose your role for practical next steps.

Resolver operator

Establish the affected path

Resolver evidence must explain what data was accepted and served.

Next steps

  1. Retain relevant logs and response context before remediation.
  2. Review supported software, validation and trusted client paths.

Mail investigator

Correlate DNS with message time

Today’s DNS state is not automatically the state used for yesterday’s message.

Next steps

  1. Record actual authentication identities and processing times.
  2. Mark historical cache state unknown when telemetry is missing.

Incident owner

Choose recovery by layer

The corrective action depends on whether the authority, recursive cache or endpoint path is affected.

Next steps

  1. Test ordinary explanations alongside malicious ones.
  2. Authorize scoped recovery and retain its verification evidence.

[ FAQs ]

Frequently asked questions

Do disagreeing public resolvers prove cache poisoning?

No. Legitimate cache timing, different views, stale service, inconsistent authorities or changed delegation can explain differences. Preserve the observations and test those explanations.

Which fields make a resolver comparison useful?

Capture the exact name and type, endpoint, timestamp, vantage point, status, TTL, answer and authority data, plus the available validation context. Keep raw results alongside normalized notes.

What does RFC 5452 contribute to prevention?

It specifies response-matching checks and unpredictable query identifiers and source ports to make forged replies harder to accept. Configuration and implementation still need review.

Does a DNS-over-HTTPS connection prove the answer is DNSSEC validated?

No. A protected connection and data-origin validation address different boundaries. Establish what validation the resolver actually performs and how the client trusts that result.

Why might an absent selector persist after its key is published?

A recursive resolver may retain an earlier negative answer. Compare the earlier response and its lifetime with current authority rather than immediately alleging poisoning.

Can SERVFAIL itself be cached?

Yes. Current resolution-failure caching requirements mean a repeat may reuse a failure state. SERVFAIL does not establish that an authentication record is absent.

Will flushing my laptop repair a remote receiver’s cache?

No. A local flush affects the selected local caching path, not independently operated recursive or receiver caches. It also does not fix an authoritative or administrative compromise.

Did the fictional comparison establish a poisoning incident?

No. Its times and responses are invented to illustrate competing explanations. The required original resolver comparison and causal evidence remain open.

[ Sources ]

Sources

  1. NIST SP 800-81r3: Secure Domain Name System Deployment Guide
  2. RFC 1034: Domain names: concepts and facilities
  3. RFC 2308: Negative Caching of DNS Queries
  4. RFC 4033: DNS Security Introduction and Requirements
  5. RFC 5452: Measures for Making DNS More Resilient against Forged Answers
  6. RFC 8767: Serving Stale Data to Improve DNS Resiliency
  7. RFC 9520: Negative Caching of DNS Resolution Failures

[ Glossary ]

Glossary

Cache poisoning
Insertion of incorrect data into a DNS cache that can subsequently answer clients.
Recursive resolver
A service that obtains and may cache DNS answers on behalf of clients.
Negative cache
Retained information about absence, with separate standards also covering resolution failures.
Validation context
Information about where DNSSEC validation occurred, its result and the trust in the reporting path.
Vantage point
The network and client context from which a particular observation was made.

Enterprise provenance

Why top financial institutions and governments retired their email security dashboards.

Traditional email authentication platforms sell you a dashboard and ask your engineers to do the labour. In high-stakes environments, manual oversight means delayed enforcement, configuration drift and unmonitored shadow domains.

EmailAuth is the agentic email provenance platform. Our agents enforce p=reject, keep third-party senders aligned and move your domains to full RFC 9989 compliance, the new DMARC standard,, with human-in-the-loop auditability.

Governments Large enterprises Tier-1 financial institutions

SaaS · Dedicated tenancy · Air-gapped on-prem · BYOK encryption

Knowledge Base