SlideShare una empresa de Scribd logo
1 de 23
Descargar para leer sin conexión
1
Vulnerabilidades en sitios web
Vulnerabilidades en sitios web
Aradi Pineda Barranca
Alba Nidya Soto Domínguez
Instituto Tecnológico de Tuxtepec
Abril 2014
2
Vulnerabilidades en sitios web
AGRADECIMIENTOS
A MIS PADRES:
Con todo mi cariño y mi amor para las personas que hicieron todo en la vida para
que yo pudiera lograr mis sueños, por motivarme y darme la mano cuando sentía
que el camino terminaba, a ustedes por siempre mi corazón y mi agradecimiento.
Aradi Pineda Barranca
Para poder realizar este proyecto de la mejor manera posible fue necesario el
apoyo de muchas personas a las cuales quiero agradecer.
En primer lugar a Dios haberme dado la vida y por darme la familia que me dio.
A mi madre por su apoyo incondicional y por alentarme a hacer las cosas de la
mejor manera posible al igual el apoyo brindado para la realización de este
software, a Vicente que me ha ayudado a la largo de mis estudios y me ha
apoyado en todo lo que me propongo.
A mi hermano por su amor, apoyo incondicional y por alentarme a ser una mejor
persona en la vida.
Gracias también a mis amigos por ayudarme y apoyarme sin condiciones y por
formar parte de mi vida en estos 4 años dentro y fuera de clases. Gracias por la
amistad que me brindan.
Alba Nidya Soto Domínguez
3
Vulnerabilidades en sitios web
RESUMEN & ABSTRACT
Al resguardar información, una aplicación web puede ser el objetivo de usuarios
maliciosos que buscan tener acceso a ella. De la misma forma, al implementarse la
aplicación los analistas, diseñadores y desarrolladores pueden dejar, sin saberlo,
algún hueco de seguridad. Adicionalmente, el software y hardware empleado para
la puesta en marcha de la aplicación pueden tener una vulnerabilidad o hueco de
seguridad.
Por ello, es conveniente estar al tanto de los posibles riesgos que afectan a las
aplicaciones web, así como el impacto que tienen y las acciones que se pueden
tomar para corregir tales situaciones.
OWASP es un grupo de seguridad y profesionales de aplicaciones web con varios
años de experiencia para ayudar a remediar algunos de los problemas que se
presentan en el campo del desarrollo de aplicaciones web.
Este grupo se enfoca en el entendimiento y mejoramiento de la seguridad para las
aplicaciones y servicios web.
Entre otras cosas, OWASP tiene disponibles guías gratuitas de desarrollo,
recomendaciones de buenas prácticas, información actualizada de vulnerabilidades
comunes en aplicaciones web y una herramienta de aprendizaje de seguridad en
aplicaciones web conocida como “WebGoat”.
4
Vulnerabilidades en sitios web
PALABRAS CLAVE/KEYWORDS
 WPScan
 Nmap
 TamperData
 OWASP
5
Vulnerabilidades en sitios web
INTRODUCCIÓN
En 1980, Tim Berners-Lee, desarrolló ENQUIRE, como una base de datos personal
de gente y modelos de software, pero también como una forma de interactuar con
el hipertexto. En 1990, Berners-Lee había desarrollado todas las herramientas
necesarias para trabajar la Web: HTTP, HTML, el primer servidor web,
WorldWideWeb y el primer navegador web.
Los sitios web tienen un sin fin de vulnerabilidades que hacen que estos corran un
gran riesgo de ser atacados desde varios puntos, con este documento se espera
tener las herramientas teóricas para el dominio de los temas que se abordarán en
cada uno de los apartados.
El objetivo es impulsar a las organizaciones que utilizan sitios web a madurar en la
comprensión y gestión de aplicaciones de seguridad.
6
Vulnerabilidades en sitios web
MÉTODOS Y MATERIALES
VULNERABILIDADES DE SEGURIDAD EN UN SISTEMA
Al resguardar información, una aplicación web puede ser objetivo de usuarios
maliciosos que buscan tener acceso a ella. De la misma forma, al implementarse la
aplicación los analistas, diseñadores y desarrolladores pueden dejar, sin saberlo,
algún hueco de seguridad. Adicionalmente, el software y hardware empleado para
la puesta en marcha de la aplicación pueden tener alguna vulnerabilidad o hueco
de seguridad.
Por ello, es conveniente estar al tanto de os posibles riesgos que afectan a las
aplicaciones web, así como el impacto que tienen y las acciones que se pueden
tomar para corregir tales situaciones.
OWASP realiza un recuento de los ataques y vulnerabilidades más críticas en
aplicaciones web. Se reportan con ejemplos y detalles que explican esos riesgos
para desarrolladores de software, administradores e interesados en seguridad web.
El objetivo es impulsar a las organizaciones a madurar en la comprensión y gestión
de aplicaciones de seguridad.
7
Vulnerabilidades en sitios web
TOP 10 DE OWASPP
1. Inyección
Consiste en el envío de código malicioso al sistema por parte de un usuario o bien
por parte de otro sistema, muchas veces el código es enviado en texto plano.
El código puede intentarse enviar por cualquier entrada:
• Consultas al directorio activo.
• Consultas a la base de datos.
• Entradas en formas web.
• Consultas XPath.
• Comandos del sistema operativo.
• Entradas de funciones.
Sucede cuando no se están validando adecuadamente las entradas proporcionadas
por el usuario, confiando en que éste ingresa al sistema.
CONSECUENCIAS
• Pérdida y/o corrupción de datos.
• Negación de acceso.
ACCIONES
• Implementar código seguro: validación de entradas, incluso las provenientes
de otros sistemas.
• Uso de herramientas para realizar la búsqueda de vulnerabilidades a ataques
de inyección.
• Es altamente recomendable mantener datos no confiables separados de
comandos y consultas.
8
Vulnerabilidades en sitios web
• Uso de API’s seguras (no intérpretes).
2. Pérdida de autenticación y gestión de sesiones
Son las vulnerabilidades relacionadas con la pérdida de autenticación y gestión de
sesiones. Son críticas en la seguridad de las aplicaciones y en especial de las
aplicaciones web, ya que permiten a un atacante suplantar la información de un
determinado usuario, pudiendo llegar a obtener una cuenta de administración que
le permita sabotear los controles de autorización y registro de la aplicación.
CONSECUENCIAS
• Acceso no autorizado a cualquier tipo de información que se encuentre
almacenada en el servidor.
• Acceso a servicios que han sido comprometidos.
ACCIONES
• Considerar una buena autenticación de los usuarios.
• Proteger los datos de sesión (id, token, contraseña).
• Realizar seguimiento robusto de sesiones.
• Evitar vulnerabilidades del tipo XSS, ya que pueden provocar el secuestro de
datos de sesión.
9
Vulnerabilidades en sitios web
3. Cross-Site Scripting (XSS)
Es la inserción de cadenas de texto no validas en la propia aplicación web, por parte
de un usuario malicioso (puede estar dentro del sistema, como usuario o
administrados, o fuera de él), el cual espera que sea ejecutado para obtener
información o algún beneficio.
Se encuentra clasificado en tres tipos diferentes:
• Almacenado. Es aquel código que se queda almacenado de forma
permanente dentro del servidor de aplicaciones web. Por ejemplo, en la base
de datos.
• Reflejado. Es el código que no se almacena en la base de datos de la
aplicación web que es atacada, si no que se ejecuta en el momento en que
se ingresa en alguna de las entradas que no valida la entrada proporcionada.
• Basado en DOM. Es aquel código que modifica el DOM de la aplicación web
original.
CONSECUENCIAS
• Secuestro de sesiones de usuario.
• Destrucción de sitios web.
• Instalación de código malicioso en navegadores.
• Re-direccionamiento a sitios maliciosos.
ACCIONES
• Llevar a cabo pruebas de análisis de código.
• Uso de herramientas de escaneo estáticas y dinámicas.
• Separar datos no confiables del contenido activo del navegador.
• Validación de entradas de datos.
10
Vulnerabilidades en sitios web
4. Referencia directa insegura a objetos
Consiste en sustituir el valor de algún parámetro que hace referencia a un objeto
por el de otro objeto y se le da acceso aunque no esté autorizado.
CONSECUENCIAS
• Acceso a información restringida.
• Acceso a toda información que es referenciada por parámetros similares.
ACCIONES
• Realizar análisis del código y pruebas manuales.
• Realizar verificaciones a nivel código para referencias directas a recursos
restringidos.
• Hacer uso de referencias indirectas por usuario o sesión.
• Comprobar el acceso de los usuarios hacia los objetos.
11
Vulnerabilidades en sitios web
5. Configuración errónea de seguridad
Es un fallo o error en la configuración de seguridad definida e implementada para la
aplicación, marcos de trabajo, servidor de aplicación, servidor web, servidor de base
de datos y la plataforma. Todas estas configuraciones deben ser definidas,
implementadas, y mantenidas. Esto incluye mantener todo el software al dia,
incluyendo las librerías de código que utiliza la aplicación.
Puede ocurrir en:
• Plataformas.
• Servidores web.
• Servidores de aplicaciones.
• Ambientes de trabajo.
• Códigos personalizados.
Hace uso de:
• Cuentas predeterminadas.
• Paginas no usadas.
• Software no actualizado o no parchado.
• Archivos o directorios no protegidos.
CONSECUENCIAS
• Acceso no autorizado a datos o funciones del sistema.
ACCIONES
• Usar herramientas automáticas para ubicar: actualizaciones pendientes,
configuraciones defectuosas, cuentas predeterminadas activas, servicios
activos no necesarios.
• Asegurar todos los niveles de la pila de la aplicación.
12
Vulnerabilidades en sitios web
6. Exposición de datos sensibles
Consiste en no proteger adecuadamente los datos sensibles, tales como tarjetas de
crédito, identificaciones de impuestos, y las credenciales de autenticación. Los
atacantes pueden robar o modificar los datos para llevar a cabo fraude de tarjetas
de crédito, robo de identidad u otros delitos, puede suceder con datos almacenados
o mientras se realiza se transmisión.
CONSECUENCIAS
 Robo de datos confidenciales, como los registros de salud, credenciales,
