Cookie Tossing

AWS hackleme konusunda sıfırdan kahramana kadar öğrenin htARTE (HackTricks AWS Kırmızı Takım Uzmanı)!

HackTricks'ı desteklemenin diğer yolları:

Açıklama

Eğer bir saldırgan bir şirketin alt alan adını veya alan adını kontrol edebilirse veya bir alt alanda XSS bulursa, bu saldırıyı gerçekleştirebilir.

Çerezler Hakkında bölümünde belirtildiği gibi, bir çerez bir alan adına ayarlandığında (belirtilerek) bu alan adında ve alt alanlarda kullanılacaktır.

Bu nedenle, bir saldırgan alan adına ve alt alanlara belirli bir çerez ayarlayabilecek ve bunu şöyle yaparak yapabilecektir: document.cookie="session=1234; Path=/app/login; domain=.example.com"

Bu tehlikeli olabilir çünkü saldırgan şunları yapabilir:

  • Kurbanın çerezini saldırganın hesabına sabitleyebilir, böylece kullanıcı fark etmezse, saldırganın hesabında işlemleri gerçekleştirecek ve saldırgan bazı ilginç bilgiler elde edebilir (kullanıcının platformdaki arama geçmişini kontrol edin, kurban kredi kartını hesaba kaydedebilir...)

  • Eğer çerez girişten sonra değişmezse, saldırgan sadece bir çerez sabitleyebilir (oturum sabitleme), kurbanın giriş yapmasını bekler ve ardından o çerezi kullanarak kurban olarak giriş yapabilir.

  • Bazen, oturum çerezleri değişse bile, saldırgan önceki çerezi kullanabilir ve yeni olanı da alabilir.

  • Eğer çerez başlangıç değeri ayarlıyorsa (örneğin, flask'ta çerez oturumun CSRF belirtecini ayarlayabilir ve bu değer kurban giriş yaptıktan sonra korunacaktır), saldırgan bu bilinen değeri ayarlayabilir ve ardından kötüye kullanabilir (bu senaryoda, saldırgan daha sonra kullanıcıyı CSRF isteği yapmaya zorlayabilir çünkü CSRF belirtecini biliyor).

  • Değeri ayarladığı gibi, saldırgan ayrıca sunucu tarafından oluşturulan kimliksiz bir çerez alabilir, CSRF belirtecini alabilir ve bunu kullanabilir.

Çerez Sırası

Bir tarayıcı, aynı adı taşıyan iki çerez aldığında aynı kapsamı kısmen etkileyen (alan adı, alt alanlar ve yol) her iki çerezin değerini de gönderecektir.

Tarayıcı, en spesifik yolun kimde olduğuna veya hangisinin daha eski olduğuna bağlı olarak, önce çerezin değerini ayarlayacak ve ardından diğerinin değerini ayarlayacaktır gibi: Cookie: iduser=DahaSpesifikVeEskiÇerez; iduser=DahaAzSpesifik;

Çoğu web sitesi yalnızca ilk değeri kullanacaktır. Dolayısıyla, bir saldırganın bir çerez ayarlamak istemesi durumunda, başka birinin ayarlanmasından önce ayarlaması veya daha spesifik bir yol ile ayarlaması daha iyidir.

Ayrıca, daha spesifik bir yol ile çerez ayarlayabilme yeteneği çok ilginçtir çünkü kurbanın çerezini belirli bir yolda kötü niyetli çerez ayarlanmadan önce çalıştırabilirsiniz.

Koruma Atlatma

Bu saldırıya karşı olası koruma, web sunucusunun aynı ada sahip ancak farklı değerlere sahip iki çerezle gelen istekleri kabul etmemesi olabilir.

Saldırganın, kurban zaten çerezi aldıktan sonra çerez ayarladığı senaryoyu atlatmak için, saldırgan bir çerez taşmasına neden olabilir ve ardından, bir kere meşru çerez silindiğinde, kötü niyetli olanı ayarlayabilir.

pageCookie Jar Overflow

Başka bir yararlı atlatma yöntemi, çerezin adını URL kodlamak olabilir çünkü bazı korumalar istekte aynı ada sahip 2 çerez kontrol eder ve ardından sunucu çerezlerin adlarını çözer.

Çerez Bombası

Bir Çerez Atma saldırısı aynı zamanda bir Çerez Bombası saldırısı gerçekleştirmek için de kullanılabilir:

pageCookie Bomb

Savunmalar

Çerez adında __Host öneki kullanın

  • Bir çerez adında bu önek varsa, bu önekli çerez yalnızca Güvenli olarak işaretlenmişse, güvenli bir kökenden gönderilmişse, bir Alan özelliği içermiyorsa ve Yol özelliği / olarak ayarlanmışsa Set-Cookie yönergesinde kabul edilecektir

  • Bu, alt alanların bir çerezi kök alanına zorlamasını önler çünkü bu çerezler "alan kilidinde" olarak görülebilir

Referanslar

AWS hackleme konusunda sıfırdan kahramana kadar öğrenin htARTE (HackTricks AWS Kırmızı Takım Uzmanı)!

HackTricks'ı desteklemenin diğer yolları:

Last updated