Hola a todos,
Os explico, desde hace 4 o 5 años gestiono una web, eso me ha hecho ir aprendiendo php de forma autodidacta, modificando cosas al principio más sencillas y poco a poco más complejas. Pero el no haber asistido a una escuela para aprender a programar hace que en ciertas ocasiones desconozca los peligros que pueden haber por no tomar las medidas de seguridad oportunas.
Me gustaria que me ayudarais facilitando codigo y links o cualquier material para poder tener un sitio lo más seguro posible.
Alguna funcion para evitar los ataques por "injection sql" y "XSS" sería bienvenida.
Algunas dudas para comenzar
:
- ¿Hay que tomar alguna precaucion para evitar ataques por la barra de direccion del navegador? En un CMS que usaba habia este codigo:
Código PHP:
$direccion = $_SERVER["REQUEST_URI"];
if (eregi("(\./)|(://)|(\.%2F)|(:%2F%2F)|(%3A)|(<)|(>)|(%3C)|(%3E)|(admin=)|(user=)|(http)|(ftp)|(pwd)|(nuke_authors)|(radminsuper)|(union)|(/\*.*\*/)|(%25)|(dW5pb24)|(VU5JT04)",$direccion)){
$direccion2 = base64_encode($direccion);
Header("Location: security.php?codigo=$direccion2");
die();
}
Pero por ejemplo si creaba un post que se llamara "La re
union más esperada" saltaba la seguridad al contener "union" en la barra de dirección.
- Cuando recibes algo por POST o por GET ¿bastaría con por ejemplo aplicar:
Código PHP:
$titulo = mysql_real_escape_string($_POST["titulo"]);
y filtrar con una funcion que evite el XSS y la injection sql?
No sé cualquier aportación, aclaración y consejo será bienvenido.
Un saludo!