datos personales, tarjetas de crédito, etc.
ACCIONES
 Cifrar los datos sensibles almacenados y durante su transmisión.
 No almacenar datos confidenciales innecesariamente.
 Cifrar las contraseñas que se almacenan con un algoritmo diseñado
específicamente para la protección de contraseña, como bcrypt, PBKDF2 o
scrypt.
 Desactivar la función de autocompletar en los formularios de captura de datos
sensibles y desactivar el almacenamiento en caché de las páginas que
contienen datos sensibles.
13
Vulnerabilidades en sitios web
7. Falta de control de acceso a nivel de funciones
Es la falta de controles de acceso para funciones privadas de las aplicaciones web.
Si no se verifican peticiones, los atacantes serán capaces de forzar peticiones con
el fin de acceder a las funciones de la aplicación sin la autorización apropiada.
CONSECUENCIAS
 Acceso a funciones privadas de la aplicación por usuarios comunes.
 Acceso y modificación de los datos del sistema.
ACCIONES
 Implementar módulos de autenticación para las funciones privadas del
sistema.
14
Vulnerabilidades en sitios web
8. CSRF (Cross-Site Request Forgery)
Es un ataque que obliga al usuario ejecutar acciones no deseadas en una
aplicación web en la que este actualmente autenticado. Con un poco de ayuda de
ingeniería social (como el envío de un enlace por correo electrónico o mediante el
chat), un atacante puede obligar a los usuarios de la aplicación web ejecutar
acciones a selección del atacante. Si el usuario objetivo es la cuenta de
administrador, esto puede poner en peligro toda la aplicación web.
CONSECUENCIAS
 Se puede acceder, modificar y utilizar cualquier dato o función que se este
autorizado a usar.
ACCIONES
 Revisión de código fuente.
 Realizar pruebas de penetración.
 Descartar como protección las cookies de sesión, las direcciones IP origen y
otro tipo de información.
 Analizar enlaces y formularios que invoquen funciones que permitan cambiar
estados.
15
Vulnerabilidades en sitios web
9. Uso de componentes con vulnerabilidades conocidas
Consiste en el uso de componentes, tales como bibliotecas, frameworks y otros
módulos de software vulnerables, que casi siempre se ejecutan con privilegios de
administrador. Si se explota un componente vulnerable, puede facilitar la perdida de
datos importantes o toma de control del servidor.
CONSECUENCIAS
 Inyecciones de código.
 XSS.
 Romper controles de acceso.
ACCIONES
 Mantener actualizado cada componente implementado.
 En caso de usar componentes que sean desarrollos propios, realizar pruebas
de seguridad sobre ellos.
16
Vulnerabilidades en sitios web
10. Redirecciones y reenvíos no validos
Es una redirección o reenvío por parte de las aplicaciones web a otras páginas o
sitios web, sin una correcta validación. Los atacantes pueden redirigir a las víctimas
a sitios de malware o phishing.
CONSECUENCIAS
 Robo de credenciales de autenticación.
 Instalación de malware.
 Phishing.
ACCIONES
 Realizar un mapeo del sitio (spidering) para detectar redirecciones
maliciosas.
 Evitar el uso de redirects y forwards.
 Si se utilizan, no añadir los parámetros de usuario en el destino.
 Si no se pueden evitar los parámetros de destino, asegurarse que el valor
proporcionado es válido y autorizado por el usuario.
17
Vulnerabilidades en sitios web
METODOLOGÍA PARA PRUEBAS DE PENETRACIÓN
1. Pruebas de penetración (pentest)
Un pentest es una prueba realizada a aplicaciones web, en la cual se intentan
reproducir acciones de usuarios maliciosos (internos y externos a la organización).
Estas acciones cubren tanto la interacción con la aplicación como la parte de
configuraciones y software empleado.
Ayuda a encontrar los huecos de seguridad que pueden permitir acceso a
información sensible, modificar la funcionalidad original del sitio, entre otras
acciones.
Las pruebas de penetración deben considerar aspectos como:
 Pruebas de SQL Injection.
 Pruebas de Cross-Site Scripting (XSS).
 Pruebas de JavaScript.
 Alertas de red y escaneo de puertos.
VENTAJAS
 Generación de informes oportunos.
 Mejoras en la estrategia.
 Mejoras en la aplicación.
DESVENTAJAS
 Riesgo de no disponibilidad.
 Riesgo de pérdida o alteración de la información.
18
Vulnerabilidades en sitios web
Para realizar una prueba de penetración es necesario seguir una metodología para
que todo lleve un orden y se logren los resultados esperados.
2. Metodología de las pruebas de penetración
Fases de las pruebas de penetración:
 Planeación.
 Reconocimiento.
 Escaneo.
 Explotación.
 Documentación.
2.1 Planeación
Permite definir totalmente el proyecto, marcando los límites y estableciendo los
elementos a evaluar y lo más importante, obteniendo la autorización que respaldara
al pentester durante toda su actividad, tanto técnica como legalmente.
De manera general se pueden listar los siguientes elementos en esta etapa de
preparación:
 Entrevista con el solicitante.
 Información de consecuencias de las pruebas.
 Integración de equipo de trabajo.
 Permiso.
 Acuerdo de confidencialidad.
 Contrato.
2.2. Reconocimiento
Es el proceso de investigación de la organización destino para reunir información
respecto de las fuentes disponibles, tales como los servicios de registro de dominios
19
Vulnerabilidades en sitios web
y sitios web. Algunas personas incluyen técnicas como la ingeniería social y el
dumpsterdiving en la fase de reconstrucción de información.
El especialista en pentest debe intentar conseguir la mayor cantidad de información
como sea posible acerca del objetivo. El reconocimiento se puede hacer utilizando
dos técnicas: pasiva y activa.
Una técnica pasiva es la mejor opción para empezar, ya que normalmente podría
existir un IDS u otras formas de protección. Se trata de descubrir la información
pública disponible en Internet, folletos, entre otros.
Una técnica activa es más intrusiva, la cual podría consistir en utilizar una
herramienta automatizada o en aplicar ingeniería social.
2.3. Escaneo
El objetivo en esta fase es encontrar las entradas vulnerables del objeto de
evaluación, tales como puntos de acceso inalámbrico, sistemas disponibles, puertos
en escucha y las vulnerabilidades.
El escaneo es el proceso de encontrar aperturas en la organización de destino, tales
como puertas de acceso a Internet, puntos de acceso inalámbricos, sistemas
disponibles, los puertos en escucha y las listas de vulnerabilidades. Algunas
herramientas muy comunes para esta etapa son:
 Escaneo de puertos
 Nmap
 Escaneo de vulnerabilidades
 Nessus
