Domain/Subdomain takeover
Reading time: 6 minutes
tip
AWS Hacking'i öğrenin ve pratik yapın:HackTricks Training AWS Red Team Expert (ARTE)
GCP Hacking'i öğrenin ve pratik yapın: HackTricks Training GCP Red Team Expert (GRTE)
HackTricks'i Destekleyin
- abonelik planlarını kontrol edin!
- Bize katılın 💬 Discord grubuna veya telegram grubuna veya bizi takip edin Twitter'da 🐦 @hacktricks_live.
- Hacking ipuçlarını paylaşın, HackTricks ve HackTricks Cloud github reposuna PR göndererek.
Domain takeover
Eğer kapsam içinde bir hizmet tarafından kullanılan bir alan adı (domain.tld) keşfettiyseniz ancak şirket bu alanın sahipliğini kaybetmişse, bunu kaydetmeyi (eğer yeterince ucuzsa) deneyebilir ve şirkete bildirebilirsiniz. Eğer bu alan adı, bir oturum çerezi gibi duyarlı bilgiler alıyorsa GET parametresi veya Referer başlığı aracılığıyla, bu kesinlikle bir zafiyetdir.
Subdomain takeover
Şirketin bir alt alan adı, kayıtlı olmayan bir üçüncü taraf hizmete işaret ediyor. Eğer bu üçüncü taraf hizmette bir hesap oluşturabilir ve kullanılan adı kaydedebilirseniz, alt alan adı ele geçirmeyi gerçekleştirebilirsiniz.
Olası ele geçirmeleri kontrol etmek için çeşitli sözlüklerle birlikte birkaç araç bulunmaktadır:
- https://github.com/EdOverflow/can-i-take-over-xyz
- https://github.com/blacklanternsecurity/bbot
- https://github.com/punk-security/dnsReaper
- https://github.com/haccer/subjack
- https://github.com/anshumanbh/tko-sub
- https://github.com/ArifulProtik/sub-domain-takeover
- https://github.com/SaadAhmedx/Subdomain-Takeover
- https://github.com/Ice3man543/SubOver
- https://github.com/antichown/subdomain-takeover
- https://github.com/musana/mx-takeover
- https://github.com/PentestPad/subzy
- https://github.com/Stratus-Security/Subdominator
- https://github.com/NImaism/takeit
Subdomain Takeover Generation via DNS Wildcard
Bir alan adında DNS wildcard kullanıldığında, o alan adının farklı bir adresi olmayan herhangi bir istenen alt alan adı aynı bilgilere çözülür. Bu bir A IP adresi, bir CNAME olabilir...
Örneğin, *.testing.com
1.1.1.1
'e wildcard olarak ayarlandıysa, not-existent.testing.com
1.1.1.1
'e işaret edecektir.
Ancak, bir IP adresine işaret etmek yerine, sistem yöneticisi bunu bir üçüncü taraf hizmete CNAME aracılığıyla yönlendirirse, örneğin bir Github alt alan adı (sohomdatta1.github.io
) gibi. Bir saldırgan, kendi üçüncü taraf sayfasını (bu durumda Gihub'da) oluşturabilir ve something.testing.com
'un oraya işaret ettiğini söyleyebilir. Çünkü, CNAME wildcard saldırgana kurbanın alanı için keyfi alt alan adları oluşturma yetkisi verecektir.
Bu zafiyetin bir örneğini CTF yazısında bulabilirsiniz: https://ctf.zeyu2001.com/2022/nitectf-2022/undocumented-js-api
Exploiting a subdomain takeover
Alt alan adı ele geçirme, temelde belirli bir alan adı için internet genelinde DNS sahtekarlığıdır ve saldırganların bir alan adı için A kayıtları ayarlamasına olanak tanır, bu da tarayıcıların saldırganın sunucusundan içerik göstermesine neden olur. Bu tarayıcılardaki şeffaflık, alan adlarını phishing'e yatkın hale getirir. Saldırganlar bu amaçla typosquatting veya Doppelganger domains kullanabilir. Özellikle, bir phishing e-postasındaki URL'nin meşru göründüğü alan adları, kullanıcıları kandırarak ve alan adının doğuştan güveni nedeniyle spam filtrelerinden kaçınarak daha savunmasızdır.
Daha fazla ayrıntı için bu gönderiyi kontrol edin
SSL Certificates
SSL sertifikaları, saldırganlar tarafından Let's Encrypt gibi hizmetler aracılığıyla oluşturulursa, bu sahte alanların meşruiyetini artırarak phishing saldırılarını daha inandırıcı hale getirir.
Cookie Security and Browser Transparency
Tarayıcı şeffaflığı, Aynı köken politikası gibi politikalarla yönetilen çerez güvenliğine de uzanır. Oturumları yönetmek ve giriş belirteçlerini depolamak için sıklıkla kullanılan çerezler, alt alan adı ele geçirme yoluyla istismar edilebilir. Saldırganlar, kullanıcıları tehlikeye atarak çerezleri toplamak için yalnızca kullanıcıları tehlikeye atılmış bir alt alan adına yönlendirebilir.
CORS Bypass
Her alt alan adının ana alan veya diğer alt alanlardan CORS kaynaklarına erişmesine izin verilebilir. Bu, bir saldırganın CORS isteklerini kötüye kullanarak duyarlı bilgilere erişmesine olanak tanıyabilir.
CSRF - Same-Site Cookies bypass
Alt alan adının, çerezlerin Same-Site
niteliği tarafından engellenen alan veya diğer alt alanlara çerez göndermesine izin verilebilir. Ancak, anti-CSRF belirteçlerinin düzgün bir şekilde uygulanması durumunda bu saldırıyı engelleyeceğini unutmayın.
OAuth tokens redirect
Kompromize edilmiş alt alan adının, bir OAuth akışının redirect_uri
URL'sinde kullanılmasına izin verilebilir. Bu, bir saldırganın OAuth belirtecini çalmasına olanak tanıyabilir.
CSP Bypass
Kompromize edilmiş alt alan adı (veya her alt alan adı), örneğin CSP'nin script-src
'sinde kullanılmasına izin verilebilir. Bu, bir saldırganın kötü niyetli betikler enjekte etmesine ve potansiyel XSS zafiyetlerini kötüye kullanmasına olanak tanıyabilir.
Emails and Subdomain Takeover
Alt alan adı ele geçirmenin bir diğer yönü, e-posta hizmetleridir. Saldırganlar, meşru bir alt alan adından e-posta almak veya göndermek için MX kayıtlarını manipüle edebilir, bu da phishing saldırılarının etkinliğini artırır.
Higher Order Risks
Daha fazla risk, NS kayıt ele geçirme içerir. Eğer bir saldırgan bir alanın bir NS kaydını kontrol altına alırsa, trafiğin bir kısmını kendi kontrolündeki bir sunucuya yönlendirebilir. Bu risk, saldırganın DNS kayıtları için yüksek bir TTL (Time to Live) ayarlaması durumunda artar ve saldırının süresini uzatır.
CNAME Record Vulnerability
Saldırganlar, artık kullanılmayan veya devre dışı bırakılan dış hizmetlere işaret eden talep edilmemiş CNAME kayıtlarını istismar edebilir. Bu, onlara güvenilir bir alan altında bir sayfa oluşturma olanağı tanır ve phishing veya kötü amaçlı yazılım dağıtımını kolaylaştırır.
Mitigation Strategies
Azaltma stratejileri şunları içerir:
- Zayıf DNS kayıtlarını kaldırmak - Bu, alt alan adı artık gerekli değilse etkilidir.
- Alan adını talep etmek - İlgili bulut sağlayıcısıyla kaynağı kaydetmek veya süresi dolmuş bir alan adını yeniden satın almak.
- Zafiyetler için düzenli izleme - aquatone gibi araçlar, savunmasız alan adlarını tanımlamaya yardımcı olabilir. Kuruluşlar ayrıca, DNS kayıtlarının oluşturulmasının kaynak oluşturmanın son adımı ve kaynak yok etmenin ilk adımı olduğundan emin olarak altyapı yönetim süreçlerini gözden geçirmelidir.
Bulut sağlayıcıları için, alan adı sahipliğini doğrulamak, alt alan adı ele geçirmelerini önlemek için kritik öneme sahiptir. Bazıları, GitLab gibi, bu sorunu tanımış ve alan doğrulama mekanizmaları uygulamıştır.
References
- https://0xpatrik.com/subdomain-takeover/
- https://www.stratussecurity.com/post/subdomain-takeover-guide
- https://www.hackerone.com/blog/guide-subdomain-takeovers-20
tip
AWS Hacking'i öğrenin ve pratik yapın:HackTricks Training AWS Red Team Expert (ARTE)
GCP Hacking'i öğrenin ve pratik yapın: HackTricks Training GCP Red Team Expert (GRTE)
HackTricks'i Destekleyin
- abonelik planlarını kontrol edin!
- Bize katılın 💬 Discord grubuna veya telegram grubuna veya bizi takip edin Twitter'da 🐦 @hacktricks_live.
- Hacking ipuçlarını paylaşın, HackTricks ve HackTricks Cloud github reposuna PR göndererek.