SlideShare a Scribd company logo
1 of 5
1 
 
Ataque por Inyección de Código SQL a una 
Base de Datos contenida en una página Web 
A. Valencia, C. Andres Coutin, 
Universidad Nacional y a Distancia “UNAD” 
Escuela de Ciencias Básicas, Tecnología e Ingeniería 
Colombia 
Resumen— Por medio de este documento se quiere demostrar 
algunas formas de atacar una página Web conociendo, algunos 
de los datos contenidos en las base de datos, estos ataques son de 
manera educativos y no pretenden causar ningún tipo de daño a 
las páginas web, vulnerables, en la actualizada este tipo de ataque 
si son cometidos el código de procedimiento penal según la ley 
1273 de 2011. Esta es una forma de evitar futuros problemas de 
seguridad en dicho proceso. Este tipo de ataques que se plantean 
en este documento pretenden además ser una guía en el manejo e 
implementación de diferentes rutinas que pueden implementarse 
para garantizar la seguridad de la información. 
Palabras clave— Máquina Virtual, Sistema Operativo, Llave 
Pública, Encriptación, Llave Privada, Archivo, Ataque de fuerza 
Bruta, Firma Digital. 
Abstract— Through this document is to show some ways to 
attack a website know, some of the data contained in the 
database, these attacks are educational way and not intended to 
cause any harm to the websites, vulnerable, the date this type of 
attack if they committed the criminal procedure code according 
to the law 1273 of 2011 this is a way to prevent future security 
problems in the process. Such attacks raised in this document 
also intended as a guide in the management and implementation 
of different routines that can be implemented to ensure 
information security. 
Keywords— Virtual Machine, Operating System, Public Key 
Cryptography, Encryption, Private Key , File, Brute –Force 
Attack, Digital S ignature. 
I. INTRODUCCIÓN 
a vulnerabilidad se puede producir automáticamente 
cuando un programa "arma descuidadamente" 
una sentencia SQL en tiempo de ejecución, o bien durante 
L 
la fase de desarrollo, cuando el programador explicita la 
sentencia SQL a ejecutar en forma desprotegida. En cualquier 
caso, siempre que el programador necesite y haga uso de 
parámetros a ingresar por parte del usuario, a efectos de 
consultar una base de datos; ya que, justamente, dentro de los 
parámetros es donde se puede incorporar el código SQL 
intruso a información contenida en una página web, se 
considera. 
Al ejecutarse la consulta en la base de datos, el 
código SQL inyectado también se ejecutará y podría hacer un 
sinnúmero de cosas, como insertar registros, modificar o 
eliminar datos, autorizar accesos e, incluso, ejecutar otro tipo 
de código malicioso en el computador
2 
II. DESARROLLO DEL ARTÍCULO 
Descargue e instale la máquina virtual Virtualbox. 
- Descargue BadStore. 
- Descargue un programa para realizar ataque por inyección 
de código SQL sesugiere SQLMAP (http://sqlmap.org/) o 
Nmap (http://nmap.org/download.html. 
- Realizar un ataque a la base de datos de Badstore, con lo 
cual se debe obtener toda la información sobre la base de 
datos por ejemplo servidor de BD y versión, nombre de la 
base de datos, nombre de las tablas, información de las tablas, 
información de las columnas, etc. 
- Realizar una presentación o video sobre el ataque realizado 
Para determinar la vulnerabilidad del sitio que se nos dá, 
debemos colocar una comilla al lado del signo igual y 
actualizamos la página y esto nos debe indicar que tiene un 
error de sintaxis en al instrucción SQL, lo que lo hace 
vulnerable al ataque. 
Entonces copiamos la URL y lo copiamos en el comando del 
software sqlmap y ejecutamos presionando la tecla Enter 
 sqlmap.py -u 
http://testphp.vulnweb.com/listproducts.php?artist=1 –bds 
Este comando nos permitirá conocer el nombre de la base de 
datos, como lo muestra la siguiente gráfica 
Conociendo el nombre de la base de datos podemos ahora 
conocer las tablas que hacen parte de esa base de datos por 
medio del siguiente comando 
 sqlmap.py -u 
http://testphp.vulnweb.com/listproducts.php?artist=1 -D 
acuart –tables 
De este modo podremos conocer el nombre de las tablas, que 
hacen parte de esa base de datos
3 
Una vez identificadas las tablas podremos conocer, las 
columnas de cada tabla, para ello debemos digitar el siguiente 
comando. 
 sqlmap.py -u 
http://testphp.vulnweb.com/listproducts.php?artist=1 -D acuart - 
T users –columns 
Este comando nos mostrará, las columnas de la table Users, tal 
como lo muestra la siguiente gráfica. 
Luego conocer las columnas de la tabla Users, debemos 
conocer el contenido de algunos de los campos, de dicha tabla. 
Por medio del siguiente comando podremos conocer el 
contenido del campo Uname, por medio del siguiente 
comando: 
 sqlmap.py -u 
http://testphp.vulnweb.com/listproducts.php?artist=1 -D acuart 
-T users -C uname –dump 
La siguiente gráfica nos muestra el contenido del campo 
uname 
Así mismo para los campos restantes, tales como el contenido 
del campo name, por medio del siguiente comando. 
 sqlmap.py -u 
http://testphp.vulnweb.com/listproducts.php?artist=1 -D 
acuart -T users -C name –dump 
la siguiente gráfica muestra el contenido del campo Name, en 
la table acuart
4 
Y podemos seguir conociendo más datos de la tabla usuarios, 
ahora lo vamos a hacer con el campo email 
Y por si quedan dudas extraemos la información de la cedula 
III. CONCLUSIONES 
Durante el desarrollo de esta práctica podemos conocer y 
aplicar diferentes formas de realizar ataques a la información 
contenida en una base de datos, de un sitio web, los cuales no 
permiten algún grado de confidencialidad y seguridad de la 
información. Estos conceptos puestos en el contexto nos 
permitirán garantizar de alguna manera la confidencialidad de 
la información al interior de una empresa u organización. 
También es de suma importancia que se tenga configurado y 
listo el entorno de trabajo que servirá para el desarrollo de las 
actividades y prácticas propuestas durante todo el curso y de 
esta forma poder responder los interrogantes que se vayan 
generando durante cada etapa, debatiendo acerca de los mismo 
con los puntos de vista de los compañeros del grupo 
colaborativo y con la experiencia del director del curso. 
IV. AGRADECIMIENTOS 
Alexander Valencia. Mi más sincero agradecimiento a mi 
esposa e hijos por su apoyo constante. A los ingenieros John 
Quintero, Delia Caicedo por su aporte y experiencia en el 
desarrollo de artículos para la IEEE. 
Carlos Andrés Coutin G. Mis agradecimientos a mi madre 
que es la persona encargada de brindarme serenidad 
tranquilidad para salir adelante en mis metas.
5 
V. REFERENCIAS 
Periodicals (Artículos de revista): 
[1] Universidad Nacional Abierta y a Distancia, Cátedra 
Unadista 
http://datateca.unad.edu.co/contenidos/434206/434206/ 
captulo_7_her ramientas_para_el_aprendizaje_virtual.html 
} 
[2] Universidad Nacional Abierta y a Distancia, 
Especialización en Seguridad Informática. 
http://campus0b.unadvirtual.org/mis_cursos/tablero201 
31.php 
[3] Página Oficial de Debian. Recuperado de: 
https://www.debian.org/index.es.html 
[4] Instalación de Debian. Recuperado de: 
http://debianfacil.wordpress.com/instalar-debian/ 
VI. BIOGRAFÍAS 
Alexander Valencia. Nació en Istmina Chocó, el 
27 de Marzo de 1876. Se graduó en la 
Universidad Manuela Belt rán en la ciudad de 
Bogotá. Ejerció profesionalmente en la 
Universidad Cooperativa de Colombia Seccional 
Quibdó, en la Universidad Nacional Abierta y a 
Distancia en la Ciudad de Quibdó, en la 
Secretaria de Salud Departamental del Chocó. 
Ent re sus campos de interés están la 
programación cliente servidor, maneja los 
lenguajes de programación Visual Basic, ent re los manejadores de base de 
datos están SQL, Acces FireBird. Especialista en Administ ración de Base de 
Datos. 
Carlos Andres Cout in Garcia Nació en Quibdó 
Choco el 9 de diciembre de 1985. Se graduó en la 
Universidad cooperat iva de Colombia en la ciudad 
de Quibdó, realizo una técnica en mantenimiento de 
hardware y software en el Sena. Ejerció 
profesionalmente en Compartel empresa de 
telecomunicaciones, Inst ituto Colombiano de 
Bienestar Familiar (ICBF) Donde se desempeña 
como administ rador de un aplicat ivo llamado Cuéntame.

More Related Content

Similar to Articulo ieee ataque_i

Actividad No. 1.11: SQL Injection con sqlmap en Kali Linux
Actividad No. 1.11: SQL Injection con sqlmap en Kali LinuxActividad No. 1.11: SQL Injection con sqlmap en Kali Linux
Actividad No. 1.11: SQL Injection con sqlmap en Kali LinuxFrancisco Medina
 
Ataque sql web
Ataque sql webAtaque sql web
Ataque sql webkateqr
 
Inyecciones SQL para Aprendices
Inyecciones SQL para AprendicesInyecciones SQL para Aprendices
Inyecciones SQL para AprendicesTensor
 
Evaluación de Ataques tipo Inyección SQL a Ciegas a las Aplicaciones Web util...
Evaluación de Ataques tipo Inyección SQL a Ciegas a las Aplicaciones Web util...Evaluación de Ataques tipo Inyección SQL a Ciegas a las Aplicaciones Web util...
Evaluación de Ataques tipo Inyección SQL a Ciegas a las Aplicaciones Web util...beckett1
 
Paper injection sql_santiago_hidalgo_diego_jaramillo_victor_olalla_becket_toa...
Paper injection sql_santiago_hidalgo_diego_jaramillo_victor_olalla_becket_toa...Paper injection sql_santiago_hidalgo_diego_jaramillo_victor_olalla_becket_toa...
Paper injection sql_santiago_hidalgo_diego_jaramillo_victor_olalla_becket_toa...Becket Toapanta
 
Samurai Web Testing Framework 2.0
Samurai Web Testing Framework 2.0Samurai Web Testing Framework 2.0
Samurai Web Testing Framework 2.0Alonso Caballero
 
Lab1.4.5
Lab1.4.5Lab1.4.5
Lab1.4.5UNAD
 
Partes de un sistema computacional
Partes de un sistema computacionalPartes de un sistema computacional
Partes de un sistema computacionalSCV97
 
Partes de un sistema computacional
Partes de un sistema computacionalPartes de un sistema computacional
Partes de un sistema computacionalPilarST20
 
Inyeccion sql
Inyeccion sqlInyeccion sql
Inyeccion sqlobispo28
 
M2 com practico_arodri
M2 com practico_arodriM2 com practico_arodri
M2 com practico_arodriarodri7703
 
Webinar Gratuito "Ataques a Bases de Datos"
Webinar Gratuito "Ataques a Bases de Datos"Webinar Gratuito "Ataques a Bases de Datos"
Webinar Gratuito "Ataques a Bases de Datos"Alonso Caballero
 
Inyeccionessqlparaaprendices complemento clase 1
Inyeccionessqlparaaprendices complemento clase 1Inyeccionessqlparaaprendices complemento clase 1
Inyeccionessqlparaaprendices complemento clase 1Tensor
 
Web App Security, Ethical hacking for CodeCamp SDQ 5
Web App Security, Ethical hacking for CodeCamp SDQ 5Web App Security, Ethical hacking for CodeCamp SDQ 5
Web App Security, Ethical hacking for CodeCamp SDQ 5Jose Gratereaux
 
Seguridad Base de Datos sql injection v1.0
Seguridad Base de Datos sql injection v1.0Seguridad Base de Datos sql injection v1.0
Seguridad Base de Datos sql injection v1.0José Moreno
 
Aplicacion movil con_bd
Aplicacion movil con_bdAplicacion movil con_bd
Aplicacion movil con_bdAnnie Mrtx
 

Similar to Articulo ieee ataque_i (20)

Actividad No. 1.11: SQL Injection con sqlmap en Kali Linux
Actividad No. 1.11: SQL Injection con sqlmap en Kali LinuxActividad No. 1.11: SQL Injection con sqlmap en Kali Linux
Actividad No. 1.11: SQL Injection con sqlmap en Kali Linux
 
Ataque sql web
Ataque sql webAtaque sql web
Ataque sql web
 
Inyecciones SQL para Aprendices
Inyecciones SQL para AprendicesInyecciones SQL para Aprendices
Inyecciones SQL para Aprendices
 
Evaluación de Ataques tipo Inyección SQL a Ciegas a las Aplicaciones Web util...
Evaluación de Ataques tipo Inyección SQL a Ciegas a las Aplicaciones Web util...Evaluación de Ataques tipo Inyección SQL a Ciegas a las Aplicaciones Web util...
Evaluación de Ataques tipo Inyección SQL a Ciegas a las Aplicaciones Web util...
 
Aplicaciones Web Seguras (Anti-SQLi)
Aplicaciones Web Seguras (Anti-SQLi)Aplicaciones Web Seguras (Anti-SQLi)
Aplicaciones Web Seguras (Anti-SQLi)
 
Paper injection sql_santiago_hidalgo_diego_jaramillo_victor_olalla_becket_toa...
Paper injection sql_santiago_hidalgo_diego_jaramillo_victor_olalla_becket_toa...Paper injection sql_santiago_hidalgo_diego_jaramillo_victor_olalla_becket_toa...
Paper injection sql_santiago_hidalgo_diego_jaramillo_victor_olalla_becket_toa...
 
Métodos vulnerabilidad activos
Métodos vulnerabilidad activosMétodos vulnerabilidad activos
Métodos vulnerabilidad activos
 
Samurai Web Testing Framework 2.0
Samurai Web Testing Framework 2.0Samurai Web Testing Framework 2.0
Samurai Web Testing Framework 2.0
 
Lab1.4.5
Lab1.4.5Lab1.4.5
Lab1.4.5
 
Punto a. crear un documento pdf
Punto a. crear un documento pdfPunto a. crear un documento pdf
Punto a. crear un documento pdf
 
Partes de un sistema computacional
Partes de un sistema computacionalPartes de un sistema computacional
Partes de un sistema computacional
 
Partes de un sistema computacional
Partes de un sistema computacionalPartes de un sistema computacional
Partes de un sistema computacional
 
Inyeccion sql
Inyeccion sqlInyeccion sql
Inyeccion sql
 
M2 com practico_arodri
M2 com practico_arodriM2 com practico_arodri
M2 com practico_arodri
 
Webinar Gratuito "Ataques a Bases de Datos"
Webinar Gratuito "Ataques a Bases de Datos"Webinar Gratuito "Ataques a Bases de Datos"
Webinar Gratuito "Ataques a Bases de Datos"
 
Inyeccionessqlparaaprendices complemento clase 1
Inyeccionessqlparaaprendices complemento clase 1Inyeccionessqlparaaprendices complemento clase 1
Inyeccionessqlparaaprendices complemento clase 1
 
Web App Security, Ethical hacking for CodeCamp SDQ 5
Web App Security, Ethical hacking for CodeCamp SDQ 5Web App Security, Ethical hacking for CodeCamp SDQ 5
Web App Security, Ethical hacking for CodeCamp SDQ 5
 
Base de datos aby
Base de datos abyBase de datos aby
Base de datos aby
 
Seguridad Base de Datos sql injection v1.0
Seguridad Base de Datos sql injection v1.0Seguridad Base de Datos sql injection v1.0
Seguridad Base de Datos sql injection v1.0
 
Aplicacion movil con_bd
Aplicacion movil con_bdAplicacion movil con_bd
Aplicacion movil con_bd
 

Articulo ieee ataque_i

  • 1. 1  Ataque por Inyección de Código SQL a una Base de Datos contenida en una página Web A. Valencia, C. Andres Coutin, Universidad Nacional y a Distancia “UNAD” Escuela de Ciencias Básicas, Tecnología e Ingeniería Colombia Resumen— Por medio de este documento se quiere demostrar algunas formas de atacar una página Web conociendo, algunos de los datos contenidos en las base de datos, estos ataques son de manera educativos y no pretenden causar ningún tipo de daño a las páginas web, vulnerables, en la actualizada este tipo de ataque si son cometidos el código de procedimiento penal según la ley 1273 de 2011. Esta es una forma de evitar futuros problemas de seguridad en dicho proceso. Este tipo de ataques que se plantean en este documento pretenden además ser una guía en el manejo e implementación de diferentes rutinas que pueden implementarse para garantizar la seguridad de la información. Palabras clave— Máquina Virtual, Sistema Operativo, Llave Pública, Encriptación, Llave Privada, Archivo, Ataque de fuerza Bruta, Firma Digital. Abstract— Through this document is to show some ways to attack a website know, some of the data contained in the database, these attacks are educational way and not intended to cause any harm to the websites, vulnerable, the date this type of attack if they committed the criminal procedure code according to the law 1273 of 2011 this is a way to prevent future security problems in the process. Such attacks raised in this document also intended as a guide in the management and implementation of different routines that can be implemented to ensure information security. Keywords— Virtual Machine, Operating System, Public Key Cryptography, Encryption, Private Key , File, Brute –Force Attack, Digital S ignature. I. INTRODUCCIÓN a vulnerabilidad se puede producir automáticamente cuando un programa "arma descuidadamente" una sentencia SQL en tiempo de ejecución, o bien durante L la fase de desarrollo, cuando el programador explicita la sentencia SQL a ejecutar en forma desprotegida. En cualquier caso, siempre que el programador necesite y haga uso de parámetros a ingresar por parte del usuario, a efectos de consultar una base de datos; ya que, justamente, dentro de los parámetros es donde se puede incorporar el código SQL intruso a información contenida en una página web, se considera. Al ejecutarse la consulta en la base de datos, el código SQL inyectado también se ejecutará y podría hacer un sinnúmero de cosas, como insertar registros, modificar o eliminar datos, autorizar accesos e, incluso, ejecutar otro tipo de código malicioso en el computador
  • 2. 2 II. DESARROLLO DEL ARTÍCULO Descargue e instale la máquina virtual Virtualbox. - Descargue BadStore. - Descargue un programa para realizar ataque por inyección de código SQL sesugiere SQLMAP (http://sqlmap.org/) o Nmap (http://nmap.org/download.html. - Realizar un ataque a la base de datos de Badstore, con lo cual se debe obtener toda la información sobre la base de datos por ejemplo servidor de BD y versión, nombre de la base de datos, nombre de las tablas, información de las tablas, información de las columnas, etc. - Realizar una presentación o video sobre el ataque realizado Para determinar la vulnerabilidad del sitio que se nos dá, debemos colocar una comilla al lado del signo igual y actualizamos la página y esto nos debe indicar que tiene un error de sintaxis en al instrucción SQL, lo que lo hace vulnerable al ataque. Entonces copiamos la URL y lo copiamos en el comando del software sqlmap y ejecutamos presionando la tecla Enter  sqlmap.py -u http://testphp.vulnweb.com/listproducts.php?artist=1 –bds Este comando nos permitirá conocer el nombre de la base de datos, como lo muestra la siguiente gráfica Conociendo el nombre de la base de datos podemos ahora conocer las tablas que hacen parte de esa base de datos por medio del siguiente comando  sqlmap.py -u http://testphp.vulnweb.com/listproducts.php?artist=1 -D acuart –tables De este modo podremos conocer el nombre de las tablas, que hacen parte de esa base de datos
  • 3. 3 Una vez identificadas las tablas podremos conocer, las columnas de cada tabla, para ello debemos digitar el siguiente comando.  sqlmap.py -u http://testphp.vulnweb.com/listproducts.php?artist=1 -D acuart - T users –columns Este comando nos mostrará, las columnas de la table Users, tal como lo muestra la siguiente gráfica. Luego conocer las columnas de la tabla Users, debemos conocer el contenido de algunos de los campos, de dicha tabla. Por medio del siguiente comando podremos conocer el contenido del campo Uname, por medio del siguiente comando:  sqlmap.py -u http://testphp.vulnweb.com/listproducts.php?artist=1 -D acuart -T users -C uname –dump La siguiente gráfica nos muestra el contenido del campo uname Así mismo para los campos restantes, tales como el contenido del campo name, por medio del siguiente comando.  sqlmap.py -u http://testphp.vulnweb.com/listproducts.php?artist=1 -D acuart -T users -C name –dump la siguiente gráfica muestra el contenido del campo Name, en la table acuart
  • 4. 4 Y podemos seguir conociendo más datos de la tabla usuarios, ahora lo vamos a hacer con el campo email Y por si quedan dudas extraemos la información de la cedula III. CONCLUSIONES Durante el desarrollo de esta práctica podemos conocer y aplicar diferentes formas de realizar ataques a la información contenida en una base de datos, de un sitio web, los cuales no permiten algún grado de confidencialidad y seguridad de la información. Estos conceptos puestos en el contexto nos permitirán garantizar de alguna manera la confidencialidad de la información al interior de una empresa u organización. También es de suma importancia que se tenga configurado y listo el entorno de trabajo que servirá para el desarrollo de las actividades y prácticas propuestas durante todo el curso y de esta forma poder responder los interrogantes que se vayan generando durante cada etapa, debatiendo acerca de los mismo con los puntos de vista de los compañeros del grupo colaborativo y con la experiencia del director del curso. IV. AGRADECIMIENTOS Alexander Valencia. Mi más sincero agradecimiento a mi esposa e hijos por su apoyo constante. A los ingenieros John Quintero, Delia Caicedo por su aporte y experiencia en el desarrollo de artículos para la IEEE. Carlos Andrés Coutin G. Mis agradecimientos a mi madre que es la persona encargada de brindarme serenidad tranquilidad para salir adelante en mis metas.
  • 5. 5 V. REFERENCIAS Periodicals (Artículos de revista): [1] Universidad Nacional Abierta y a Distancia, Cátedra Unadista http://datateca.unad.edu.co/contenidos/434206/434206/ captulo_7_her ramientas_para_el_aprendizaje_virtual.html } [2] Universidad Nacional Abierta y a Distancia, Especialización en Seguridad Informática. http://campus0b.unadvirtual.org/mis_cursos/tablero201 31.php [3] Página Oficial de Debian. Recuperado de: https://www.debian.org/index.es.html [4] Instalación de Debian. Recuperado de: http://debianfacil.wordpress.com/instalar-debian/ VI. BIOGRAFÍAS Alexander Valencia. Nació en Istmina Chocó, el 27 de Marzo de 1876. Se graduó en la Universidad Manuela Belt rán en la ciudad de Bogotá. Ejerció profesionalmente en la Universidad Cooperativa de Colombia Seccional Quibdó, en la Universidad Nacional Abierta y a Distancia en la Ciudad de Quibdó, en la Secretaria de Salud Departamental del Chocó. Ent re sus campos de interés están la programación cliente servidor, maneja los lenguajes de programación Visual Basic, ent re los manejadores de base de datos están SQL, Acces FireBird. Especialista en Administ ración de Base de Datos. Carlos Andres Cout in Garcia Nació en Quibdó Choco el 9 de diciembre de 1985. Se graduó en la Universidad cooperat iva de Colombia en la ciudad de Quibdó, realizo una técnica en mantenimiento de hardware y software en el Sena. Ejerció profesionalmente en Compartel empresa de telecomunicaciones, Inst ituto Colombiano de Bienestar Familiar (ICBF) Donde se desempeña como administ rador de un aplicat ivo llamado Cuéntame.