2.4. Explotación
Al final de la fase de escaneo se identificaron las posibles vulnerabilidades
potenciales y cierta información como el SO, el cual es de mucha utilidad ya que
20
Vulnerabilidades en sitios web
permitirá crear un vector de ataque que ayude a elegir las herramientas, exploits o
las técnicas adecuadas para poder explotar los sistemas. En esta fase se prueban
las vulnerabilidades con una clasificación de alto riesgo otorga por el escáner de
vulnerabilidades ya que posiblemente sean las que permitan explotar el objetivo de
evaluación.
Esta fase tiene como objetivos:
 Reducir o eliminar falsos positivos.
 Conocer el impacto real de una vulnerabilidad.
En esta fase se prueban las vulnerabilidades encontradas en la fase anterior se
revisan y se evalúan detalladamente ya que en ocasiones las herramientas pueden
listar falsos positivos; si se logra explotar alguno de estos fallos se garantizaran el
acceso al sistema o divulgación de información sensible.
2.5. Documentación
La documentación en esta fase incluye los siguientes puntos:
 Resumen ejecutivo.
 Introducción.
 Metodología.
 Hallazgos.
 Alto riesgo.
 Riesgo medio.
 Bajo riesgo.
 Recomendaciones.
El objetivo de esta fase es archivar los resultados obtenidos desde el inicio de la
fase de reconocimiento hasta la fase de explotación para generar un informe final
de los hallazgos encontrados durante el proceso completo de las pruebas.
21
Vulnerabilidades en sitios web
RESULTADOS
Al momento de la elaboración de este artículo se esperaba que el lector localizara
las vulnerabilidades que pueden existir en los sitios web, así mismo si el lector era
quien elaboraba estos sitios se mantuviera alerta y prevenid de los diferentes
riesgos que existen.
Como ha de suponerse, existen varios libros, artículos y reportes del tema, que
informan sobre los riesgos que existen cuando es elaborado un sitio web.
Se lograron estudiar diferentes vulnerabilidades en aplicaciones web y mecanismos
que permiten la disminución de riesgos de estas.
Los conocimientos adquiridos permitieron al lector realizar diferentes pruebas para
detectar vulnerabilidades y así este, pueda enfocarse en las fallas que encuentre.
22
Vulnerabilidades en sitios web
DISCUSIÓN
Se obtuvieron los resultados esperados, el lector se sintió atraído y motivado en la
realización de pruebas para determinar si su sitio web tenía o tiene algún fallo.
Se espera con este trabajo que la persona que lo consulte despeje sus dudas y se
atreva a investigar las a fondo sobre las vulnerabilidades que existen y a las cuales
se encuentra expuesto.
23
Vulnerabilidades en sitios web
REFERENCIAS
(Open Web Application Security Project OWASP Top 10, s.f.)
(Pruebas de penetración, s.f.)
(Foundation, 2008)
(Análisis de vulnerabilidades y auditorías de seguridad bajo demanda, s.f.)
(México, 2013)

Más contenido relacionado

La actualidad más candente

What is security testing and why it is so important?
What is security testing and why it is so important?What is security testing and why it is so important?
What is security testing and why it is so important?ONE BCG
 
Security Analyst Workshop - 20190314
Security Analyst Workshop - 20190314Security Analyst Workshop - 20190314
Security Analyst Workshop - 20190314Florian Roth
 
SOC: Use cases and are we asking the right questions?
SOC: Use cases and are we asking the right questions?SOC: Use cases and are we asking the right questions?
SOC: Use cases and are we asking the right questions?Jonathan Sinclair
 
Introducing ArTHIR - ATT&CK Remote Threat Hunting Incident Response Windows tool
Introducing ArTHIR - ATT&CK Remote Threat Hunting Incident Response Windows toolIntroducing ArTHIR - ATT&CK Remote Threat Hunting Incident Response Windows tool
Introducing ArTHIR - ATT&CK Remote Threat Hunting Incident Response Windows toolMichael Gough
 
Ransomware Resistance
Ransomware ResistanceRansomware Resistance
Ransomware ResistanceFlorian Roth
 
Penetration testing
Penetration testingPenetration testing
Penetration testingAmmar WK
 
Threat Hunting Workshop
Threat Hunting WorkshopThreat Hunting Workshop
Threat Hunting WorkshopSplunk
 
Real World Application Threat Modelling By Example
Real World Application Threat Modelling By ExampleReal World Application Threat Modelling By Example
Real World Application Threat Modelling By ExampleNCC Group
 
MITRE ATT&CKcon 2018: From Automation to Analytics: Simulating the Adversary ...
MITRE ATT&CKcon 2018: From Automation to Analytics: Simulating the Adversary ...MITRE ATT&CKcon 2018: From Automation to Analytics: Simulating the Adversary ...
MITRE ATT&CKcon 2018: From Automation to Analytics: Simulating the Adversary ...MITRE - ATT&CKcon
 
Fantastic Red Team Attacks and How to Find Them
Fantastic Red Team Attacks and How to Find ThemFantastic Red Team Attacks and How to Find Them
Fantastic Red Team Attacks and How to Find ThemRoss Wolf
 
MITRE ATT&CKcon 2018: Building an Atomic Testing Program, Brian Beyer, Red Ca...
MITRE ATT&CKcon 2018: Building an Atomic Testing Program, Brian Beyer, Red Ca...MITRE ATT&CKcon 2018: Building an Atomic Testing Program, Brian Beyer, Red Ca...
MITRE ATT&CKcon 2018: Building an Atomic Testing Program, Brian Beyer, Red Ca...MITRE - ATT&CKcon
 
Introduction to red team operations
Introduction to red team operationsIntroduction to red team operations
Introduction to red team operationsSunny Neo
 
Threat hunting - Every day is hunting season
Threat hunting - Every day is hunting seasonThreat hunting - Every day is hunting season
Threat hunting - Every day is hunting seasonBen Boyd
 
Mitre Attack - Credential Dumping - updated.pptx
Mitre Attack - Credential Dumping - updated.pptxMitre Attack - Credential Dumping - updated.pptx
Mitre Attack - Credential Dumping - updated.pptxwaizuq
 
Security Strategy and Tactic with Cyber Threat Intelligence (CTI)
Security Strategy and Tactic with Cyber Threat Intelligence (CTI)Security Strategy and Tactic with Cyber Threat Intelligence (CTI)
Security Strategy and Tactic with Cyber Threat Intelligence (CTI)Priyanka Aash
 
Penetration Testing Basics
Penetration Testing BasicsPenetration Testing Basics
Penetration Testing BasicsRick Wanner
 

La actualidad más candente (20)

Breach and attack simulation tools
Breach and attack simulation toolsBreach and attack simulation tools
Breach and attack simulation tools
 
What is security testing and why it is so important?
What is security testing and why it is so important?What is security testing and why it is so important?
What is security testing and why it is so important?
 
MITRE ATT&CK Framework
MITRE ATT&CK FrameworkMITRE ATT&CK Framework
MITRE ATT&CK Framework
 
Security Analyst Workshop - 20190314
Security Analyst Workshop - 20190314Security Analyst Workshop - 20190314
Security Analyst Workshop - 20190314
 
SOC: Use cases and are we asking the right questions?
SOC: Use cases and are we asking the right questions?SOC: Use cases and are we asking the right questions?
SOC: Use cases and are we asking the right questions?
 
Introducing ArTHIR - ATT&CK Remote Threat Hunting Incident Response Windows tool
Introducing ArTHIR - ATT&CK Remote Threat Hunting Incident Response Windows toolIntroducing ArTHIR - ATT&CK Remote Threat Hunting Incident Response Windows tool
Introducing ArTHIR - ATT&CK Remote Threat Hunting Incident Response Windows tool
 
Ransomware Resistance
Ransomware ResistanceRansomware Resistance
Ransomware Resistance
 
