Underc0de

Foros Generales => Dudas y pedidos generales => Mensaje iniciado por: yoelrodguez en Abril 27, 2021, 07:22:05 PM

Título: Problema con xss
Publicado por: yoelrodguez en Abril 27, 2021, 07:22:05 PM
Tengo la siguiente situación, tengo una función para evitar a taques xss por $_POST en php pero haciendo un escaneo de prueba me arroja que soy vulnerable a continuación le dejo el código para ver si me pueden ayudar.

function input_post($campo){
if(isset($_POST[$campo])){
return htmlspecialchars($_POST[$campo], ENT_QUOTES, 'UTF-8');
}else{
return NULL;
}
}
Título: Re: Problema con xss
Publicado por: ANTRAX en Abril 28, 2021, 07:37:34 AM
Probá con htmlentities. Te quedaría así:

Código (php) [Seleccionar]
return '.htmlentities($_POST[$campo]', ENT_QUOTES, 'UTF-8');

Saludos!
ANTRAX
Título: Re: Problema con xss
Publicado por: rollth en Mayo 06, 2021, 01:38:38 PM
Hola,

Con el contexto que nos has dado es difícil saber por qué ese código es vulnerable a XSS, la función que estás utilizando encodea los siguientes caracteres  <, >, &, ", pero dependiendo de la versión no encodea ', por lo que dependiendo del caso podría ser vulnerable.

Por otro lado, según donde lo estes poniendo ni hará falta una comilla para poder ejecutar código.

Código (php) [Seleccionar]
echo "<img src=".htmlspecialchars($_GET['campo'], ENT_QUOTES, 'UTF-8').">";

Fijate que aquí uses la función que uses va a ser vulnerable a XSS.

(https://i.imgur.com/3xim8o8.png)

Como te comento dependerá mucho de tu caso, si nos puedes dar más información mejor que mejor, si no, la herramienta que dice que es vulnerable debería decirte que Payload ha usado y ahí podrás ver como solucionarlo.

Un saludo.
Título: Re: Problema con xss
Publicado por: kcArrol en Mayo 07, 2021, 12:36:46 PM
Hola si encontraste alguna solución?