Vous êtes sur la page 1sur 2

SEGURIDAD EN PHP

Tips
1. POST
Cualquier formulario debe siempre enviar la informacin de su contenido
usando el mtodo POST. Con POST los valores del formulario viajan ocultos
hacia el script de destino. Si un formulario utiliza el mtodo GET, toda la
informacin del mismo ser desplegada en la barra de direcciones del
browser.
2. Token
Es necesario que el script que va a procesar la informacin del formulario
tenga algn modo de reconocer que efectivamente la informacin proviene de
el formulario para el cul fue diseado. Para ello, normalmente se utiliza un
token o cdigo encriptado que se enva como un campo oculto en el
formulario y que el script puede desencriptar para validar si procesa o rechaza
el formulario.
La mayora de los frameworks para desarrollo web, como CakePHP, ya
integran el token como una validacin automtica en sus formularios.
3. Proteccin CSRF
CSRF significa Cross Site Request Forgery o Falsificacin de Peticin en
Sitios Cruzados en espaol. Este tipo de vulnerabilidad trata de enviar datos
de un formulario a un script ubicado en un sitio web distinto. Para evitar este
ataque se debe chequear el sitio web del que proviene el formulario. Por
ejemplo, en PHP se puede usar la variable $_SERVER["HTTP_REFERER"]
para validar desde dnde viene la informacin. No obstante, esta variable
puede ser modificable o no provista, por lo cual una manera ms confiable de
validar que el formulario haya sido enviado desde el dominio correspondiente
es utilizando Cookies.
4. Validaciones Javascript
Validar que los campos requeridos de un formulario se hayan completado y
que tengan un formato y extensin apropiados mejora grandemente la
experiencia del usuario y dificulta los posibles ataques. Se debe verificar que
los campos del formulario permitan una cantidad razonable de caracteres y

que respeten el formato pedido. Por ejemplo, usando Javascript, se puede


limitar un campo para que solamente admita nmeros.
Existen muchsimas libreras para javascript que permiten facilitar la
validacin de un formulario antes de su envo. Por ejemplo Jquery Validate es
un plugin de la librera Jquery que permite realizar validaciones de campos
numricos e emails con un formato muy sencillo. Similarmente, Masket
Input es otro plugin de Jquery que no solo restringe el tipo y nmero de
caracteres admitidos en un input, si no que tambin les da formato conforme
el usuario escribe.
5. Validaciones Internas
De cualquier forma, los navegadores permiten desactivar el Javascript, razn
por la cul se hace necesaria la validacin de los campos y de su formato
desde el script final. Esto es importante ya que los ataques maliciosos podran
intentar enviar cdigo por un formulario, que al ser ledo o desplegado podra
ejecutarse y causar serios problemas. Este tipo de ataque es conocido como
XSS o Cross Site Scripting. En PHP, por ejemplo, una simple lnea de cdigo
permitira filtar una entrada dependiendo de si queremos recibir texto o cdigo
html

Medidas
Recomendaciones
Ventajas/Desventajas
Ejemplos

Vous aimerez peut-être aussi