Penetration testing
Penetration testingPenetration testing
Penetration testing
 
Threat Hunting Workshop
Threat Hunting WorkshopThreat Hunting Workshop
Threat Hunting Workshop
 
Owasp top ten 2019
Owasp top ten 2019Owasp top ten 2019
Owasp top ten 2019
 
Real World Application Threat Modelling By Example
Real World Application Threat Modelling By ExampleReal World Application Threat Modelling By Example
Real World Application Threat Modelling By Example
 
MITRE ATT&CKcon 2018: From Automation to Analytics: Simulating the Adversary ...
MITRE ATT&CKcon 2018: From Automation to Analytics: Simulating the Adversary ...MITRE ATT&CKcon 2018: From Automation to Analytics: Simulating the Adversary ...
MITRE ATT&CKcon 2018: From Automation to Analytics: Simulating the Adversary ...
 
Fantastic Red Team Attacks and How to Find Them
Fantastic Red Team Attacks and How to Find ThemFantastic Red Team Attacks and How to Find Them
Fantastic Red Team Attacks and How to Find Them
 
MITRE ATT&CKcon 2018: Building an Atomic Testing Program, Brian Beyer, Red Ca...
MITRE ATT&CKcon 2018: Building an Atomic Testing Program, Brian Beyer, Red Ca...MITRE ATT&CKcon 2018: Building an Atomic Testing Program, Brian Beyer, Red Ca...
MITRE ATT&CKcon 2018: Building an Atomic Testing Program, Brian Beyer, Red Ca...
 
Social Engineering | #ARMSec2015
Social Engineering | #ARMSec2015Social Engineering | #ARMSec2015
Social Engineering | #ARMSec2015
 
Introduction to red team operations
Introduction to red team operationsIntroduction to red team operations
Introduction to red team operations
 
Threat hunting - Every day is hunting season
Threat hunting - Every day is hunting seasonThreat hunting - Every day is hunting season
Threat hunting - Every day is hunting season
 
Mitre Attack - Credential Dumping - updated.pptx
Mitre Attack - Credential Dumping - updated.pptxMitre Attack - Credential Dumping - updated.pptx
Mitre Attack - Credential Dumping - updated.pptx
 
Security Strategy and Tactic with Cyber Threat Intelligence (CTI)
Security Strategy and Tactic with Cyber Threat Intelligence (CTI)Security Strategy and Tactic with Cyber Threat Intelligence (CTI)
Security Strategy and Tactic with Cyber Threat Intelligence (CTI)
 
Penetration Testing Basics
Penetration Testing BasicsPenetration Testing Basics
Penetration Testing Basics
 

Destacado

10 Riesgos más importantes en aplicaciones Web
10 Riesgos más importantes en aplicaciones Web10 Riesgos más importantes en aplicaciones Web
10 Riesgos más importantes en aplicaciones Webeliseo ortiz
 
Seguridad web
Seguridad webSeguridad web
Seguridad webcamposer
 
Las diez principales amenazas para las bases de datos
Las diez principales amenazas para las bases de datosLas diez principales amenazas para las bases de datos
Las diez principales amenazas para las bases de datosImperva
 
Capacitacion sobre Desarrollo Seguro - SDL / OWASP 2013
Capacitacion sobre Desarrollo Seguro - SDL / OWASP 2013Capacitacion sobre Desarrollo Seguro - SDL / OWASP 2013
Capacitacion sobre Desarrollo Seguro - SDL / OWASP 2013Enrique Gustavo Dutra
 
Los 10 principales riesgos en aplicaciones web #CPMX5
Los 10 principales riesgos en aplicaciones web #CPMX5Los 10 principales riesgos en aplicaciones web #CPMX5
Los 10 principales riesgos en aplicaciones web #CPMX5SemanticWebBuilder
 
Gestion calidad cambio
Gestion calidad cambioGestion calidad cambio
Gestion calidad cambioAlex Vaca
 
09 Global Knowledge II Avanza 2009
09 Global Knowledge II Avanza 200909 Global Knowledge II Avanza 2009
09 Global Knowledge II Avanza 2009Pepe
 
SAT - SISTEMA DE ALERTA TEMPRANA - REGIÓN CALLAO
SAT - SISTEMA DE ALERTA TEMPRANA - REGIÓN CALLAOSAT - SISTEMA DE ALERTA TEMPRANA - REGIÓN CALLAO
SAT - SISTEMA DE ALERTA TEMPRANA - REGIÓN CALLAOWalter Vegazo Muro
 
Gestión de riesgo, calidad y cambio en el desarrollo de proyectos de software
Gestión de riesgo, calidad y cambio en el desarrollo de proyectos de softwareGestión de riesgo, calidad y cambio en el desarrollo de proyectos de software
Gestión de riesgo, calidad y cambio en el desarrollo de proyectos de softwarefredycollaguazo
 
Seguridad en la nube exposicion completa
Seguridad en la nube   exposicion completaSeguridad en la nube   exposicion completa
Seguridad en la nube exposicion completaMaxwell Kenshin
 
Administración de riesgos en un proyecto software
Administración de riesgos en un proyecto softwareAdministración de riesgos en un proyecto software
Administración de riesgos en un proyecto softwareAnna Vega
 
Memorias webCast Introduccion al analisis y gestión de riesgos
Memorias webCast Introduccion al analisis y gestión de riesgosMemorias webCast Introduccion al analisis y gestión de riesgos
Memorias webCast Introduccion al analisis y gestión de riesgosAranda Software
 
Análisis de riesgos de un proyecto de software
Análisis de riesgos de un proyecto de softwareAnálisis de riesgos de un proyecto de software
Análisis de riesgos de un proyecto de softwareAngel Reyes
 
Gestión de riesgo, calidad y cambio en el desarrollo de proyectos de software
Gestión de riesgo, calidad y cambio en el desarrollo de proyectos de softwareGestión de riesgo, calidad y cambio en el desarrollo de proyectos de software
Gestión de riesgo, calidad y cambio en el desarrollo de proyectos de softwareBlace57
 
Gestion De Riesgos
Gestion  De RiesgosGestion  De Riesgos
Gestion De Riesgosmalupahu
 
Guia tecnica para evaluación de software
Guia tecnica para evaluación de softwareGuia tecnica para evaluación de software
Guia tecnica para evaluación de softwareAlex Betancur
 
Gestion Riesgos
Gestion RiesgosGestion Riesgos
Gestion RiesgosDiego Celi
 

Destacado (20)

10 Riesgos más importantes en aplicaciones Web
10 Riesgos más importantes en aplicaciones Web10 Riesgos más importantes en aplicaciones Web
10 Riesgos más importantes en aplicaciones Web
 
Seguridad web
Seguridad webSeguridad web
Seguridad web
 
Las diez principales amenazas para las bases de datos
Las diez principales amenazas para las bases de datosLas diez principales amenazas para las bases de datos
Las diez principales amenazas para las bases de datos
 
Capacitacion sobre Desarrollo Seguro - SDL / OWASP 2013
Capacitacion sobre Desarrollo Seguro - SDL / OWASP 2013Capacitacion sobre Desarrollo Seguro - SDL / OWASP 2013
Capacitacion sobre Desarrollo Seguro - SDL / OWASP 2013
 
Los 10 principales riesgos en aplicaciones web #CPMX5
Los 10 principales riesgos en aplicaciones web #CPMX5Los 10 principales riesgos en aplicaciones web #CPMX5
Los 10 principales riesgos en aplicaciones web #CPMX5
 
Gestion calidad cambio
Gestion calidad cambioGestion calidad cambio
Gestion calidad cambio
 
09 Global Knowledge II Avanza 2009
09 Global Knowledge II Avanza 200909 Global Knowledge II Avanza 2009
09 Global Knowledge II Avanza 2009
 
SAT - SISTEMA DE ALERTA TEMPRANA - REGIÓN CALLAO
SAT - SISTEMA DE ALERTA TEMPRANA - REGIÓN CALLAOSAT - SISTEMA DE ALERTA TEMPRANA - REGIÓN CALLAO
SAT - SISTEMA DE ALERTA TEMPRANA - REGIÓN CALLAO
 
