INYECCION SQL
INYECCION
DE CODIGO SQL
Se conoce como Inyección SQL, indistintamente,
al tipo de vulnerabilidad, al método de infiltración, al hecho de incrustar
código SQL intruso y a la porción de código incrustado.
El ataque por inyección de código SQL se produce cuando no se filtra de forma
adecuada la información enviada por el usuario. Un usuario malicioso podría
incluir y ejecutar textos que representen nuevas sentencias SQL que el servidor
no debería aceptar. Este tipo de ataque es independiente del sistema de bases
de datos subyacente, ya que depende únicamente de una inadecuada validación de los datos de
entrada.
¿Qué Bases de datos son susceptible a
Inyección SQL?
La más
susceptible a ataques en MS SQL, dado que permite explotar el fallo más
fácilmente y además posee opciones que facilitan el acceso al sistema, como la
ejecución de comandos. En la lista siguiente se detalla una relación de
posibilidades de explotación de cada base de datos.
MySQL
ü
Se ejecuta con
privilegios de 'root' por defecto
ü
Volcado a
ficheros con INTO OUTFILE
ü
La ejecución de
sentencias múltiples es POCO PROBABLE, pocos módulos lo permiten
Inyección de código SQL al SII del ITSJR
Primero accesamos al sitio web
del Sistema Integral de Información del Instituto Tecnológico de San Juan del
Rio
El ataque por inyección de código SQL se produce cuando no se filtra de forma adecuada la información enviada por el usuario. Un usuario malicioso podría incluir y ejecutar textos que representen nuevas sentencias SQL que el servidor no debería aceptar. Este tipo de ataque es independiente del sistema de bases de datos subyacente, ya que depende únicamente de una inadecuada validación de los datos de entrada.
Ahora insertamos una inyección
SQL en donde ponemos el número de control, de la siguiente manera 00000000’
1=’1 – y en donde va el nip ponemos cualquier cosa para provocar un error.
Después de esto nos da un
error que nos muestra que aunque el sii es un poco seguro aun es fácil
encontrar algunos errores, por medio de esta inyección podemos ver que la
página nos devuelve lo siguiente. El
sitio del SII devuelve lo siguiente: Error en:
select 'ALU' as tipo_usuario, 'modulos/alu/' as
pagina_inicial, nombre_alumno+' '+apellido_paterno+' '+apellido_materno as
nombre_usuario from alumnos where no_de_control = '00000000' or 1='1 --' and
nip = 000
Implicit conversion from datatype 'VARCHAR' to 'INT' is not allowed. Use the CONVERT function to run this query.
Implicit conversion from datatype 'VARCHAR' to 'INT' is not allowed. Use the CONVERT function to run this query.
No hay comentarios:
Publicar un comentario