Subdomain takeovers, explained — and how to detect them | Scanthra

Scanthra · 7 min read · Updated May 2026

May 2026
TL;DR: A subdomain takeover happens when one of your DNS records (typically a CNAME) still points at a cloud service you no longer use. Anyone can register the abandoned name on that service and start serving content from your real subdomain — perfect for phishing, fraud and SEO poisoning. Audit your DNS, remove dangling records, and you're done.

The mechanism, in one paragraph

Three years ago someone in your team created events.yourcompany.com as a CNAME pointing at your-event-page.herokuapp.com. The marketing campaign ended, the Heroku app was deleted, the CNAME in DNS was forgotten. Today, anyone can sign up for Heroku, claim the name your-event-page.herokuapp.com, and serve any HTML they want. Browsers visiting events.yourcompany.com get their page, with your domain in the address bar, with your brand's trust. TLS works because services like Heroku issue certs automatically. From the browser's point of view, it's a perfectly legitimate visit to your real site.

Why this matters

Real attacks observed in the wild:

The vulnerable services

Subdomain takeover is a class of vulnerability against any SaaS that: (1) lets users claim an arbitrary subdomain on the platform, and (2) doesn't verify that the claimer also owns the original domain. Historically vulnerable platforms have included:

Each platform's takeover indicator is slightly different — most show a characteristic "no such app" / "bucket does not exist" / "404 Not Found" fingerprint when the name is unclaimed. The community-maintained EdOverflow/can-i-take-over-xyz repository on GitHub keeps the current list.

How to detect dangling records yourself

Step 1 — Enumerate your subdomains

You can't fix what you don't know about. Sources for a full inventory:

Step 2 — Resolve each one

For every record:

Step 3 — Remove or reclaim

If you don't need the subdomain, delete the DNS record. If you still need it, point it at a current asset. Avoid pointing at "placeholder" cloud apps — they tend to drift into vulnerable state.

How to prevent the next one

How Scanthra detects this

Our DNS Recon module queries the public Certificate Transparency logs (passively, no DNS brute-force) and flags every subdomain that has ever held a real certificate. We surface development, staging and admin-looking subdomains as findings — the classic candidates for forgotten and dangling records. Subdomain takeover detection itself (checking whether each CNAME target is unclaimed on a known vulnerable provider) is on our roadmap and benefits paying users first.

Want to know if your site has this issue?

Scanthra runs a friendly, passive check and emails you a plain-English PDF report.

Scan your site free