Gestión de riesgo, calidad y cambio en el desarrollo de proyectos de software
Gestión de riesgo, calidad y cambio en el desarrollo de proyectos de softwareGestión de riesgo, calidad y cambio en el desarrollo de proyectos de software
Gestión de riesgo, calidad y cambio en el desarrollo de proyectos de software
 
04 ingsoft jdchc
04 ingsoft jdchc04 ingsoft jdchc
04 ingsoft jdchc
 
análisis y gestión del riesgo
análisis y gestión del riesgoanálisis y gestión del riesgo
análisis y gestión del riesgo
 
Seguridad en la nube exposicion completa
Seguridad en la nube   exposicion completaSeguridad en la nube   exposicion completa
Seguridad en la nube exposicion completa
 
Administración de riesgos en un proyecto software
Administración de riesgos en un proyecto softwareAdministración de riesgos en un proyecto software
Administración de riesgos en un proyecto software
 
Memorias webCast Introduccion al analisis y gestión de riesgos
Memorias webCast Introduccion al analisis y gestión de riesgosMemorias webCast Introduccion al analisis y gestión de riesgos
Memorias webCast Introduccion al analisis y gestión de riesgos
 
Análisis de riesgos de un proyecto de software
Análisis de riesgos de un proyecto de softwareAnálisis de riesgos de un proyecto de software
Análisis de riesgos de un proyecto de software
 
Gestión de riesgo, calidad y cambio en el desarrollo de proyectos de software
Gestión de riesgo, calidad y cambio en el desarrollo de proyectos de softwareGestión de riesgo, calidad y cambio en el desarrollo de proyectos de software
Gestión de riesgo, calidad y cambio en el desarrollo de proyectos de software
 
Gestion De Riesgos
Gestion  De RiesgosGestion  De Riesgos
Gestion De Riesgos
 
Gestión de riesgos en proyectos
Gestión de riesgos en proyectosGestión de riesgos en proyectos
Gestión de riesgos en proyectos
 
Guia tecnica para evaluación de software
Guia tecnica para evaluación de softwareGuia tecnica para evaluación de software
Guia tecnica para evaluación de software
 
Gestion Riesgos
Gestion RiesgosGestion Riesgos
Gestion Riesgos
 

Similar a Vulnerabilidades en sitios web(español)

Owasp top 10_2007_spanish
Owasp top 10_2007_spanishOwasp top 10_2007_spanish
Owasp top 10_2007_spanishTommy Clive
 
Castaneda suarezandresfernando2017
Castaneda suarezandresfernando2017Castaneda suarezandresfernando2017
Castaneda suarezandresfernando2017Idat
 
Argentesting 2017 - Proyecto OWASP Top 10
Argentesting 2017 - Proyecto OWASP Top 10Argentesting 2017 - Proyecto OWASP Top 10
Argentesting 2017 - Proyecto OWASP Top 10Argentesting
 
Samurai Web Testing Framework 2.0
Samurai Web Testing Framework 2.0Samurai Web Testing Framework 2.0
Samurai Web Testing Framework 2.0Alonso Caballero
 
Webinar Gratuito "Reconocimiento Web"
Webinar Gratuito "Reconocimiento Web"Webinar Gratuito "Reconocimiento Web"
Webinar Gratuito "Reconocimiento Web"Alonso Caballero
 
Dragonjarcon2015 - ¿Cómo programar aplicaciones seguras? por Paulino Calderon...
Dragonjarcon2015 - ¿Cómo programar aplicaciones seguras? por Paulino Calderon...Dragonjarcon2015 - ¿Cómo programar aplicaciones seguras? por Paulino Calderon...
Dragonjarcon2015 - ¿Cómo programar aplicaciones seguras? por Paulino Calderon...Websec México, S.C.
 
Secure Development, Seguridad al Codificar
Secure Development, Seguridad al CodificarSecure Development, Seguridad al Codificar
Secure Development, Seguridad al CodificarAndrés Londoño
 
Taller Virtual de Pentesting contra Aplicaciones Web
Taller Virtual de Pentesting contra Aplicaciones WebTaller Virtual de Pentesting contra Aplicaciones Web
Taller Virtual de Pentesting contra Aplicaciones WebAlonso Caballero
 
Curso de Hacking Aplicaciones Web 2012 (CNHAW)
Curso de Hacking Aplicaciones Web 2012 (CNHAW)Curso de Hacking Aplicaciones Web 2012 (CNHAW)
Curso de Hacking Aplicaciones Web 2012 (CNHAW)NPROS Perú
 
Resumen curso de seguridad para desarrolladores de aplicaciones web y móviles...
Resumen curso de seguridad para desarrolladores de aplicaciones web y móviles...Resumen curso de seguridad para desarrolladores de aplicaciones web y móviles...
Resumen curso de seguridad para desarrolladores de aplicaciones web y móviles...amaulini
 
Desarrollo seguro en NodeJS (OWASP top ten y JWT)
Desarrollo seguro en NodeJS (OWASP top ten y JWT)Desarrollo seguro en NodeJS (OWASP top ten y JWT)
Desarrollo seguro en NodeJS (OWASP top ten y JWT)Raúl Requero García
 
Seguridad En Base De Datos
Seguridad En Base De DatosSeguridad En Base De Datos
Seguridad En Base De DatosWilliam Suárez
 
Seguridad En Base De Datos
Seguridad En Base De DatosSeguridad En Base De Datos
Seguridad En Base De Datosguestb40a1b0
 
Resumen curso de seguridad para desarrolladores de aplicaciones web, webservi...
Resumen curso de seguridad para desarrolladores de aplicaciones web, webservi...Resumen curso de seguridad para desarrolladores de aplicaciones web, webservi...
Resumen curso de seguridad para desarrolladores de aplicaciones web, webservi...mauromaulinir
 
Introduccion a la OWASP Guatemala
Introduccion a la OWASP GuatemalaIntroduccion a la OWASP Guatemala
Introduccion a la OWASP GuatemalaCamilo Fernandez
 

Similar a Vulnerabilidades en sitios web(español) (20)

Temas owasp
Temas owaspTemas owasp
Temas owasp
 
Owasp top 10_2007_spanish
Owasp top 10_2007_spanishOwasp top 10_2007_spanish
Owasp top 10_2007_spanish
 
Aplicaciones Web Seguras (Anti-SQLi)
Aplicaciones Web Seguras (Anti-SQLi)Aplicaciones Web Seguras (Anti-SQLi)
Aplicaciones Web Seguras (Anti-SQLi)
 
Castaneda suarezandresfernando2017
Castaneda suarezandresfernando2017Castaneda suarezandresfernando2017
Castaneda suarezandresfernando2017
 
Owasp proyecto
Owasp proyectoOwasp proyecto
Owasp proyecto
 
Argentesting 2017 - Proyecto OWASP Top 10
Argentesting 2017 - Proyecto OWASP Top 10Argentesting 2017 - Proyecto OWASP Top 10
Argentesting 2017 - Proyecto OWASP Top 10
 
Samurai Web Testing Framework 2.0
Samurai Web Testing Framework 2.0Samurai Web Testing Framework 2.0
Samurai Web Testing Framework 2.0
 
Webinar Gratuito "Reconocimiento Web"
Webinar Gratuito "Reconocimiento Web"Webinar Gratuito "Reconocimiento Web"
Webinar Gratuito "Reconocimiento Web"
 
Hacking Ético Web
Hacking Ético WebHacking Ético Web
Hacking Ético Web
 
Dragonjarcon2015 - ¿Cómo programar aplicaciones seguras? por Paulino Calderon...
Dragonjarcon2015 - ¿Cómo programar aplicaciones seguras? por Paulino Calderon...Dragonjarcon2015 - ¿Cómo programar aplicaciones seguras? por Paulino Calderon...
Dragonjarcon2015 - ¿Cómo programar aplicaciones seguras? por Paulino Calderon...
 
Secure Development, Seguridad al Codificar
Secure Development, Seguridad al CodificarSecure Development, Seguridad al Codificar
Secure Development, Seguridad al Codificar
 
Taller Virtual de Pentesting contra Aplicaciones Web
Taller Virtual de Pentesting contra Aplicaciones WebTaller Virtual de Pentesting contra Aplicaciones Web
Taller Virtual de Pentesting contra Aplicaciones Web
 
