Subdomain takeover — visící CNAME
Co to je
V DNS vaší domény je záznam typu CNAME, který ukazuje na opuštěnou cloudovou službu. Typický scénář:
- Před lety někdo vytvořil
blog.example.czs CNAME naexample-blog.herokuapp.com. - Heroku app je dávno smazaná, ale CNAME v DNS nikdo nezrušil.
- Útočník se zaregistruje na Heroku, vytvoří app jménem
example-bloga převezme vaši subdoménu.
Proč je to problém
Útočník teď servíruje obsah pod vaším doménovým jménem — a uživatelé i vyhledávače mu věří jako vám. Konkrétně může:
- Hostovat phishing pod
blog.example.cz(uživatelé vidí váš HTTPS, vaši subdoménu). - Vystavit si Let’s Encrypt cert — zelený zámek, žádné varování.
- Načíst cookies vaší root domény, pokud jsou nastavené na
.example.czbezHostOnly. - Posílat e-maily s odkazy na vaši subdoménu (obejití spamových filtrů).
Tohle není teoretické. Heroku, AWS S3, GitHub Pages, Azure CDN, Shopify a další služby všechny umožňují „register-and-take-over“ dokud konkrétní službu nezabezpečí pinningem (mnohé to nedělají).
Jak to opravit
Krok 1 — ověřit, že je problém reálný
Z reportu znáte konkrétní subdoménu. Otevřete ji v prohlížeči:
- Pokud vidíte oficiální chybovou stránku služby („No such app“ od Heroku, „404 not found“ od GitHub Pages,„NoSuchBucket“ od AWS S3) — je to pravděpodobně reálný takeover.
- Pokud vidíte vlastní obsah — subdoména je aktivní a problém pravděpodobně neexistuje (false positive ze scanneru).
Krok 2 — rozhodnout
- Subdoménu už nepotřebujete. Smažte CNAME ze svého DNS.
- Subdoména má znovu existovat. Vytvořte novou app / bucket / Pages site se stejným jménem, na které CNAME ukazuje — před útočníkem.
Krok 3 — pravidelná hygiena
Subdomain takeover vzniká tím, že na čištění DNS zapomenete. Nasaďte:
- Pravidelný audit všech CNAME — každý kvartál si vyexportujte zónu a ručně každý cizí target ověřte. Pro malé domény stačí
dig +short ANY example.cz. - Automatický takeover scanner: subfinder + nuclei (
nuclei -t http/takeovers/).
Pozor na zděděné staré marketingové subdomény
landing.example.cz z pěti let staré kampaně, hostovaná na zrušeném Unbounce. old-blog.example.cz z migrace na Medium. To jsou klasické cíle.