Autor
|
Tema: Buenos habitos para hacer queries SQL? (Leído 4,852 veces)
|
Karcrack
Desconectado
Mensajes: 2.416
Se siente observado ¬¬'
|
Iba a poner este tema en la sección de PHP, pero creo que aqui sabreis informarme mejor Antes que nada, decir que voy a iniciar de aqui poco un pequeño proyecto y en el hay partes PHP que trabajan con bases de datos.. Mi pregunta es simple: Cuales son los buenos habitos a la hora de acceder a la base de datos desde PHP? Para evitar inyecciones y tal... Muchas gracias
|
|
|
En línea
|
|
|
|
bizco
Desconectado
Mensajes: 698
|
Pues limpiar siempre la cadena, todos los datos por tontos que puedan parecer si vienen de la parte cliente limpialos pq puede que contengan algo que tu script no espera y ahi empiezan los problemas. de todos modos cuando lo tengas listo si quieres puedes publicarlo y entre unos y otros podemos ver si hay algo raro.
|
|
|
En línea
|
|
|
|
tragantras
Desconectado
Mensajes: 465
|
Hola Karcrack, antes que nada, especial ojo a TODOS los valores que se reciban por parte del usuario, esto incluye (pero no se limita a ):
COOKIES X_FORWARDED_FOR CABECERAS EN GENERAL GETs POSTs VARIABLES DE SESION...
las cadenas encierralas en la query que vayas a hacer entre comillas simples, y aplicale mysql_real_escape_string, así mismo los valores numéricos deberías hacerle un casting a entero mediante (int), si quiers comprueba primero que sea numerico (is_numeric()).
Magic quotes off, ya sabes y... bueno, poca cosa más, cuando entre en linux si quiers te subo un cheatsheet sobre seguridad web, está muy bien resumido todo
|
|
|
En línea
|
|
|
|
MazarD
|
Para evitar inyecciones sql lo más fácil y seguro es simplemente utilizar prepared statements.
Saludos.
|
|
|
En línea
|
-Learn as if you were to live forever, live as if you were to die tomorrow- http://www.mazard.infoirc://irc.freenode.org/elhacker.net
|
|
|
Karcrack
Desconectado
Mensajes: 2.416
Se siente observado ¬¬'
|
Me recomiendas algun enlace sobre el tema? Gracias
|
|
|
En línea
|
|
|
|
|
tragantras
Desconectado
Mensajes: 465
|
Para evitar inyecciones sql lo más fácil y seguro es simplemente utilizar prepared statements.
Saludos.
eso es un mito urbano eh, las prepared statements tmb son vulnerables. Pongo un link a una presentacion en la que se muestra todo eso y métodos pra protegerse y asi contesto tmb a Karcrack: http://www.slideshare.net/billkarwin/sql-injection-myths-and-fallacies
|
|
|
En línea
|
|
|
|
MazarD
|
De leyenda urbana nada, tu enlace habla de stored procedures donde se está creando una sql dinámica, una vez más, concatenando valores a la consulta en lugar de hacer un bind del valor en un prepared statment.
Evidentemente si haces un prepare('select * from tabla where val='.$val) vas a tener problemas xD pero la idea es hacer: prepare('select * from tabla where val=?'); bindParam(1, $val);
Que es lo normal cuando se usan prepared statements, sino que sentido tiene? si seguramente ni te va a cachear la siguiente consulta cuando cambies de valor?
Saludos.
|
|
« Última modificación: 11 Octubre 2010, 17:13 pm por MazarD »
|
En línea
|
-Learn as if you were to live forever, live as if you were to die tomorrow- http://www.mazard.infoirc://irc.freenode.org/elhacker.net
|
|
|
tragantras
Desconectado
Mensajes: 465
|
Te doy la total razón, pero estarás conmigo entonces en que tu frase era incorrecta (formalmente hablando), una prepared statement no es segura "per se" sino que lo es porque aporta procedimientos que la hacen segura.
Sin duda alguna, es la manera correcta de hacer aplicaciones seguras, un saludo =)
|
|
|
En línea
|
|
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
Hola buenos dias.Como puedo hacer para q nadie acceda remotamentea mi pc?
Seguridad
|
principiante023
|
4
|
3,696
|
6 Septiembre 2012, 00:33 am
por principiante023
|
|
|
Herramientas para hacer buenos «selfies»
Noticias
|
wolfbcn
|
0
|
1,508
|
8 Julio 2014, 02:13 am
por wolfbcn
|
|
|
Ayuda con Media Queries de CSS3
Desarrollo Web
|
eduardo(...)brutaldeath
|
0
|
1,719
|
28 Septiembre 2014, 22:59 pm
por eduardo(...)brutaldeath
|
|
|
Doce hábitos imprescindibles para protegerte de los timos en la red
Noticias
|
wolfbcn
|
0
|
1,316
|
31 Enero 2015, 13:55 pm
por wolfbcn
|
|
|
Los media queries no funcionan con los valores definidos
Desarrollo Web
|
Drakaris
|
1
|
3,088
|
17 Septiembre 2017, 12:45 pm
por karmany
|
|