Curso de Hacking Aplicaciones Web 2012 (CNHAW)
Curso de Hacking Aplicaciones Web 2012 (CNHAW)Curso de Hacking Aplicaciones Web 2012 (CNHAW)
Curso de Hacking Aplicaciones Web 2012 (CNHAW)
 
Aplicaciones Web Seguras (Anti-SQLi)
Aplicaciones Web Seguras (Anti-SQLi)Aplicaciones Web Seguras (Anti-SQLi)
Aplicaciones Web Seguras (Anti-SQLi)
 
Resumen curso de seguridad para desarrolladores de aplicaciones web y móviles...
Resumen curso de seguridad para desarrolladores de aplicaciones web y móviles...Resumen curso de seguridad para desarrolladores de aplicaciones web y móviles...
Resumen curso de seguridad para desarrolladores de aplicaciones web y móviles...
 
Desarrollo seguro en NodeJS (OWASP top ten y JWT)
Desarrollo seguro en NodeJS (OWASP top ten y JWT)Desarrollo seguro en NodeJS (OWASP top ten y JWT)
Desarrollo seguro en NodeJS (OWASP top ten y JWT)
 
Seguridad En Base De Datos
Seguridad En Base De DatosSeguridad En Base De Datos
Seguridad En Base De Datos
 
Seguridad En Base De Datos
Seguridad En Base De DatosSeguridad En Base De Datos
Seguridad En Base De Datos
 
Resumen curso de seguridad para desarrolladores de aplicaciones web, webservi...
Resumen curso de seguridad para desarrolladores de aplicaciones web, webservi...Resumen curso de seguridad para desarrolladores de aplicaciones web, webservi...
Resumen curso de seguridad para desarrolladores de aplicaciones web, webservi...
 
Introduccion a la OWASP Guatemala
Introduccion a la OWASP GuatemalaIntroduccion a la OWASP Guatemala
Introduccion a la OWASP Guatemala
 

Más de Miguel de la Cruz

Vulnerabilidades en sitios web (english)
Vulnerabilidades en sitios web (english)Vulnerabilidades en sitios web (english)
Vulnerabilidades en sitios web (english)Miguel de la Cruz
 
Managing security settings in windows server with group policy
Managing security settings in windows server with group policyManaging security settings in windows server with group policy
Managing security settings in windows server with group policyMiguel de la Cruz
 
Administración de configuraciones de seguridad en windows server con group po...
Administración de configuraciones de seguridad en windows server con group po...Administración de configuraciones de seguridad en windows server con group po...
Administración de configuraciones de seguridad en windows server con group po...Miguel de la Cruz
 
Protocolo de Archivo clinico
Protocolo de Archivo clinicoProtocolo de Archivo clinico
Protocolo de Archivo clinicoMiguel de la Cruz
 
Origen de la ingeniería en sistemas computacionales
Origen de la ingeniería en sistemas computacionalesOrigen de la ingeniería en sistemas computacionales
Origen de la ingeniería en sistemas computacionalesMiguel de la Cruz
 
Origen de la ingeniería en sistemas computacionales
Origen de la ingeniería en sistemas computacionalesOrigen de la ingeniería en sistemas computacionales
Origen de la ingeniería en sistemas computacionalesMiguel de la Cruz
 
Origen de la ingeniería en sistemas computacionales
Origen de la ingeniería en sistemas computacionalesOrigen de la ingeniería en sistemas computacionales
Origen de la ingeniería en sistemas computacionalesMiguel de la Cruz
 

Más de Miguel de la Cruz (14)

Vulnerabilidades en sitios web (english)
Vulnerabilidades en sitios web (english)Vulnerabilidades en sitios web (english)
Vulnerabilidades en sitios web (english)
 
Managing security settings in windows server with group policy
Managing security settings in windows server with group policyManaging security settings in windows server with group policy
Managing security settings in windows server with group policy
 
Administración de configuraciones de seguridad en windows server con group po...
Administración de configuraciones de seguridad en windows server con group po...Administración de configuraciones de seguridad en windows server con group po...
Administración de configuraciones de seguridad en windows server con group po...
 
Cuestionario
CuestionarioCuestionario
Cuestionario
 
Archivo clinico
Archivo clinicoArchivo clinico
Archivo clinico
 
Protocolo de Archivo clinico
Protocolo de Archivo clinicoProtocolo de Archivo clinico
Protocolo de Archivo clinico
 
Ensayo telecomunicaciones
Ensayo telecomunicacionesEnsayo telecomunicaciones
Ensayo telecomunicaciones
 
La tierra es plana
La tierra es planaLa tierra es plana
La tierra es plana
 
Ing. del futuro
Ing. del futuroIng. del futuro
Ing. del futuro
 
Ing. del futuro
Ing. del futuroIng. del futuro
Ing. del futuro
 
Ing. del futuro
Ing. del futuroIng. del futuro
Ing. del futuro
 
Origen de la ingeniería en sistemas computacionales
Origen de la ingeniería en sistemas computacionalesOrigen de la ingeniería en sistemas computacionales
Origen de la ingeniería en sistemas computacionales
 
Origen de la ingeniería en sistemas computacionales
Origen de la ingeniería en sistemas computacionalesOrigen de la ingeniería en sistemas computacionales
Origen de la ingeniería en sistemas computacionales
 
Origen de la ingeniería en sistemas computacionales
Origen de la ingeniería en sistemas computacionalesOrigen de la ingeniería en sistemas computacionales
Origen de la ingeniería en sistemas computacionales
 

