Description
Service name
Microsoft Azure
Proof
There is no general approach for PoC. Microsoft Azure offers multiple services (CloudApp, Azure Websites, etc.) that use different domain names.
General approach in verifying subdomain takeover is to check, whether the Azure domain responds with NXDOMAIN
DNS status. This is (to my knowledge) the necessary condition of the domain, however it is not sufficient. In other words, not all Azure domains which are used in some CNAME and respond with NXDOMAIN
are vulnerable to subdomain takeover. I personally got a case where Azure portal refused to create a domain even though it responded with NXDOMAIN
.
Some H1 reports to prove this point:
- https://0xpatrik.com/subdomain-takeover-starbucks/ (HackerOne: https://hackerone.com/reports/325336)
- https://0xpatrik.com/subdomain-takeover-starbucks-ii/ (HackerOne: https://hackerone.com/reports/388622)
As mentioned before, the PoC creation depends on the service in question, however, they generally tend to have similar workflows.
Documentation
These are the domains that are identified as vulnerable. Each of these is used for particular Azure service:
- *.cloudapp.net
- *.cloudapp.azure.com
- *.azurewebsites.net
- *.blob.core.windows.net
- *.cloudapp.azure.com
- *.azure-api.net
- *.azurehdinsight.net
- *.azureedge.net
- *.azurecontainer.io
- *.database.windows.net
- *.azuredatalakestore.net
- *.search.windows.net
- *.azurecr.io
- *.redis.cache.windows.net
- *.azurehdinsight.net
- *.servicebus.windows.net
- *.visualstudio.com