Injeccion SQL?

23/08/2007 - 18:38 por Antonio Ortiz | Informe spam
Que me han hackeado un sitio, y no se exactamente como, les cuento un poco

Tengo un portal para empresas, donde se registran y colocan sus datos que se
muestran en un directorio, el unico lugar donde meten datos es al iniciar
sesion con su nombre de usuario y contraseña y donde capturan sus datos.

Un dia cualquiera los datos de una empresa estan cambiados con un mensaje de
un sitio hacker, los datos de esa empresa son precisamente los mios,
capturados como ejemplo.

Me podrian decir como evitar esto?, que medidas puedo tomar?,

pueden injectar codigo sql por el nombre del usuario (o password) para ? ,
el codigo que valida esto es un simple 'select usuario, pass from usuarios
where nombre=varnombre and pass=varpass' (similar)


gracias


Antonio Ortiz
asesor en sistemas
ant(a)aortiz.net
www.aortiz.net
www.progvisual.com

Preguntas similare

Leer las respuestas

#6 Antonio Ortiz
23/08/2007 - 19:20 | Informe spam
gracias!, lo estoy revisando, se ve interesante.


Antonio Ortiz
asesor en sistemas
ant(a)aortiz.net
www.aortiz.net
www.progvisual.com




"Maxi" escribió en el mensaje
news:%23S09$
Hola Antonio, revisate este link para ver si te ayuda!

http://www.portalsql.com/inyeccion.asp?articulo4


-
Microsoft M.V.P en SQLServer
SQLTotal Consulting - Servicios en SQLServer
Email:
"Antonio Ortiz" escribió en el mensaje
news:

Que me han hackeado un sitio, y no se exactamente como, les cuento un
poco

Tengo un portal para empresas, donde se registran y colocan sus datos que
se muestran en un directorio, el unico lugar donde meten datos es al
iniciar sesion con su nombre de usuario y contraseña y donde capturan sus
datos.

Un dia cualquiera los datos de una empresa estan cambiados con un mensaje
de un sitio hacker, los datos de esa empresa son precisamente los mios,
capturados como ejemplo.

Me podrian decir como evitar esto?, que medidas puedo tomar?,

pueden injectar codigo sql por el nombre del usuario (o password) para ?
, el codigo que valida esto es un simple 'select usuario, pass from
usuarios where nombre=varnombre and pass=varpass' (similar)


gracias


Antonio Ortiz
asesor en sistemas
ant(a)aortiz.net
www.aortiz.net
www.progvisual.com





Respuesta Responder a este mensaje
#7 Salvador Ramos
23/08/2007 - 19:23 | Informe spam
Hola,

Yo te recomiendo que utilices procedimientos almacenados en lugar de sql
dinámico.

Un saludo
Salvador Ramos

www.helpdna.net (información sobre SQL Server y Microsoft .Net)
www.helpdna.net/acerca_de_salvador_ramos.htm


"Antonio Ortiz" escribió en el mensaje
news:

ya veo porque mi colaborador, inmediatamente sugirio validar:

Rs.Open "select usuario, pass from usuarios where (nombre = ' " &
varnombre & " ') And (pass = ' " & varpass " ') ", Conexion
'La separacion de los apostrofes y las comillas es por legibilidad
If ( Not Recorset.EOF ) Then
If( (Recordset!CampoNombre=VarNombre) and
(Recordset!CampoNombre=VarPass) ) Then '*** nueva validacion***
'Usuario valido
Else
'Usuario invalido
End If
End If

que opinas?

Antonio Ortiz
asesor en sistemas
ant(a)aortiz.net
www.aortiz.net
www.progvisual.com




"Victor Koch" <v i c t o r
(arroba)correo(punto)waldbott(punto)com(punto)ar> escribió en el mensaje
news:%
Suponete que el operador te ingresa en la password esto

1 OR 1=1

¿ Como quedaria armada tu SQL ?

'select usuario, pass from usuarios where nombre=varnombre and pass=1 OR
1=1'


Un saludo, Víctor Koch.


"Antonio Ortiz" escribió en el mensaje
news:

Que me han hackeado un sitio, y no se exactamente como, les cuento un
poco

Tengo un portal para empresas, donde se registran y colocan sus datos
que


se
muestran en un directorio, el unico lugar donde meten datos es al
iniciar
sesion con su nombre de usuario y contraseña y donde capturan sus datos.

Un dia cualquiera los datos de una empresa estan cambiados con un
mensaje


de
un sitio hacker, los datos de esa empresa son precisamente los mios,
capturados como ejemplo.

Me podrian decir como evitar esto?, que medidas puedo tomar?,

pueden injectar codigo sql por el nombre del usuario (o password) para ?
,
el codigo que valida esto es un simple 'select usuario, pass from
usuarios
where nombre=varnombre and pass=varpass' (similar)


gracias


Antonio Ortiz
asesor en sistemas
ant(a)aortiz.net
www.aortiz.net
www.progvisual.com










Respuesta Responder a este mensaje
#8 Isaias
23/08/2007 - 19:24 | Informe spam
Antonio

Una buena practica en el desarrollo de sistemas, es EVITAR en lo posible
codificar codigo T-SQL en tu front, por lo que deberias solo mandar a
ejecutar STORE PROCEURE's.

Saludos
IIslas


"Antonio Ortiz" wrote:


ya veo porque mi colaborador, inmediatamente sugirio validar:

Rs.Open "select usuario, pass from usuarios where (nombre = ' " & varnombre
& " ') And (pass = ' " & varpass " ') ", Conexion
'La separacion de los apostrofes y las comillas es por legibilidad
If ( Not Recorset.EOF ) Then
If( (Recordset!CampoNombre=VarNombre) and
(Recordset!CampoNombre=VarPass) ) Then '*** nueva validacion***
'Usuario valido
Else
'Usuario invalido
End If
End If