Vulnerabilidades en sitios web(español)

  • 1. 1 Vulnerabilidades en sitios web Vulnerabilidades en sitios web Aradi Pineda Barranca Alba Nidya Soto Domínguez Instituto Tecnológico de Tuxtepec Abril 2014
  • 2. 2 Vulnerabilidades en sitios web AGRADECIMIENTOS A MIS PADRES: Con todo mi cariño y mi amor para las personas que hicieron todo en la vida para que yo pudiera lograr mis sueños, por motivarme y darme la mano cuando sentía que el camino terminaba, a ustedes por siempre mi corazón y mi agradecimiento. Aradi Pineda Barranca Para poder realizar este proyecto de la mejor manera posible fue necesario el apoyo de muchas personas a las cuales quiero agradecer. En primer lugar a Dios haberme dado la vida y por darme la familia que me dio. A mi madre por su apoyo incondicional y por alentarme a hacer las cosas de la mejor manera posible al igual el apoyo brindado para la realización de este software, a Vicente que me ha ayudado a la largo de mis estudios y me ha apoyado en todo lo que me propongo. A mi hermano por su amor, apoyo incondicional y por alentarme a ser una mejor persona en la vida. Gracias también a mis amigos por ayudarme y apoyarme sin condiciones y por formar parte de mi vida en estos 4 años dentro y fuera de clases. Gracias por la amistad que me brindan. Alba Nidya Soto Domínguez
  • 3. 3 Vulnerabilidades en sitios web RESUMEN & ABSTRACT Al resguardar información, una aplicación web puede ser el objetivo de usuarios maliciosos que buscan tener acceso a ella. De la misma forma, al implementarse la aplicación los analistas, diseñadores y desarrolladores pueden dejar, sin saberlo, algún hueco de seguridad. Adicionalmente, el software y hardware empleado para la puesta en marcha de la aplicación pueden tener una vulnerabilidad o hueco de seguridad. Por ello, es conveniente estar al tanto de los posibles riesgos que afectan a las aplicaciones web, así como el impacto que tienen y las acciones que se pueden tomar para corregir tales situaciones. OWASP es un grupo de seguridad y profesionales de aplicaciones web con varios años de experiencia para ayudar a remediar algunos de los problemas que se presentan en el campo del desarrollo de aplicaciones web. Este grupo se enfoca en el entendimiento y mejoramiento de la seguridad para las aplicaciones y servicios web. Entre otras cosas, OWASP tiene disponibles guías gratuitas de desarrollo, recomendaciones de buenas prácticas, información actualizada de vulnerabilidades comunes en aplicaciones web y una herramienta de aprendizaje de seguridad en aplicaciones web conocida como “WebGoat”.
  • 4. 4 Vulnerabilidades en sitios web PALABRAS CLAVE/KEYWORDS  WPScan  Nmap  TamperData  OWASP
  • 5. 5 Vulnerabilidades en sitios web INTRODUCCIÓN En 1980, Tim Berners-Lee, desarrolló ENQUIRE, como una base de datos personal de gente y modelos de software, pero también como una forma de interactuar con el hipertexto. En 1990, Berners-Lee había desarrollado todas las herramientas necesarias para trabajar la Web: HTTP, HTML, el primer servidor web, WorldWideWeb y el primer navegador web. Los sitios web tienen un sin fin de vulnerabilidades que hacen que estos corran un gran riesgo de ser atacados desde varios puntos, con este documento se espera tener las herramientas teóricas para el dominio de los temas que se abordarán en cada uno de los apartados. El objetivo es impulsar a las organizaciones que utilizan sitios web a madurar en la comprensión y gestión de aplicaciones de seguridad.
  • 6. 6 Vulnerabilidades en sitios web MÉTODOS Y MATERIALES VULNERABILIDADES DE SEGURIDAD EN UN SISTEMA Al resguardar información, una aplicación web puede ser objetivo de usuarios maliciosos que buscan tener acceso a ella. De la misma forma, al implementarse la aplicación los analistas, diseñadores y desarrolladores pueden dejar, sin saberlo, algún hueco de seguridad. Adicionalmente, el software y hardware empleado para la puesta en marcha de la aplicación pueden tener alguna vulnerabilidad o hueco de seguridad. Por ello, es conveniente estar al tanto de os posibles riesgos que afectan a las aplicaciones web, así como el impacto que tienen y las acciones que se pueden tomar para corregir tales situaciones. OWASP realiza un recuento de los ataques y vulnerabilidades más críticas en aplicaciones web. Se reportan con ejemplos y detalles que explican esos riesgos para desarrolladores de software, administradores e interesados en seguridad web. El objetivo es impulsar a las organizaciones a madurar en la comprensión y gestión de aplicaciones de seguridad.
  • 7. 7 Vulnerabilidades en sitios web TOP 10 DE OWASPP 1. Inyección Consiste en el envío de código malicioso al sistema por parte de un usuario o bien por parte de otro sistema, muchas veces el código es enviado en texto plano. El código puede intentarse enviar por cualquier entrada: • Consultas al directorio activo. • Consultas a la base de datos. • Entradas en formas web. • Consultas XPath. • Comandos del sistema operativo. • Entradas de funciones. Sucede cuando no se están validando adecuadamente las entradas proporcionadas por el usuario, confiando en que éste ingresa al sistema. CONSECUENCIAS • Pérdida y/o corrupción de datos. • Negación de acceso. ACCIONES • Implementar código seguro: validación de entradas, incluso las provenientes de otros sistemas. • Uso de herramientas para realizar la búsqueda de vulnerabilidades a ataques de inyección. • Es altamente recomendable mantener datos no confiables separados de comandos y consultas.
  • 8. 8 Vulnerabilidades en sitios web • Uso de API’s seguras (no intérpretes). 2. Pérdida de autenticación y gestión de sesiones Son las vulnerabilidades relacionadas con la pérdida de autenticación y gestión de sesiones. Son críticas en la seguridad de las aplicaciones y en especial de las aplicaciones web, ya que permiten a un atacante suplantar la información de un determinado usuario, pudiendo llegar a obtener una cuenta de administración que le permita sabotear los controles de autorización y registro de la aplicación. CONSECUENCIAS • Acceso no autorizado a cualquier tipo de información que se encuentre almacenada en el servidor. • Acceso a servicios que han sido comprometidos. ACCIONES • Considerar una buena autenticación de los usuarios. • Proteger los datos de sesión (id, token, contraseña). • Realizar seguimiento robusto de sesiones. • Evitar vulnerabilidades del tipo XSS, ya que pueden provocar el secuestro de datos de sesión.
  • 9. 9 Vulnerabilidades en sitios web 3. Cross-Site Scripting (XSS) Es la inserción de cadenas de texto no validas en la propia aplicación web, por parte de un usuario malicioso (puede estar dentro del sistema, como usuario o administrados, o fuera de él), el cual espera que sea ejecutado para obtener información o algún beneficio. Se encuentra clasificado en tres tipos diferentes: • Almacenado. Es aquel código que se queda almacenado de forma permanente dentro del servidor de aplicaciones web. Por ejemplo, en la base de datos. • Reflejado. Es el código que no se almacena en la base de datos de la aplicación web que es atacada, si no que se ejecuta en el momento en que se ingresa en alguna de las entradas que no valida la entrada proporcionada. • Basado en DOM. Es aquel código que modifica el DOM de la aplicación web original. CONSECUENCIAS • Secuestro de sesiones de usuario. • Destrucción de sitios web. • Instalación de código malicioso en navegadores. • Re-direccionamiento a sitios maliciosos. ACCIONES • Llevar a cabo pruebas de análisis de código. • Uso de herramientas de escaneo estáticas y dinámicas. • Separar datos no confiables del contenido activo del navegador. • Validación de entradas de datos.
  • 10. 10 Vulnerabilidades en sitios web 4. Referencia directa insegura a objetos Consiste en sustituir el valor de algún parámetro que hace referencia a un objeto por el de otro objeto y se le da acceso aunque no esté autorizado. CONSECUENCIAS • Acceso a información restringida. • Acceso a toda información que es referenciada por parámetros similares. ACCIONES • Realizar análisis del código y pruebas manuales. • Realizar verificaciones a nivel código para referencias directas a recursos restringidos. • Hacer uso de referencias indirectas por usuario o sesión. • Comprobar el acceso de los usuarios hacia los objetos.
  • 11. 11 Vulnerabilidades en sitios web 5. Configuración errónea de seguridad Es un fallo o error en la configuración de seguridad definida e implementada para la aplicación, marcos de trabajo, servidor de aplicación, servidor web, servidor de base de datos y la plataforma. Todas estas configuraciones deben ser definidas, implementadas, y mantenidas. Esto incluye mantener todo el software al dia, incluyendo las librerías de código que utiliza la aplicación. Puede ocurrir en: • Plataformas. • Servidores web. • Servidores de aplicaciones. • Ambientes de trabajo. • Códigos personalizados. Hace uso de: • Cuentas predeterminadas. • Paginas no usadas. • Software no actualizado o no parchado. • Archivos o directorios no protegidos. CONSECUENCIAS • Acceso no autorizado a datos o funciones del sistema. ACCIONES • Usar herramientas automáticas para ubicar: actualizaciones pendientes, configuraciones defectuosas, cuentas predeterminadas activas, servicios activos no necesarios. • Asegurar todos los niveles de la pila de la aplicación.
  • 12. 12 Vulnerabilidades en sitios web 6. Exposición de datos sensibles Consiste en no proteger adecuadamente los datos sensibles, tales como tarjetas de crédito, identificaciones de impuestos, y las credenciales de autenticación. Los atacantes pueden robar o modificar los datos para llevar a cabo fraude de tarjetas de crédito, robo de identidad u otros delitos, puede suceder con datos almacenados o mientras se realiza se transmisión. CONSECUENCIAS  Robo de datos confidenciales, como los registros de salud, credenciales, datos personales, tarjetas de crédito, etc. ACCIONES  Cifrar los datos sensibles almacenados y durante su transmisión.  No almacenar datos confidenciales innecesariamente.  Cifrar las contraseñas que se almacenan con un algoritmo diseñado específicamente para la protección de contraseña, como bcrypt, PBKDF2 o scrypt.  Desactivar la función de autocompletar en los formularios de captura de datos sensibles y desactivar el almacenamiento en caché de las páginas que contienen datos sensibles.
  • 13. 13 Vulnerabilidades en sitios web 7. Falta de control de acceso a nivel de funciones Es la falta de controles de acceso para funciones privadas de las aplicaciones web. Si no se verifican peticiones, los atacantes serán capaces de forzar peticiones con el fin de acceder a las funciones de la aplicación sin la autorización apropiada. CONSECUENCIAS  Acceso a funciones privadas de la aplicación por usuarios comunes.  Acceso y modificación de los datos del sistema. ACCIONES  Implementar módulos de autenticación para las funciones privadas del sistema.
  • 14. 14 Vulnerabilidades en sitios web 8. CSRF (Cross-Site Request Forgery) Es un ataque que obliga al usuario ejecutar acciones no deseadas en una aplicación web en la que este actualmente autenticado. Con un poco de ayuda de ingeniería social (como el envío de un enlace por correo electrónico o mediante el chat), un atacante puede obligar a los usuarios de la aplicación web ejecutar acciones a selección del atacante. Si el usuario objetivo es la cuenta de administrador, esto puede poner en peligro toda la aplicación web. CONSECUENCIAS  Se puede acceder, modificar y utilizar cualquier dato o función que se este autorizado a usar. ACCIONES  Revisión de código fuente.  Realizar pruebas de penetración.  Descartar como protección las cookies de sesión, las direcciones IP origen y otro tipo de información.  Analizar enlaces y formularios que invoquen funciones que permitan cambiar estados.
  • 15. 15 Vulnerabilidades en sitios web 9. Uso de componentes con vulnerabilidades conocidas Consiste en el uso de componentes, tales como bibliotecas, frameworks y otros módulos de software vulnerables, que casi siempre se ejecutan con privilegios de administrador. Si se explota un componente vulnerable, puede facilitar la perdida de datos importantes o toma de control del servidor. CONSECUENCIAS  Inyecciones de código.  XSS.  Romper controles de acceso. ACCIONES  Mantener actualizado cada componente implementado.  En caso de usar componentes que sean desarrollos propios, realizar pruebas de seguridad sobre ellos.
  • 16. 16 Vulnerabilidades en sitios web 10. Redirecciones y reenvíos no validos Es una redirección o reenvío por parte de las aplicaciones web a otras páginas o sitios web, sin una correcta validación. Los atacantes pueden redirigir a las víctimas a sitios de malware o phishing. CONSECUENCIAS  Robo de credenciales de autenticación.  Instalación de malware.  Phishing. ACCIONES  Realizar un mapeo del sitio (spidering) para detectar redirecciones maliciosas.  Evitar el uso de redirects y forwards.  Si se utilizan, no añadir los parámetros de usuario en el destino.  Si no se pueden evitar los parámetros de destino, asegurarse que el valor proporcionado es válido y autorizado por el usuario.
  • 17. 17 Vulnerabilidades en sitios web METODOLOGÍA PARA PRUEBAS DE PENETRACIÓN 1. Pruebas de penetración (pentest) Un pentest es una prueba realizada a aplicaciones web, en la cual se intentan reproducir acciones de usuarios maliciosos (internos y externos a la organización). Estas acciones cubren tanto la interacción con la aplicación como la parte de configuraciones y software empleado. Ayuda a encontrar los huecos de seguridad que pueden permitir acceso a información sensible, modificar la funcionalidad original del sitio, entre otras acciones. Las pruebas de penetración deben considerar aspectos como:  Pruebas de SQL Injection.  Pruebas de Cross-Site Scripting (XSS).  Pruebas de JavaScript.  Alertas de red y escaneo de puertos. VENTAJAS  Generación de informes oportunos.  Mejoras en la estrategia.  Mejoras en la aplicación. DESVENTAJAS  Riesgo de no disponibilidad.  Riesgo de pérdida o alteración de la información.
  • 18. 18 Vulnerabilidades en sitios web Para realizar una prueba de penetración es necesario seguir una metodología para que todo lleve un orden y se logren los resultados esperados. 2. Metodología de las pruebas de penetración Fases de las pruebas de penetración:  Planeación.  Reconocimiento.  Escaneo.  Explotación.  Documentación. 2.1 Planeación Permite definir totalmente el proyecto, marcando los límites y estableciendo los elementos a evaluar y lo más importante, obteniendo la autorización que respaldara al pentester durante toda su actividad, tanto técnica como legalmente. De manera general se pueden listar los siguientes elementos en esta etapa de preparación:  Entrevista con el solicitante.  Información de consecuencias de las pruebas.  Integración de equipo de trabajo.  Permiso.  Acuerdo de confidencialidad.  Contrato. 2.2. Reconocimiento Es el proceso de investigación de la organización destino para reunir información respecto de las fuentes disponibles, tales como los servicios de registro de dominios
  • 19. 19 Vulnerabilidades en sitios web y sitios web. Algunas personas incluyen técnicas como la ingeniería social y el dumpsterdiving en la fase de reconstrucción de información. El especialista en pentest debe intentar conseguir la mayor cantidad de información como sea posible acerca del objetivo. El reconocimiento se puede hacer utilizando dos técnicas: pasiva y activa. Una técnica pasiva es la mejor opción para empezar, ya que normalmente podría existir un IDS u otras formas de protección. Se trata de descubrir la información pública disponible en Internet, folletos, entre otros. Una técnica activa es más intrusiva, la cual podría consistir en utilizar una herramienta automatizada o en aplicar ingeniería social. 2.3. Escaneo El objetivo en esta fase es encontrar las entradas vulnerables del objeto de evaluación, tales como puntos de acceso inalámbrico, sistemas disponibles, puertos en escucha y las vulnerabilidades. El escaneo es el proceso de encontrar aperturas en la organización de destino, tales como puertas de acceso a Internet, puntos de acceso inalámbricos, sistemas disponibles, los puertos en escucha y las listas de vulnerabilidades. Algunas herramientas muy comunes para esta etapa son:  Escaneo de puertos  Nmap  Escaneo de vulnerabilidades  Nessus 2.4. Explotación Al final de la fase de escaneo se identificaron las posibles vulnerabilidades potenciales y cierta información como el SO, el cual es de mucha utilidad ya que
  • 20. 20 Vulnerabilidades en sitios web permitirá crear un vector de ataque que ayude a elegir las herramientas, exploits o las técnicas adecuadas para poder explotar los sistemas. En esta fase se prueban las vulnerabilidades con una clasificación de alto riesgo otorga por el escáner de vulnerabilidades ya que posiblemente sean las que permitan explotar el objetivo de evaluación. Esta fase tiene como objetivos:  Reducir o eliminar falsos positivos.  Conocer el impacto real de una vulnerabilidad. En esta fase se prueban las vulnerabilidades encontradas en la fase anterior se revisan y se evalúan detalladamente ya que en ocasiones las herramientas pueden listar falsos positivos; si se logra explotar alguno de estos fallos se garantizaran el acceso al sistema o divulgación de información sensible. 2.5. Documentación La documentación en esta fase incluye los siguientes puntos:  Resumen ejecutivo.  Introducción.  Metodología.  Hallazgos.  Alto riesgo.  Riesgo medio.  Bajo riesgo.  Recomendaciones. El objetivo de esta fase es archivar los resultados obtenidos desde el inicio de la fase de reconocimiento hasta la fase de explotación para generar un informe final de los hallazgos encontrados durante el proceso completo de las pruebas.
  • 21. 21 Vulnerabilidades en sitios web RESULTADOS Al momento de la elaboración de este artículo se esperaba que el lector localizara las vulnerabilidades que pueden existir en los sitios web, así mismo si el lector era quien elaboraba estos sitios se mantuviera alerta y prevenid de los diferentes riesgos que existen. Como ha de suponerse, existen varios libros, artículos y reportes del tema, que informan sobre los riesgos que existen cuando es elaborado un sitio web. Se lograron estudiar diferentes vulnerabilidades en aplicaciones web y mecanismos que permiten la disminución de riesgos de estas. Los conocimientos adquiridos permitieron al lector realizar diferentes pruebas para detectar vulnerabilidades y así este, pueda enfocarse en las fallas que encuentre.
  • 22. 22 Vulnerabilidades en sitios web DISCUSIÓN Se obtuvieron los resultados esperados, el lector se sintió atraído y motivado en la realización de pruebas para determinar si su sitio web tenía o tiene algún fallo. Se espera con este trabajo que la persona que lo consulte despeje sus dudas y se atreva a investigar las a fondo sobre las vulnerabilidades que existen y a las cuales se encuentra expuesto.
  • 23. 23 Vulnerabilidades en sitios web REFERENCIAS (Open Web Application Security Project OWASP Top 10, s.f.) (Pruebas de penetración, s.f.) (Foundation, 2008) (Análisis de vulnerabilidades y auditorías de seguridad bajo demanda, s.f.) (México, 2013)