Foros del Web » Programando para Internet » ASP Clásico »

Más SQL Injection

Estas en el tema de Más SQL Injection en el foro de ASP Clásico en Foros del Web. Un buen artículo sobre SQL Injection: **Los artículos son de Kriptopolis 1ª Parte 2ª Parte :Un saludo y andaros con Ojo --->...
  #1 (permalink)  
Antiguo 25/10/2004, 12:49
Avatar de trasgukabi  
Fecha de Ingreso: septiembre-2004
Mensajes: 2.749
Antigüedad: 19 años, 9 meses
Puntos: 18
Más SQL Injection

Un buen artículo sobre SQL Injection:

**Los artículos son de Kriptopolis

1ª Parte

2ª Parte

:Un saludo y andaros con Ojo --->
  #2 (permalink)  
Antiguo 25/10/2004, 14:58
Avatar de dobled  
Fecha de Ingreso: enero-2002
Ubicación: Rancagua - Chile
Mensajes: 1.328
Antigüedad: 22 años, 4 meses
Puntos: 2
jeje el primero lo uso de vez en cuando para probar seguridad en sitios, bastante bien el tips
__________________
Usa títulos específicos y con sentido
En las listas de correo o en los grupos de noticias, la cabecera del mensaje es tu oportunidad de oro para atraer la atención de expertos cualificados en aproximadamente 50 caracteres o menos. No los desperdicies en balbuceos como "Por favor ayúdame" (de "POR FAVOR AYÚDAME!!!" ya ni hablamos). No intentes impresionarnos con lo profundo de tu angustia; mejor usa ese preciado espacio para una descripción lo más concisa posible del problema.
  #3 (permalink)  
Antiguo 25/10/2004, 15:15
Avatar de AlZuwaga
Colaborador
 
Fecha de Ingreso: febrero-2001
Ubicación: 34.517 S, 58.500 O
Mensajes: 14.550
Antigüedad: 23 años, 3 meses
Puntos: 535
Hola trasgukabi, en el mensaje de Biblioteca de Clases,Funciones y Sub-rutinas comentás que sería bueno agregar a una función de Muzztein lo siguiente:


Cita:
str=replace(str,"--","")
str=replace(str,"select","")
str=replace(str,"insert","")
str=replace(str,"update","")
str=replace(str,"delete","")
str=replace(str,"drop","")
str=replace(str,"-shutdown","")
str=replace(str,"--","")

http://www.forosdelweb.com/showpost....7&postcount=19
Bueno, y Muzztein en esa función aconseja eliminar los signos =, la comilla doble, el " or ", " and " y otros símbolos.

Yo me pregunto... Si ya eliminamos la posibilidad de que coloquen una comilla simple reemplazando ésta por dos de ellas seguidas... ¿igualmente pueden hacerte un SQL Inyection o ya está totalmente descartada la posibilidad?
__________________
...___...
  #4 (permalink)  
Antiguo 25/10/2004, 16:34
Avatar de Muzztein  
Fecha de Ingreso: agosto-2002
Ubicación: Hangar 18
Mensajes: 1.703
Antigüedad: 21 años, 9 meses
Puntos: 16
Sonrisa

quizas no, pero porsicaso...

De toda maneras.
EXCELENTE ARTICULO.

Casi de poesia.
Lectura recomendada 1000%

Gracias al que puso el link, y para el que escribio el articulo va un APLAUSOTE

Me encanto la forma de escribir, buenisimo
  #5 (permalink)  
Antiguo 25/10/2004, 17:31
Avatar de AlZuwaga
Colaborador
 
Fecha de Ingreso: febrero-2001
Ubicación: 34.517 S, 58.500 O
Mensajes: 14.550
Antigüedad: 23 años, 3 meses
Puntos: 535
Si, Muzztein, el "por las dudas" no está demás... igualmente es algo que siempre me pregunté. Porque leyendo muchos de esos artículos (que comparto: es excelente) siempre hablan (ejemm... escriben =) sobre controlar el uso del apóstrofe y nunca mencionan nada más.

Ahora bien, ya dije que el "por las dudas" nunca está de más... pero me gustaría una respuesta tipo SI/NO a mi anterior pregunta ;) (y mucho mejor si viene acompañada con algún artículo, que reitero, nunca encontré ninguno)
__________________
...___...
  #6 (permalink)  