que opinas?

Antonio Ortiz
asesor en sistemas
ant(a)aortiz.net
www.aortiz.net
www.progvisual.com




"Victor Koch" <v i c t o r (arroba)correo(punto)waldbott(punto)com(punto)ar>
escribió en el mensaje news:%
> Suponete que el operador te ingresa en la password esto
>
> 1 OR 1=1
>
> ¿ Como quedaria armada tu SQL ?
>
> 'select usuario, pass from usuarios where nombre=varnombre and pass=1 OR
> 1=1'
>
>
> Un saludo, Víctor Koch.
>
>
> "Antonio Ortiz" escribió en el mensaje
> news:
>>
>> Que me han hackeado un sitio, y no se exactamente como, les cuento un
>> poco
>>
>> Tengo un portal para empresas, donde se registran y colocan sus datos que
> se
>> muestran en un directorio, el unico lugar donde meten datos es al iniciar
>> sesion con su nombre de usuario y contraseña y donde capturan sus datos.
>>
>> Un dia cualquiera los datos de una empresa estan cambiados con un mensaje
> de
>> un sitio hacker, los datos de esa empresa son precisamente los mios,
>> capturados como ejemplo.
>>
>> Me podrian decir como evitar esto?, que medidas puedo tomar?,
>>
>> pueden injectar codigo sql por el nombre del usuario (o password) para ?
>> ,
>> el codigo que valida esto es un simple 'select usuario, pass from
>> usuarios
>> where nombre=varnombre and pass=varpass' (similar)
>>
>>
>> gracias
>>
>>
>> Antonio Ortiz
>> asesor en sistemas
>> ant(a)aortiz.net
>> www.aortiz.net
>> www.progvisual.com
>>
>>
>
>



Respuesta Responder a este mensaje
#9 Antonio Ortiz
23/08/2007 - 19:32 | Informe spam
he leido el articulo y efectivamente, si tecleo ' or '1' = '1 en la
contraseña obtengo acceso a los datos del primer registro.



Antonio Ortiz
asesor en sistemas
ant(a)aortiz.net
www.aortiz.net
www.progvisual.com



"Maxi" escribió en el mensaje
news:%23S09$
Hola Antonio, revisate este link para ver si te ayuda!

http://www.portalsql.com/inyeccion.asp?articulo4


-
Microsoft M.V.P en SQLServer
SQLTotal Consulting - Servicios en SQLServer
Email:
"Antonio Ortiz" escribió en el mensaje
news:

Que me han hackeado un sitio, y no se exactamente como, les cuento un
poco

Tengo un portal para empresas, donde se registran y colocan sus datos que
se muestran en un directorio, el unico lugar donde meten datos es al
iniciar sesion con su nombre de usuario y contraseña y donde capturan sus
datos.

Un dia cualquiera los datos de una empresa estan cambiados con un mensaje
de un sitio hacker, los datos de esa empresa son precisamente los mios,
capturados como ejemplo.

Me podrian decir como evitar esto?, que medidas puedo tomar?,

pueden injectar codigo sql por el nombre del usuario (o password) para ?
, el codigo que valida esto es un simple 'select usuario, pass from
usuarios where nombre=varnombre and pass=varpass' (similar)


gracias


Antonio Ortiz
asesor en sistemas
ant(a)aortiz.net
www.aortiz.net
www.progvisual.com





Respuesta Responder a este mensaje
#10 Luis Mata
23/08/2007 - 19:46 | Informe spam
Asi es utiliza procedimientos almacenados

"Antonio Ortiz" escribió en el mensaje de noticias
news:

ya veo porque mi colaborador, inmediatamente sugirio validar:

Rs.Open "select usuario, pass from usuarios where (nombre = ' " &
varnombre & " ') And (pass = ' " & varpass " ') ", Conexion
'La separacion de los apostrofes y las comillas es por legibilidad
If ( Not Recorset.EOF ) Then
If( (Recordset!CampoNombre=VarNombre) and
(Recordset!CampoNombre=VarPass) ) Then '*** nueva validacion***
'Usuario valido
Else
'Usuario invalido
End If
End If

que opinas?

Antonio Ortiz
asesor en sistemas
ant(a)aortiz.net
www.aortiz.net
www.progvisual.com




"Victor Koch" <v i c t o r
(arroba)correo(punto)waldbott(punto)com(punto)ar> escribió en el mensaje
news:%
Suponete que el operador te ingresa en la password esto

1 OR 1=1

¿ Como quedaria armada tu SQL ?

'select usuario, pass from usuarios where nombre=varnombre and pass=1 OR
1=1'


Un saludo, Víctor Koch.


"Antonio Ortiz" escribió en el mensaje
news:

Que me han hackeado un sitio, y no se exactamente como, les cuento un
poco

Tengo un portal para empresas, donde se registran y colocan sus datos
que


se
muestran en un directorio, el unico lugar donde meten datos es al
iniciar
sesion con su nombre de usuario y contraseña y donde capturan sus datos.

Un dia cualquiera los datos de una empresa estan cambiados con un
mensaje


de
un sitio hacker, los datos de esa empresa son precisamente los mios,
capturados como ejemplo.

Me podrian decir como evitar esto?, que medidas puedo tomar?,

pueden injectar codigo sql por el nombre del usuario (o password) para ?
,
el codigo que valida esto es un simple 'select usuario, pass from
usuarios
where nombre=varnombre and pass=varpass' (similar)


gracias


Antonio Ortiz
asesor en sistemas
ant(a)aortiz.net
www.aortiz.net
www.progvisual.com











Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente AnteriorRespuesta Tengo una respuesta
Search Busqueda sugerida