Publicado el 27 de Octubre del 2020
1.046 visualizaciones desde el 27 de Octubre del 2020
451,7 KB
36 paginas
Creado hace 12a (23/08/2012)
DISEÑO DE METODOLOGIA PARA VERIFICAR LA SEGURIDAD EN
APLICACIONES WEB CONTRA INYECCIONES SQL.
Ivan Camilo Gómez
Código 1400214
UNIVERSIDAD MILITAR NUEVA GRANADA
FACULTAD DE INGENIERÍA
PROGRAMA DE INGENIERÍA EN TELECOMUNICACIONES
BOGOTÁ, D. C.
NOVIEMBRE 2011
1
DISEÑO DE METODOLOGIA PARA VERIFICAR LA SEGURIDAD EN
APLICACIONES WEB CONTRA INYECCIONES SQL.
Ivan Camilo Gómez González
Trabajo final de monografía presentado como requisito para optar por el título
de Ingeniero en Telecomunicaciones
Director
Ing. Edward Guillen
UNIVERSIDAD MILITAR NUEVA GRANADA
FACULTAD DE INGENIERÍA
PROGRAMA DE INGENIERÍA EN TELECOMUNICACIONES
BOGOTÁ, D. C.
MAYO 2012
2
NOTA DE ACEPTACIÓN
______________________________
______________________________
______________________________
______________________________
Presidente del jurado
______________________________
Jurado
______________________________
Jurado
BOGOTÁ, D. C., MAYO 2012
3
DEDICATORIA
A mis padres y su enorme paciencia;
A mi Esposa que se ha convertido en mi ancla y mi vida
Ivan Camilo
4
AGRADECIMIENTOS
A dios que me ha dado la fortaleza para sobrepasar todos los obstáculos que
se han presentado en mi vida y el cual me va a llevar a grandes caminos.
A mis padres por su paciencia en este proceso de crecimiento profesional y
por su apoyo incondicional en todas las situaciones de mi vida.
A mi esposa Erika por la comprensión y por el apoyo que siempre me presto
en el desarrollo de este proceso.
A la Universidad Militar Nueva Granada la cual me todos sus recursos
tecnológicos, organizacionales, humanos y logísticos para poder realizar este
trabajo, especialmente a mi director del proyecto el ingeniero Edward Paul
Guillen y a mi asesora Yaneth Cárdenas por sus constantes consejos y
recomendaciones.
5
TABLA DE CONTENIDO
1. INTRODUCCIÓN ........................................................................................ 8
1.1 TITULO .............................................................................................. 8
1.2 PLANTEAMIENTO DEL PROBLEMA ................................................ 8
1.3 OBJETIVOS .......................................................................................... 9
1.3.1 Objetivo General ............................................................................. 9
1.3.2 Objetivos Específicos...................................................................... 9
1.3.3 Antecedentes ............................................................................ 10
2. MARCO TEÓRICO ................................................................................... 12
2.1 MARCO TEÓRICO CONCEPTUAL" ............................................... 12
2.1.1 Aplicaciones Web ...................................................................... 12
2.1.2 Metodología de Seguridad ........................................................ 13
2.1.3 SQL ........................................................................................... 13
2.2 MARCO TEÓRICO REFERENCIAL ................................................ 15
2.2.1 Sistemas gestores de bases de datos ....................................... 15
POSTGRES SQL ............................................................................. 17
MYSQL ............................................................................................ 18
ORACLE .......................................................................................... 20
2.2..2 lenguajes de programación .......................................................... 21
php ................................................................................................... 21
ASP.................................................................................................. 22
JSP .................................................................................................. 23
2.2.3 Metodología OSSTMM .............................................................. 24
6
2.2.4
ITIL ............................................................................................ 27
2.2.5 OWASP ..................................................................................... 29
3. INGENIERÍA DEL PROYECTO ................................................................ 30
3.1 Desarrollo del proyecto .................................................................... 30
3.1.1
comparación de tres diferentes sistemas gestores de bases de
datos 30
3.1.2 Comparación de diferentes lenguajes de programación. .......... 31
3.1.3 Desarrollo de la metodología. ................................................... 32
4. CONCLUSIONES ..................................................................................... 36
7
1. INTRODUCCIÓN
Actualmente el creciente uso masivo de la tecnología y de Internet ha
facilitado al mundo, el uso de los diferentes servicios como consulta de
páginas estáticas, consulta de páginas dinámicas, reservas en línea, compra
de productos, asesorías online, entre otros.
Puesto que algunos de estos servicios manejan información confidencial, es
de vital importancia manejar dicha información con sumo cuidado, para evitar
la pérdida, la manipulación, o que accedan a estos activos.
Debido a que
los diferentes servicios mencionados anteriormente,
generalmente están automatizados mediante herramientas como las bases
de datos, es de vital importancia asegurar estas herramientas para que en lo
posible las intrusiones y manipulación sean nulas.
Este trabajo consiste en realizar una metodología que nos permita revisar y
aumentar la seguridad en las aplicaciones que específicamente manejen
bases de datos multidimensionales.
1.1 TITULO
“DISEÑO DE METODOLOGIA PARA VERIFICAR LA SEGURIDAD EN
APLICACIONES WEB CONTRA INYECCIONES SQL. ”
1.2 PLANTEAMIENTO DEL PROBLEMA
En algunas aplicaciones en Internet, las cuales están conectadas con bases
de datos se encuentran inconsistencias en la información que está allí
almacenada, como por ejemplo: la información no se encuentra completa, la
8
información ha sido modificada, la información ha sido borrada totalmente,
estas inconsistencias son debido a modificaciones realizadas por personas o
programas internos o ajenos a la organización, que no tienen los privilegios
para realizar este tipo de alteraciones o modificaciones
Actualmente según Owasp, en su artículo “El Top diez de los riesgos de las
aplicaciones”, nos dice que la principal vulnerabilidad en las aplicaciones web
son las inyecciones. Se denominan así puesto que el agresor envía o inyecta
cadenas de texto las cuales manipulan la sintaxis de los diferentes gestores
de bases de datos existentes, como por ejemplo, PostgreSQL,
Firebird,MySQL, Fox Pro, IBM Informix, Paradox, Microsoft SQL, entre otros.
Este tipo de fallas generan consecuencias como: consultas no autorizadas
de información, modificación de la información, borrado de la información o
que el atacante tome posesión total de la administración de la base de
datos.
Por lo anterior se ve la necesidad de crear un diseño metodológico para
verificar la seguridad en aplicaciones web contra inyecciones SQL, que nos
permita actuar de una manera dinámica en la protección de los recursos
informáticos.
1.3 OBJETIVOS
Las metas trazadas para llevar a cabo el proyecto son definidas como:
1.3.1 OBJETIVO GENERAL
Diseñar una metodología para el análisis de vulnerabilidades de
acuerdo a parámetros de comparación utilizados en ataques
denominados inyecciones por código SQL en aplicaciones web que
manejen bases de datos multidimensionales.
1.3.2 OBJETIVOS ESPECÍFICOS
Realizar una documentación de metodologías ya existentes
para la verificación de vulnerabilidades en aplicaciones web
contra inyecciones SQL.
Realizar una descripción de tres sistemas gestores de bases de
datos para utilizarlos como parámetros de comparación en la
metodología propuesta.
9
Realizar una descripción de tres lenguajes de programación en
los cuales están escritas las aplicaciones web para tomarlo
como otro parámetro de comparación.
Comparar tres tipos diferentes de metodologías existentes para
la verificación de las vulnerabilidades web, específicamente en
los ataques denominados inyección SQL.
Diseñar de acuerdo a
la
metodología para
la verificación de vulnerabilidades en
aplicaciones web contra los ataques denominados inyección
SQL.
los parámetros establecidos
Realizar la documentación pertinente de la metodología y de los
resultados obtenidos.
1.3.3 ANTECEDENTES
En el año 2002 en Estados Unidos, Chirs Anley presento un artículo
titulado ¨Inyección Avanzada de SQL en Servidores con Aplicaciones
SQL¨, en este documento se mira en detalle la técnica de inyección sql
aplicada a la plataforma Microsoft Internet Information Server/Active
Server Pages/SQL server.
En el año 2005 OWASP, Open Web Appication Security Project,
presenta en su pagina de Internet, www.owasp.org, un articulo titulado
¨ UNA GUIA PARA CONSTRUIR APLICACIONES Y SERVICIOS WEB
SEGUROS.¨ en la cual se muestra como evitar las vulnerabilidades de
las aplicaciones para las inyecciones SQL.
En el año 2008, Carlos Tori libera un articulo titulado ¨Hacking Ético¨ en
el cual en uno de sus capítulos habla sobre la
Comentarios de: Diseño de metodologia para verificar la seguridad en aplicaciones web contra Inyecciones SQL (0)
No hay comentarios