CertaDNS
Skip to lesson

Evidence · lesson 1 of 3

What to capture, and in what order

After this lesson you can

Assemble a complete evidence package for a live finding before anything changes.

Assumes you have read The arithmetic against registering everything.

Evidence is gathered once, at detection, in an order chosen so the most perishable item is captured first. Everything here takes minutes; not having it costs the finding.

The order

#CaptureWhy first or last
1A rendered screenshot of the page, full length, with the URL bar visibleThe most perishable thing there is. Content changes or disappears without warning.
2The raw HTML response, saved to a fileContains the form action, the asset paths and the artefacts linking it to your site.
3The full HTTP response headersServer, redirects, cookies. Identifies the platform and sometimes the operator.
4The complete DNS picture — A, AAAA, MX, NS, TXT, CNAMEChanges quickly once an attacker suspects detection.
5The TLS certificate chain, and its CT log entryPermanent in CT, and the log entry is dated independently of you.
6The RDAP recordThe slowest to change, and it names the abuse contact you will need.
7Your own timestamp and method notesWhat you ran, when, from where. This is what makes the rest usable by somebody else.

The whole thing in one pass

D=suspicious-lookalike.example
OUT=evidence/$D/$(date -u +%Y%m%dT%H%M%SZ)
mkdir -p $OUT

curl -sSL -D $OUT/headers.txt -o $OUT/page.html "https://$D/"
for t in A AAAA MX NS TXT CNAME SOA; do
  echo "== $t"; dig +noall +answer $D $t
done > $OUT/dns.txt
echo | openssl s_client -connect $D:443 -servername $D 2>/dev/null   | openssl x509 -noout -text > $OUT/cert.txt
curl -s "https://rdap.org/domain/$D" > $OUT/rdap.json
curl -s "https://crt.sh/?q=$D&output=json" > $OUT/ct.json

# screenshot: a headless browser, full page, URL visible

Capture what a victim sees

A phishing page frequently serves benign content to datacentre addresses. A capture taken from a cloud host may record the innocent version, which is worse than no capture — it becomes evidence in the attacker’s favour if anyone disputes the report.

Capture on detection, decide afterwards

The decision about whether to report can take a day. The evidence cannot wait for it, because the page may be gone by then. Capture everything at the moment of detection even for findings you expect to close — it costs a minute and it is the difference between a reportable finding and a recollection.

Last reviewed