hacktricks/src/pentesting-web/domain-subdomain-takeover.md

7.1 KiB
Raw Blame History

Domain/Subdomain takeover

{{#include ../banners/hacktricks-training.md}}

Domain takeover

Eğer kapsam içinde bir hizmet tarafından kullanılan bir alan adı (domain.tld) keşfettiyseniz ancak şirket bu alan adının sahipliğini kaybetmişse, bunu kaydetmeyi (eğer yeterince ucuzsa) deneyebilir ve şirkete bildirebilirsiniz. Eğer bu alan adı, bir oturum çerezi gibi hassas bilgiler alıyorsa GET parametresi veya Referer başlığı aracılığıyla, bu kesinlikle bir ıktır.

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çirme işlemini gerçekleştirebilirsiniz.

Olası ele geçirmeleri kontrol etmek için çeşitli sözlüklerle birlikte birçok araç bulunmaktadır:

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ümlenecektir. Bu bir A IP adresi, bir CNAME olabilir...

Örneğin, *.testing.com 1.1.1.1 adresine wildcard olarak ayarlandıysa, not-existent.testing.com 1.1.1.1 adresine 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 adresinin oraya işaret ettiğini söyleyebilir. Çünkü, CNAME wildcard saldırgana kurbanın alan adı için keyfi alt alan adları oluşturma yetkisi verecektir.

Bu açığın 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 internet üzerindeki belirli bir alan adı için 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 şeffaflık, tarayıcıların alan adlarını oltalama saldırılarına karşı savunmasız hale getirir. Saldırganlar bu amaçla typosquatting veya Doppelganger domains kullanabilir. Özellikle, oltalama e-postasında URL'nin meşru göründüğü alan adları savunmasızdır, bu da kullanıcıları kandırarak alan adının doğuştan güveni nedeniyle spam filtrelerinden kaçınmalarına neden olur.

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 alan adlarının meşruiyetini artırır ve oltalama saldırılarını daha inandırıcı hale getirir.

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, tehlikeye atılmış bir alt alan adına yönlendirerek oturum çerezlerini toplayabilir.

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 oltalama 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 adını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 adı altında bir sayfa oluşturma imkanı tanır ve oltalama veya kötü amaçlı yazılım dağıtımını daha da kolaylaştırır.

Mitigation Strategies

Azaltma stratejileri şunları içerir:

  1. Savunmasız DNS kayıtlarını kaldırmak - Bu, alt alan adı artık gerekli değilse etkilidir.
  2. 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.
  3. Savunmasızlıklar 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 adı doğrulama mekanizmaları uygulamıştır.

References

{{#include ../banners/hacktricks-training.md}}