Foros del Web » Programando para Internet » PHP »

Paranoia en seguiridad con PHP

Estas en el tema de Paranoia en seguiridad con PHP en el foro de PHP en Foros del Web. Bueno, estoy haciendo mi primera página web, y antes de colgarla estoy empezando a ser paranoico con esto de la seguridad, considero varios puntos importantes ...
  #1 (permalink)  
Antiguo 16/11/2010, 14:26
 
Fecha de Ingreso: octubre-2010
Mensajes: 69
Antigüedad: 9 años, 1 mes
Puntos: 1
Paranoia en seguiridad con PHP

Bueno, estoy haciendo mi primera página web, y antes de colgarla estoy empezando a ser paranoico con esto de la seguridad, considero varios puntos importantes a hacer cuando quiero blindar la aplicación ante posibles ataques, XSS injection, indexación, etc... y que me gustaría comentarles y que quiero que participeis porque tengo varias dudas sobre su efectividad (nada es 100% seguro, pero un mínimo de seguridad es recomendable).

El registro de usuario voy a meterlo en una tabla mysql donde aparte de los datos personales como email y password, les meto además un tokenid.

Cada inicio de sesión aplico un regenerate_sessionid, así como creo un token basado en un numero aleatorio que guardo en una tabla para testear en cada página.

Los passwords hay que guardarlos en hash, aunque este hash es una combinación de elementos como el seed de un numero aleatorio, el numero aleatorio, el propio password y el username. (esto por tomar un ejemplo).

Jamás debo aplicar directamente con post[] al insertar datos en una tabla, antes paso el post a una variable, y lo "sanitizo" (aplico regular expresions, y demás filtros para comprobar que son datos correctos) y luego inserto dicha variable a la tabla.

Lo que me preocupa es si es seguro crear una clase usuario con sus datos para no tener que leer constantemente la tabla mysql y luego pasar la variable de esa clase a través de páginas por medio de sesiones. Y simplemente para comprobar si el usuario es el que dice ser solo compruebo el token que está registrado en su clase esté también en la tabla. Sería buena idea que la función que revise dicho token también lo renueve (vuelva a crear otro token nuevo y vuelva a guardar este token en la clase del usuario y su tabla).

Creo una lista de palabras prohibidas para comparar los inputs de los usuarios si coincide alguna guardo el ip en una lista negra de suspensión temporal o indefinida (pero como existen las ips dinámicas no lo veo factible).

Crear siempre capchas en los forms de registro.

¿es recomendable aplicar serialize a una variable que es una instancia a una clase antes de guardarlo en una sessión?

Bueno, vosotros contareis, un saludo.

Última edición por nomafeito; 16/11/2010 a las 14:59
  #2 (permalink)  
Antiguo 17/11/2010, 09:08
 
Fecha de Ingreso: octubre-2010
Mensajes: 69
Antigüedad: 9 años, 1 mes
Puntos: 1
Respuesta: Paranoia en seguiridad con PHP

Me pregunto una cosa, ¿es factible escribir un fichero de identificación en el disco duro del ordenador cliente y luego leer esos datos cada vez que se precise para autentificación? ¿o hace lo mismo que una SESSION?
  #3 (permalink)  
Antiguo 17/11/2010, 10:04
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 13 años, 6 meses
Puntos: 2135
Respuesta: Paranoia en seguiridad con PHP

Recuerda que PHP se ejecuta en el servidor, no puedes escribir nada en el cliente, lo que puedes hacer es enviar contenido al cliente y ya el cliente decide si lo quiere guardar, o imprimir etc. y lamentablemente no puedes leer de regreso ese archivo ya que es decision del cliente si te envia o no esa información.

Saludos.
  #4 (permalink)  
Antiguo 17/11/2010, 10:07
 
Fecha de Ingreso: octubre-2010
Mensajes: 69
Antigüedad: 9 años, 1 mes
Puntos: 1
Respuesta: Paranoia en seguiridad con PHP

Cita:
Iniciado por GatorV Ver Mensaje
Recuerda que PHP se ejecuta en el servidor
Anda la leche! Cierto! es que he tenido que aprender tantas cosas en tan poco tiempo que lo tengo todo mezclado, mira que confundir con javascript.
  #5 (permalink)  
Antiguo 17/11/2010, 11:41
 
Fecha de Ingreso: noviembre-2008
Mensajes: 31
Antigüedad: 11 años
Puntos: 1
Respuesta: Paranoia en seguiridad con PHP

tambien ahora que se un poco mas, quise saber mas aún,
lo de sanitizar las tablas me nació por este chiste.


despues descubri que eso era solo para las entradas de datos, y que tambien se debe hacer para la salida de datos desde la base de datos. (no me acuerdo como se llama, ahora estoy en otra, con mucho sueño)
  #6 (permalink)  
Antiguo 17/11/2010, 12:06
 
Fecha de Ingreso: octubre-2010
Mensajes: 69
Antigüedad: 9 años, 1 mes
Puntos: 1
Respuesta: Paranoia en seguiridad con PHP

JUAS! para partirse aun mas la raja!!!

XDDDDDDDDDDDDD
  #7 (permalink)  
Antiguo 17/11/2010, 12:23
 
Fecha de Ingreso: octubre-2010
Mensajes: 69
Antigüedad: 9 años, 1 mes
Puntos: 1
Respuesta: Paranoia en seguiridad con PHP

Cita:
Iniciado por darkporn Ver Mensaje
...y que tambien se debe hacer para la salida de datos desde la base de datos. ...
Me acabas de dar una buena información, gracias!!!!

Etiquetas: Ninguno
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 07:54.