elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: (TUTORIAL) Aprende a emular Sentinel Dongle By Yapis


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  Java
| | | |-+  ¿Cómo evitar injección SQL?
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: ¿Cómo evitar injección SQL?  (Leído 3,846 veces)
bertamax

Desconectado Desconectado

Mensajes: 40


Ver Perfil
¿Cómo evitar injección SQL?
« en: 10 Septiembre 2010, 17:05 pm »

En java, utilizando la librería ESAPI y con una base de datos SQL Server.
Gracias


En línea

Debci
Wiki

Desconectado Desconectado

Mensajes: 2.021


Actualizate o muere!


Ver Perfil WWW
Re: ¿Cómo evitar injección SQL?
« Respuesta #1 en: 10 Septiembre 2010, 17:18 pm »

Filtra los caracteres como ' e indices negativos que pueda provocar errores.

Saludos


En línea

bertamax

Desconectado Desconectado

Mensajes: 40


Ver Perfil
Re: ¿Cómo evitar injección SQL?
« Respuesta #2 en: 10 Septiembre 2010, 17:32 pm »

El problema es que yo he intentando evitarlo usando la clase PreparedStatement e también lo he intentado usando variables parametrizadas, como explica en el siguiente enlace:
http://es.wikipedia.org/wiki/Inyecci%C3%B3n_SQL
pero en ambos casos aunque no me ejecuta la sentencia sql, me la introduce como un campo de texto en la base de datos.
Entonces yo estoy intentando que directamente si algun atancante quiere meterme alguna instruccion en la base de datos que no pueda.
He estado viendo si usando la librería ESAPI se podría, pero da bastantes problemas.
Estoy mirando manera de cómo resolver mi problema de una forma cómoda y fácil, no se si alguien conocerá
Gracias
En línea

Debci
Wiki

Desconectado Desconectado

Mensajes: 2.021


Actualizate o muere!


Ver Perfil WWW
Re: ¿Cómo evitar injección SQL?
« Respuesta #3 en: 10 Septiembre 2010, 17:56 pm »

El problema es que yo he intentando evitarlo usando la clase PreparedStatement e también lo he intentado usando variables parametrizadas, como explica en el siguiente enlace:
http://es.wikipedia.org/wiki/Inyecci%C3%B3n_SQL
pero en ambos casos aunque no me ejecuta la sentencia sql, me la introduce como un campo de texto en la base de datos.
Entonces yo estoy intentando que directamente si algun atancante quiere meterme alguna instruccion en la base de datos que no pueda.
He estado viendo si usando la librería ESAPI se podría, pero da bastantes problemas.
Estoy mirando manera de cómo resolver mi problema de una forma cómoda y fácil, no se si alguien conocerá
Gracias
Me hablas de una aplicación de escritorio o servicio web?

Saludos
En línea

bertamax

Desconectado Desconectado

Mensajes: 40


Ver Perfil
Re: ¿Cómo evitar injección SQL?
« Respuesta #4 en: 10 Septiembre 2010, 18:02 pm »

Un servidor web, utilizo JSPs.
Gracias
En línea

Debci
Wiki

Desconectado Desconectado

Mensajes: 2.021


Actualizate o muere!


Ver Perfil WWW
Re: ¿Cómo evitar injección SQL?
« Respuesta #5 en: 10 Septiembre 2010, 19:10 pm »

Un servidor web, utilizo JSPs.
Gracias
Entonces yo acederia a la sql por un servidor remoto que haga de puente y en aquel filtrar lo recivido, puedes hacerlo en uno mismo, pues varios servidores ralentizarian dichas cosnultas.
Ya digo que con filtrar manualmente las comillas simples y los indices negativos tienes muchisimo ganado.

Saludos
En línea

bertamax

Desconectado Desconectado

Mensajes: 40


Ver Perfil
Re: ¿Cómo evitar injección SQL?
« Respuesta #6 en: 13 Septiembre 2010, 22:59 pm »

¿Entonces no me recomiendas usar la librería ESAPI?
En línea

~ Yoya ~
Wiki

Desconectado Desconectado

Mensajes: 1.125



Ver Perfil
Re: ¿Cómo evitar injección SQL?
« Respuesta #7 en: 13 Septiembre 2010, 23:24 pm »

Citar
Filtra los caracteres como ' e indices negativos que pueda provocar errores

Seguro?

http://shiflett.org/blog/2006/jan/addslashes-versus-mysql-real-escape-string

Aunque en ese articulo, los ejemplos están hechos en PHP, ps es facir entender lo que se trata de aclarar.

Eso siempre depende del caso en que te encuentres...
En línea

Mi madre me dijo que estoy destinado a ser pobre toda la vida.
Engineering is the art of balancing the benefits and drawbacks of any approach.
Debci
Wiki

Desconectado Desconectado

Mensajes: 2.021


Actualizate o muere!


Ver Perfil WWW
Re: ¿Cómo evitar injección SQL?
« Respuesta #8 en: 14 Septiembre 2010, 18:06 pm »

Citar
Filtra los caracteres como ' e indices negativos que pueda provocar errores

Seguro?

http://shiflett.org/blog/2006/jan/addslashes-versus-mysql-real-escape-string

Aunque en ese articulo, los ejemplos están hechos en PHP, ps es facir entender lo que se trata de aclarar.

Eso siempre depende del caso en que te encuentres...

Cuando hablo de comillas hablo de slashes y otros caracteres especiales -.-

Saludos
En línea

bertamax

Desconectado Desconectado

Mensajes: 40


Ver Perfil
Re: ¿Cómo evitar injección SQL?
« Respuesta #9 en: 15 Septiembre 2010, 22:16 pm »

Muchas gracias, lo he hecho como me dijistes, Derbi, utilizando la función contains de java.
Saludos
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines