Avatar Image
Usuario Novato
Usuario Novato

Hola!

Me hice un foro bastante simple en php y sql (una tabla con los mensajes, otra con los usuarios, una pagina que muestra los mensajes, otra que agrega etc.), y me gustaría saber que debo hacer para darle un mínimo de seguridad al foro antes de seguir trabajando en el.

En realidad no se mucho de como podrían hackear un foro (solo he visto mensajes de gente que dice haberlo hecho) por eso decidí preguntar aquí.

Avatar Image
Machacateclados
Machacateclados

Bueno...ke se puede decir, seguridad es varia: lo primero, evita quepuedan usar html o codigo php para ello antes de insertar los datos en la mysql pasas la variable por esto
$variable=htmlspecialchars($variable) asi nadie permitira nada de negritas ni codigos(digo si tu foro es simple no necesitas eso) asi evitas que graciosos pongan alertas con <script> y que te hagan un phpinfo en medio del foro digo a nadie le gusta eso, si le kieres añadir smilies simplemente en script ke sacas pones esto por el bucle
$var[camposql]=str_replace("smiletextoejem()","<img src=urlimg/img">",$var[camposql]);
eso ya te un poco mas de seguridad porke solo sale el html que tu kieres saludos

Avatar Image
Okupa del foro
Okupa del foro

Una cosa muy importante, no uses config.inc por ejemplo para la configuración, porque te lo pueden ver.

Bye.

Atomo64
Machacateclados
Machacateclados
Escrito originalmente por ivanitoweb
Una cosa muy importante, no uses config.inc por ejemplo para la configuración, porque te lo pueden ver.

Bye.

todos los ficheros de configuración ponlos como .php y que no se te olvide el <?php y ?> para que sean procesados por php y así no los puedan ver, evita cargas grandes de mensajes, que no suban archivos mayores de 1Mb de preferencia, que no puedan subir archivos que no sean .jpg .gif .png .zip .rar .doc, etc que no puedan subir princiaplmente exe, src, html y php html y php por que pueden usar una técnica en la que consiste en que se pone un programa como html, la verdad no se muy bien como funciona, pero obtienen un html que cuando lo abren es como/parecido si abrieras el exe
Avatar Image
Okupa del foro
Okupa del foro

Eso es, supongo...

Avatar Image
@man / @woman
@man / @woman
lee sobre los ataques XSS e injection MySQL para evitar dichos ataques.

Saludos
The Ghost
Atomo64
Machacateclados
Machacateclados

bueno, para hacerlo en pocas palabras pero no cubriendo todo: las mysql injeccions son puntos vulnerables en el código php que permite meter datos en mysql de manera no autorizada provocando daños, etc.

labete666
Usuario habitual
Usuario habitual

Hay dos SQL injections bastante conocidas que consisten en que al hacer el login, se pone por ejemplo en el nick:

Codigo:
admin'--


Y con ello se sonsigue que la siguente parte de la consulta a la base de datos(la correspondiente a la validación del password) se omita por los dos menos --

Hay otra que consiste en poner en el password un numero cualquiera seguido de or 0=0

Codigo:
clave' or 0=0


al ser siempre cierta la segunda evaluación la clave se da como verdadera.

Si tu foro tiene login procura que al menos no sea vulnerable a esas dos SQL injections.

Salu2
Avatar Image
Okupa del foro
Okupa del foro

Haz una funcion "revisar" en JS, es lo que hace mucha gente... y no permitas esos caracteres...

Atomo64
Machacateclados
Machacateclados

mejor instala el easyphp en tu pc y utiliza el php en modo de debug y haces intentos, piensa que quieres hackear tu foro. www.easyphp.org

Avatar Image
Okupa del foro
Okupa del foro

Otra cosilla, si haces stripslashes y htmlspecialchars, antes del login, y del registro, esos caracteres van a quedar descalificados...

Bye.

Atomo64
Machacateclados
Machacateclados

también puedes evitar problemas comprobando las claves usando hashes en lugar de claves en directo, por ejemplo:
$passdeuser=md5($_POST["clave"]);
$passcorrecta=md5($passmsqluser);
if($passdeuser==$passcorrecta)
entrar();


por ejmplo

Avatar Image
Okupa del foro
Okupa del foro

O como phpBB, registrar directamente, MD5 en mysql, y despues el query en MD5. solo que despues no podria hacer el emailer de reenviar contraseña...

Avatar Image
@man / @woman
@man / @woman
Escrito originalmente por ivanitoweb
O como phpBB, registrar directamente, MD5 en mysql, y despues el query en MD5. solo que despues no podria hacer el emailer de reenviar contraseña...


Esos mails se basan en enviar un código de confirmación que son los primeros X digitos de la contraseña codificada en md5... es decir yo meto la contraseña, se hace md5 y se convierte en abc123sdfdfdfsggfgd pues el mail me enviarian como código de confirmación abc123, después lo escribo se comprueba que es el usuario y se le pide un nuevo password o se genera uno.
Avatar Image
Okupa del foro
Okupa del foro

Ah, ya, pero bueno, no le haces eso, le pones que al hacer envio de pass, lo regenere, y ya esta...

Atomo64
Machacateclados
Machacateclados

también puedes incluir un código javascript para que encripte la clave antes de mandarla, pero no podrías mandarle la clave, pero tu si podrías cambiarla o simplemente mandarle un recordatorio

ATENCIÓN: Este tema no tiene actividad desde hace más de 6 MESES,
te recomendamos abrir un nuevo tema en lugar de responder al actual
Opciones:
Ir al subforo:
Permisos:
TU NO PUEDES Escribir nuevos temas
TU NO PUEDES Responder a los temas
TU NO PUEDES Editar tus propios mensajes
TU NO PUEDES Borrar tus propios mensajes
Temas similares
TemaUsuariosRespuestasVisitasActividad
Por: , el 25/Nov/2009, 21:06
xiomarabb NoSetup.org maquina_fatal42kNov/09
Por: , el 20/Nov/2009, 22:27
romansan aerialss8812kNov/09
Por: , el 22/Nov/2008, 19:31
River_mdp NoSetup.org33kNov/08
Por: , el 06/Jun/2007, 16:14
elgranforo07 NoSetup.org12kJun/07
Por: , el 20/Abr/2006, 06:52
xxxCloud_Striferxxx chavp22kApr/06