Antiguo 25/10/2004, 17:55
Avatar de trasgukabi  
Fecha de Ingreso: septiembre-2004
Mensajes: 2.749
Antigüedad: 19 años, 9 meses
Puntos: 18
Al: en teoría, cualquier ataque sql injection debe empezar con el apostrofe, ya que hay que cerrar el = o el like de la consulta del servidor.

Por consiguiente, si eliminas el apostrofe y las comillas dobles no se podría hacer SQL Injection. Ahora, yo no soy Neo, colega. Lo poco que sé de SQL Injection es lo que he compartido con vosotros y puede ser que algún gurú que haya suelto por ahí te diga otra cosa. Pero en principio la respuesta es NO.

Un saludo a todos, monstruos, que sois unos monstruos!!!!!
  #7 (permalink)  
Antiguo 25/10/2004, 18:09
Avatar de AlZuwaga
Colaborador
 
Fecha de Ingreso: febrero-2001
Ubicación: 34.517 S, 58.500 O
Mensajes: 14.550
Antigüedad: 23 años, 3 meses
Puntos: 535
trasgu, entonces tenemos la misma forma de pensar ante la teoría mencionada. Además compartimos otras cosas: Ninguno de los dos es Neo (xD), por lo menos "algo de lo que sabemos" es porque alguien lo ha compartido con nosotros y... no somos gurúes (o por lo menos "gurúes sueltos" =)

Otro saludo para vos, monstruo
__________________
...___...
  #8 (permalink)  
Antiguo 26/10/2004, 08:47
Avatar de Myakire
Colaborador
 
Fecha de Ingreso: enero-2002
Ubicación: Centro de la república
Mensajes: 8.849
Antigüedad: 22 años, 4 meses
Puntos: 146
Cita:
Iniciado por Al Zuwaga
... pero me gustaría una respuesta tipo SI/NO a mi anterior pregunta
Cita:
(Si ya eliminamos la posibilidad de que coloquen una comilla simple reemplazando ésta por dos de ellas seguidas... ¿igualmente pueden hacerte un SQL Inyection ...?)
(y mucho mejor si viene acompañada con algún artículo, que reitero, nunca encontré ninguno)
Pues parecese que SI.

Cita:
There are two basic approaches to validation: disallow troublesome characters or only allow a small number of required characters. While you can easily disallow a few troublesome characters, such as the hyphen and single quote, this approach is less than optimal for two reasons: first, you might miss a character that is useful to hackers, and second, there is often more than one way to represent a bad character. For example, a hacker may be able to escape a single quote so that your validation code misses it and passes the escaped quote to the database, which treats it the same as a normal single quote character. A better approach is to identify the allowable characters and allow only those characters. This approach requires more work but ensures a much tighter control on input and is more safe. Regardless of which approach you take, you'll also want to limit the length of the entry because some hacks require a large number of characters.
http://msdn.microsoft.com/msdnmag/is...n/default.aspx

Saludos y nunca esta demás prevenir que lamentar

Última edición por Myakire; 26/10/2004 a las 08:50
  #9 (permalink)  
Antiguo 26/10/2004, 08:58
Avatar de Myakire
Colaborador
 
Fecha de Ingreso: enero-2002
Ubicación: Centro de la república
Mensajes: 8.849
Antigüedad: 22 años, 4 meses
Puntos: 146
El último para complementar:

Cita:
8.0 How to avoid SQL Injection?
Filter out character like single quote, double quote, slash, back slash, semi colon, extended character like NULL, carry return, new line, etc, in all strings from:
- Input from users
- Parameters from URL
- Values from cookie

For numeric value, convert it to an integer before parsing it into SQL statement. Or using ISNUMERIC to make sure it is an integer.

Change "Startup and run SQL Server" using low privilege user in SQL Server Security tab.

Delete stored procedures that you are not using like:

master..Xp_cmdshell, xp_startmail, xp_sendmail, sp_makewebtask


9.0 Where can I get more info?
One of the earliest works on SQL Injection we have encountered should be the paper from Rain Forest Puppy about how he hacked PacketStorm.
http://www.wiretrip.net/rfp/p/doc.asp?id=42&iface=6

Great article on gathering information from ODBC error messages:
http://www.blackhat.com/presentation...Litchfield.doc

A good summary of SQL Injection on various SQL Server on
http://www.owasp.org/asac/input_validation/sql.shtml

Senseport's article on reading SQL Injection:
http://www.sensepost.com/misc/SQLinsertion.htm
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




La zona horaria es GMT -6. Ahora son las 18:36.