Llevo varios dias siguiendo este hilo y a dia de hoy tengo varias preguntas...
Primero de todo, he provado el htmlentities.. Y con estos códigos y está entrada me da una salida que no entiendo...
<FORM ACTION="CodigoAntiXSSRecepcion.php" METHOD="get">
<INPUT TYPE="text" NAME="vuln">
<BR><BR>
<INPUT TYPE="submit" VALUE="Enviar">
</FORM>
Esto es lo que le he introducido:
(hola<>\\\"n\'-hlaEste es el código de recepcion:
<?php
$var = $_GET["vuln"];
?>
<FORM>
<BR>
Has escrito: <?php echo $var2; ?>
</FORM>
Y esta es la salida:
(hola<>\\\\\\\"n\\\'-hlaNo se me tendrían que eliminar tags como '<', '>', '\','&'??? Si no es así no sé para qué usar htmlentities...
Con el otro código me ha funcionado...el input era
(hola<>\\\"n\'-hla& y el output ha sido:
(hola<>"n-hla , con lo que me ha eliminado lo que tenía que eliminar.
Aquí va mi otra duda, se ha demostrado que el código de htmlentities es bastante más rápido, pero con el casero puedo evitar entradas como :
CHAR(83,69,76,69,67,84,32, 42,32,70,82,79,77,32,81,85,69,82,73,69,83)
Para evitar SQL injections.
O cadenas codeadas en hexadecimal o octal para evitar un RFI, no?
Por lo que he leido eso no lo puedes hacer con la función nativa.
Aviso: Soy un completo novato... Así que piedad si digo estupideces ^^