Subdomain Takeover - Detail Method
Last updated
Last updated
When a web address is accessed eg. "www.xyz.com", a DNS query is performed across a DNS server with the host name.
The DNS server takes the hostname and resolves it into a numeric IP address
An alias of domain name to another domain name
In the example below, xyz.company.com is a source domain and xyz.cloudservice.com is a canonical domain name.
Subdomains map themselves to a specific IP, 3rd party services like Azure, AWS, Heroku, Github, Fastly, Shopify, etc. to serve the contents. These subdomains use a CNAME record to another domain [eg. xyz.company.com CNAME xyz.cloudservice.com]
Now due to whatever reason, the company decides to stop utilizing this service and to save some bucks, the company cancels the subscription of the 3rd party cloud service provider.
But, the company forgets to update or simply remove the CNAME record in the DNS zone file
Since the CNAME record is not deleted from company.com DNS zone, anyone who registers xyz.cloudservice.com has full control over xyz.company.com until the DNS record is present.
Use the following tools to enumerate subdomains
The following tools are designed to scan a list of subdomains concurrently and identify ones that are able to be hijacked.
You can also verify if the subdomain is vulnerable or not by going through common error pages.
Use the following github repositiory to check if the engine is vulnerable or not and the steps for hijacking a particular engine.
If you cannot find your engine in the above repository, Google is your friend !
There are cases when the CNAME that a subdomain points to, is available to buy.
In that case the attacker can directly buy that domain and host his/her content.
How we Hijacked 26+ Subdomains
Subdomain Takeover: Finding Candidates
Subdomain Takeover: Proof Creation for Bug Bounties
Check out our talk on the same at NULL / OWASP Bangalore meetup, June 2020
https://www.youtube.com/watch?v=xCunHBH8ZQ4
Resolved