Web Cache Poisoning
Last updated
Was this helpful?
Last updated
Was this helpful?
Web cache poisoning, bir saldırganın bir web sunucusunun ve cache'in davranışını istismar ederek diğer kullanıcılara zararlı bir HTTP yanıtı göndermesini sağlayan gelişmiş bir tekniktir.
Temel olarak, Web cache poisoning iki aşamadan oluşur. İlk olarak, saldırganın back-end sunucudan bir tür tehlikeli payload içeren bir yanıtı nasıl ortaya çıkaracağını bulması gerekir. Başarılı olduklarında, yanıtlarının önbelleğe alındığından ve daha sonra hedeflenen kurbanlara sunulduğundan emin olmaları gerekir.
Zehirlenmiş bir web önbelleği, XSS, JavaScript injection, open redirection gibi güvenlik açıklarından yararlanarak çok sayıda farklı saldırıyı dağıtmak için potansiyel olarak yıkıcı bir araç olabilir.
Bu saldırının yapılabilmesi için sayfanın cachelendiğini kontrol etmemiz gerekli. Bunu burp pasif taramada gösterir. Aynı zamanda response içinde aşağıdaki gibi headerlar var ise anlayabiliriz.
Param miner eklentisinin guess everything! seçeneği ile hangi başlık veya parametre yansıyor öğrenebiliriz.
Eğer cookieler yanıtta yansıyorsa xss tetiklenebilir.
Eğer bu başlık ile cache tetiklenmiyorsa kullanıcıları istediğimiz url'e yönlendirebiliriz.
Eğer url parametresi sayfada yansıyorsa fakat cache mekanizmasını etkilemiyorsa cache poisoning yapılabilir.
Eğer bir isteğe parametre eklediğinde cache etkileniyorsa & karakteri ; karakterini kullanarak eklemeyi deneyebiliriz.
Eğer bir parametre URL parametresi olarak gönderildiğinde cache tetikleniyorsa aynı parametreyi body'de göndererek cache tetiklenmemesini sağlayabiliriz.
Normalde encode edildiği için çalışmayan bir xss payload cache edildikten sonra gösterildiğinde tetiklenebilir. Çünkü bazen cache mekanizması URL decode yapabilir.
Burp Param Miner : https://portswigger.net/bappstore/17d2949a985c4b7ca092728dba871943