SQL Injection
SQL Injection
1. SQL INJECTION
Un ataque de inyeccin SQL consiste en la insercin o inyeccin de una consulta o
query SQL a travs de los datos de entrada del cliente de la aplicacin.
Una inyeccin SQL xito exploit puede leer los datos sensibles de la base de datos
de la aplicacin, modificar datos de dentro de la bases de datos y con facilidad un
DML (Insertar / Actualizar / Eliminar), ejecutar operaciones de administracin en la
base de datos (tales como apagar el DBMS), recuperar el contenido de un archivo
determinado presente en el sistema de archivos DBMS y en algunos casos emitir
comandos al sistema operativo. Estos ataques se dan por medio de comandos SQL
y se inyectan en la entrada de datos de plano con el fin de efectuar la ejecucin de
comandos predefinidos SQL.(Grfico 1)
El ataque consiste en suplantar identidades por parte de los atacantes, alterar datos
existentes, causar problemas de repudio, permite la revelacin de todos los datos
en el sistema, destruir los datos o si no volverlos inasequibles, y convertirse en
administradores del servidor de base de datos.
La inyeccin SQL es muy comn con aplicaciones PHP y ASP. Debido a la naturaleza
de las interfaces programticas, las aplicaciones J2EE y ASP.NET tienen menor
probabilidad de ser fcilmente atacadas por una inyeccin SQL.
Grfico 2
Este error depende del hecho de que SQL no hace real distincin entre los planos de
datos y los de control.
Consecuencias
Confidencialidad: Dado que las bases de datos SQL generalmente almacenan
informacin sensible, la prdida de la confiabilidad es un problema frecuente
con las vulnerabilidades de inyeccin SQL.
Autenticacin: Si se utilizan consultas SQL pobres para chequear nombres de
usuarios u contra-seas, puede ser posible conectarse a un sistema como
otro usuario sin conocimiento previo de la contrasea.
Autorizacin: Si la informacin de autorizacin es almacenada en una base
de datos SQL, puede ser posible cambiar esta informacin mediante la
explotacin exitosa de una vulnerabilidad por inyeccin SQL.
Integridad: As como puede ser posible leer informacin sensible, tambin es
posible realizar cambios o incluso borrar esta informacin mediante un
ataque por inyeccin SQL
3. DIAGRAMA DE RED
Grfico. 3
Para el trabajo se necesitara hacer uso de Kali Linux y as poder trabajar en un
diagrama de red respectivo que nos brinde seguridad.
Kali Linux: es una distribucin de Linux avanzada para pruebas de penetracin y
auditoras de seguridad.
4. BSQUEDA DE
VULERABILIDADES
Se utilizar el software w3af que
analiza vulnerabilidades, procedimos
a buscar una URL que nos sirva para
poder hacer un ataque de inyeccin
de SQL.
En la figura 1. podemos ver la
ejecucin del cdigo para que se
ejecute el programa w3af y poder
encontrar la URL que servir en la
prctica.
Podemos ver la ejecucin del
analizador de vulnerabilidad aplicado
a la URL
Figura 5. Resultado de
Vulnerabilidades a la URL de
Banco Pichincha
En la figura 6. Podemos ver la
ejecucin del analizador de
vulnerabilidades a la URL
http://www.hacerseoir.com.ar/ .
Figura 3. Resultado de
Vulnerabilidades a la URL de GMS
En la figura 4. Podemos ver la
ejecucin del analizador de
vulnerabilidad aplicado a la URL
http://www.pichincha.com/
Figura 7. Resultado de
Vulnerabilidades a la URL de Hacerse
Oir
Figura
11.
vulnerable.
Parmetro
id
es
Figura 14.
Comando
para
obtener las tablas de la base de datos
hacerse1_hacerseoir