4 - Exploiting cache server normalization for web cache deception
Web cache deception lab delimiter list | Web Security Academy
En este caso, como es el CDN el que interpreta el path traversal , hay que buscar un payload que cachee el CDN e interprete el servidor:
1.
/profile%2f%2e%2e%2fstatic
El CDN: interpreta como /static y cachea
El servidor : interpreta como /profile%2f%2e%2e%2fstatic
Falla y tira 404. ❌
2.
/profile;%2f%2e%2e%2fstatic
El CDN: interpreta como static y cachea
El servidor : interpreta como /profile
Se cachea una respuesta dinámica. ✅
Lab:
El payload : /my-account;%2f%2e%2e%2fresources
Se cachea (porque lo interpreta bien el CDN) , pero no se interpreta bien por el servidor (porque el servidor ve tal cual /profile%2f%2e%2e%2fstatic ) y retorna 404 (1.) ❌
Fuzzeamos para encontrar delimitador correcto, a parte de la lista, usamos también %00, %0A y %09
Encontramos %23 como delimitador , que devuelve 200.
El payload : /my-account%23%2f%2e%2e%2fresources
Se cachea (porque el CDN interpreta el path traversal) y se muestra account (200) porque el servidor corta a partir de %23 (2.) ✅