Ver Mensaje Individual
  #3 (permalink)  
Antiguo 26/11/2009, 01:51
Avatar de Triby
Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 15 años, 8 meses
Puntos: 2237
Respuesta: Seguridad en Php

1- Valida todos los datos ingresados o modificables por el usuario: $_GET, $_POST, $_COOKIE, $_SESSION

2- Asegurate de que cada dato sea del tipo esperado y con los valores minimo y maximo de acuerdo a tu script y/o base de datos

3- Nunca intentes hacer include de un archivo directamente de una variable introducida o modificable por el usuario, siempre validala primero

4- Elimina caracteres no validos o conviertelos a sus entidades HTML htmlentities() o htmlspecialchars, o bien, elimina etiquetas inseguras como <script...>, <?php, <?

5- Antes de incluir un dato en una consulta de base de datos asegurate de escaparla correctamente, en MySQL la funcion es mysql_real_escape_string()

6- Si tienes un sistema de registro de usuarios, banea por al menos 1 hora al usuario que intente ingresar 5 veces con datos incorrectos y siempre guarda las contraseñas encriptadas, ya sea con md5() o con sha1()

7- Si permites que otros usuarios suban archivos verifica la extension y tipo de los mismos y nunca hagas include a un archivo de esos, si son de texto es mejor leerlos con file() o file_get_contents() y mostrar el contenido con echo o, si se trata de imagenes, muestralas directamente con la etiqueta <img... />

Seguramente se me escapa algo, pero, en terminos generales, con estas practicas puedes minimizar los riesgos.
__________________
- León, Guanajuato
- GV-Foto