<summary><strong>Sıfırdan kahraman olmak için AWS hacklemeyi öğrenin</strong><ahref="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
* **Şirketinizi HackTricks'te reklamını görmek istiyorsanız** veya **HackTricks'i PDF olarak indirmek istiyorsanız** [**ABONELİK PLANLARI**]'na göz atın (https://github.com/sponsors/carlospolop)!
* [**The PEASS Family**]'yi (https://opensea.io/collection/the-peass-family) keşfedin, özel [**NFT'lerimiz**]'i (https://opensea.io/collection/the-peass-family) içeren koleksiyonumuzu
* **Katılın** 💬 [**Discord grubuna**](https://discord.gg/hRep4RUj7f) veya [**telegram grubuna**](https://t.me/peass) veya bizi **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks\_live)**'da takip edin.**
* **Hacking püf noktalarınızı paylaşarak PR göndererek** [**HackTricks**](https://github.com/carlospolop/hacktricks) ve [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github depolarına katkıda bulunun.
XML'de XML'in imzalı kısmı belleğe kaydedilir, ardından bazı kodlama/çözme işlemleri gerçekleştirilir ve imza kontrol edilir. İdeal olarak, bu kodlama/çözme işlemi veriyi değiştirmemelidir, ancak bu senaryoya göre, **kontrol edilen veri ve orijinal veri aynı olmayabilir**.
**XML İmza Sarma saldırılarında (XSW)**, saldırganlar XML belgelerinin işlendiği iki farklı aşama olan **imza doğrulama** ve **işlev çağrısı** aşamalarında ortaya çıkan bir zafiyeti sömürürler. Bu saldırılar, XML belge yapısını değiştirerek gerçekleşir. Özellikle saldırgan, XML İmzasının geçerliliğini tehlikeye atmayan sahte öğeler **enjekte eder**. Bu manipülasyon, uygulama mantığı tarafından analiz edilen öğeler ile imza doğrulama modülü tarafından kontrol edilen öğeler arasında bir uyumsuzluk yaratmayı amaçlar. Sonuç olarak, XML İmzası teknik olarak geçerli kalır ve doğrulamayı geçer, ancak uygulama mantığı**sahte öğeleri** işler. Dolayısıyla saldırgan, XML İmzasının **bütünlük korumasını** ve **köken kimliğini doğrulamasını** etkisiz hale getirerek, algılanmadan **keyfi içerik enjekte etmeyi** mümkün kılar.
Aşağıdaki saldırılar [**bu blog gönderisine**](https://epi052.gitlab.io/notes-to-self/blog/2019-03-13-how-to-test-saml-a-methodology-part-two/) **ve** [**bu makaleye**](https://www.usenix.org/system/files/conference/usenixsecurity12/sec12-final91.pdf) dayanmaktadır. Daha fazla ayrıntı için bunları kontrol edin.
* **Etki**: Doğrulayıcı, meşru "Yanıt -> İddia -> Konu" ile saldırganın "kötü yeni Yanıt -> İddia -> Konu" arasında veri bütünlüğü sorunlarına yol açabilecek şekilde karışabilir.
* **Strateji**: Kopyalanan İddia'nın bir alt öğe olarak eklendiği bir Uzantı öğesi.
* **Etki**: Bu, özellikle OpenSAML gibi kütüphanelerde şema doğrulama karşı önlemleri atlamak için Uzantı öğesinin daha az kısıtlayıcı şemasını sömürür.
İsteği ayrıştırmak, seçtiğiniz herhangi bir XSW saldırısını uygulamak ve başlatmak için Burp uzantısı [**SAML Raider**](https://portswigger.net/bappstore/c61cfa893bb14db4b01775554f7b802e) kullanabilirsiniz.
SAML Yanıtları**sıkıştırılmış ve base64 kodlu XML belgeleri** dir ve XML Harici Varlık (XXE) saldırılarına duyarlı olabilir. SAML Yanıtının XML yapısını manipüle ederek, saldırganlar XXE zafiyetlerini sömürmeye çalışabilir. İşte böyle bir saldırının nasıl görselleştirilebileceği:
Ayrıca [**SAML Raider**](https://portswigger.net/bappstore/c61cfa893bb14db4b01775554f7b802e) adlı Burp eklentisini kullanarak SAML isteğinden POC oluşturabilir ve olası XXE güvenlik açıklarını ve SAML güvenlik açıklarını test edebilirsiniz.
Genişletilebilir Stil Sayfası Dönüşümleri (XSLT), XML belgelerini HTML, JSON veya PDF gibi çeşitli biçimlere dönüştürmek için kullanılabilir. **XSLT dönüşümlerinin dijital imzanın doğrulanmasından önce gerçekleştirildiğini** unutmamak önemlidir. Bu, saldırının geçerli bir imza olmadan bile başarılı olabileceği anlamına gelir; kendinden imzalı veya geçersiz bir imza yeterlidir.
Bu tür güvenlik açıklarını kontrol etmek için bir **POC** bulabilirsiniz, bu bölümün başında belirtilen hacktricks sayfasında payloadlar bulabilirsiniz.
Ayrıca, olası XSLT güvenlik açıklarını test etmek için bir SAML isteğinden POC oluşturmak için Burp eklentisi [**SAML Raider**](https://portswigger.net/bappstore/c61cfa893bb14db4b01775554f7b802e) kullanabilirsiniz.
**XML İmza Hariç Bırakma**, İmza öğesi bulunmadığında SAML uygulamalarının davranışını gözlemlemektedir. Bu öğe eksikse, **imza doğrulaması gerçekleşmeyebilir**, bu da zafiyete neden olabilir. Bu durumu test etmek için genellikle imzalanan içeriği değiştirerek yapabilirsiniz.
Sertifika Sahteciliği, bir **Hizmet Sağlayıcının (SP) bir SAML İletisinin güvenilir bir Kimlik Sağlayıcı (IdP) tarafından imzalandığını** doğru bir şekilde doğrulayıp doğrulamadığını test etmek için bir tekniktir. Bu, SAML Yanıtını veya Bildirisini imzalamak için bir \***kendi imzalı sertifika** kullanmayı içerir ve SP ile IdP arasındaki güven doğrulama sürecini değerlendirmeye yardımcı olur.
2. Yanıt bir imza içeriyorsa, sertifikayı`Sertifikayı SAML Raider Sertifikalarına Gönder` düğmesini kullanarak SAML Raider Sertifikalarına gönderin.
3. SAML Raider Sertifikaları sekmesinde, içe aktarılan sertifikayı seçin ve orijinal sertifikanın klonunu oluşturmak için `Kaydet ve Kendi İmzalı` düğmesine tıklayın.
4. Burp'un Proxy'sinde onaylanan isteğe geri dönün. XML İmza açılır menüsünden yeni kendi imzalı sertifikayı seçin.
6. Mesajı veya bildirimi yeni sertifika ile imzalayın **`(Yeniden) Mesajı İmzala`** veya **`(Yeniden) Bildirimi İmzala`** düğmesini kullanarak.
7. İmzalı mesajı iletilmesini sağlayın. Başarılı kimlik doğrulama, SP'nin kendi imzalı sertifikanız tarafından imzalanan mesajları kabul ettiğini gösterir ve SAML mesajlarının doğrulama sürecindeki potansiyel zafiyetleri ortaya çıkarır.
Token Alıcı Karışıklığı ve Hizmet Sağlayıcı Hedef Karışıklığı, **Hizmet Sağlayıcının yanıtın amaçlanan alıcısını doğru bir şekilde doğrulayıp doğrulamadığını** kontrol etmeyi içerir. Temelde, bir Hizmet Sağlayıcının, yanıtın farklı bir sağlayıcı için mi yoksa doğru sağlayıcı için mi olduğunu doğrulaması gerekir. Buradaki kritik unsur, bir SAML Yanıtının **SubjectConfirmationData** öğesinde bulunan **Alıcı** alanıdır. Bu alan, Bildirimin nereye gönderilmesi gerektiğini belirten bir URL'yi belirtir. Gerçek alıcı, amaçlanan Hizmet Sağlayıcı ile eşleşmiyorsa, Bildirim geçersiz kabul edilmelidir.
Bir SAML Token Alıcı Karışıklığı (SAML-TRC) saldırısının gerçekleştirilebilmesi için belirli koşulların sağlanması gerekir. İlk olarak, bir Hizmet Sağlayıcıda (SP-Legit olarak adlandırılır) geçerli bir hesap olmalıdır. İkinci olarak, hedeflenen Hizmet Sağlayıcının (SP-Hedef) SP-Legit'i hizmet veren aynı Kimlik Sağlayıcıdan tokenları kabul etmesi gerekir.
Bu koşullar altında saldırı süreci basittir. Paylaşılan Kimlik Sağlayıcı aracılığıyla SP-Legit ile otantik bir oturum başlatılır. Kimlik Sağlayıcıdan SP-Legit'e gelen SAML Yanıtı onaylanır. Başlangıçta SP-Legit için amaçlanan bu SAML Yanıtı, daha sonra SP-Hedefe yönlendirilir. Bu saldırıda başarı, SP-Hedefin Bildirimi kabul etmesi ve SP-Legit için kullanılan aynı hesap adı altında kaynaklara erişim sağlamasıyla ölçülür.
Bu, `base` parametresinin bir URL'yi kabul ettiğini ortaya koydu. Buna göre, URL'yi `javascript:alert(123);` ile değiştirerek bir XSS (Cross-Site Scripting) saldırısını başlatma girişimi ortaya çıktı.
`uberinternal.com` alt alanlarını analiz etmek için [**SAMLExtractor**](https://github.com/fadyosman/SAMLExtractor) aracı kullanıldı ve aynı kütüphaneyi kullanan alanları inceledi. Daha sonra, `oidauth/prompt` sayfasını hedeflemek için bir betik geliştirildi. Bu betik, veri girişi yaparak XSS (Cross-Site Scripting) test eder ve çıktıda yansıtılıp yansıtılmadığını kontrol eder. Giriş gerçekten yansıtıldığında, betik sayfayı savunmasız olarak işaretler.
<summary><strong>Sıfırdan kahraman olmak için AWS hackleme öğrenin</strong><ahref="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
* **Şirketinizi HackTricks'te reklamınızı görmek istiyorsanız** veya **HackTricks'i PDF olarak indirmek istiyorsanız** [**ABONELİK PLANLARI**](https://github.com/sponsors/carlospolop)'na göz atın!
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)'yi keşfedin, özel [**NFT'lerimiz**](https://opensea.io/collection/the-peass-family) koleksiyonumuzu
* **💬 [**Discord grubuna**](https://discord.gg/hRep4RUj7f) veya [**telegram grubuna**](https://t.me/peass) katılın veya bizi **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks\_live)'da **takip edin**.**