06 - Auditoria y Seguridad
06 - Auditoria y Seguridad
06 - Auditoria y Seguridad
Objetivos:
1. Conocer debilidades en las configuraciones.
2. Explotar debilidades para mejorar
3. Reconocer amenazas
Introducción
Una aplicación web utiliza el protocolo HTTP para la comunicación cliente-servidor y
requiere un navegador web como interfaz del cliente. Es probablemente el tipo de
aplicación más común en las empresas modernas, desde las encuestas de clima
organizacional de Recursos Humanos hasta los servicios técnicos de TI para el sitio web
de una compañía. Incluso las aplicaciones más robustas, móviles y muchos dispositivos de
Internet de las cosas (IoT) hacen uso de componentes web a través de servicios web y las
interfaces web que están integradas en ellos.
No hace mucho tiempo, se pensaba que la seguridad era necesaria solo en el perímetro de
la organización y solo a nivel de red, por lo que las empresas gastan una cantidad
considerable de dinero en seguridad física y de red. Con eso, sin embargo, surgió una
sensación de seguridad algo falsa debido a su dependencia de las tecnologías web tanto
dentro como fuera de la organización. En los últimos años y meses, hemos visto noticias
de filtraciones de datos espectaculares y violaciones de millones de registros, incluida
información como números de tarjetas de crédito, historiales médicos, domicilios
particulares y Números de Seguridad Social de personas de todo el mundo. Muchos de
estos ataques se iniciaron explotando una vulnerabilidad web o un error de diseño.
Las organizaciones modernas reconocen que dependen de las aplicaciones web y las
tecnologías web, y que son tan propensas a ataques a su red y sistemas operativos, si no
más. Esto ha resultado en un aumento en el número de empresas que brindan servicios de
protección o defensa contra ataques web, así como la aparición o el crecimiento de
tecnologías como el firewall de aplicaciones web (WAF), la autoprotección de aplicaciones
en tiempo de ejecución (RASP), la vulnerabilidad web escáneres y escáneres de código
fuente. Además, ha habido un aumento en el número de organizaciones que consideran
valioso probar la seguridad de sus aplicaciones antes de entregarlas a los usuarios finales,
brindando una oportunidad para que hackers talentosos y profesionales de la seguridad
utilicen sus habilidades para encontrar fallas y brindar asesoramiento sobre cómo
solucionarlos, lo que ayuda a las empresas, hospitales, escuelas y gobiernos a tener
aplicaciones más seguras y prácticas de desarrollo de software cada vez más mejoradas.
Las pruebas de penetración y el hacking ético son formas proactivas de probar
aplicaciones web al realizar ataques que son similares a un ataque real que podría ocurrir
en un día determinado. Se ejecutan de forma controlada con el objetivo de encontrar la
mayor cantidad posible de defectos de seguridad y proporcionar comentarios sobre cómo
mitigar los riesgos que plantean dichos defectos.
Es muy beneficioso para las empresas realizar pruebas de seguridad en las aplicaciones
antes de liberarlas a los usuarios finales. De hecho, hay corporaciones conscientes de la
seguridad que han integrado casi por completo las pruebas de penetración, las
evaluaciones de vulnerabilidad y las revisiones de los códigos fuente en su ciclo de
desarrollo de software. Por lo tanto, cuando lanzan una nueva aplicación, ya ha pasado
por varias etapas de prueba y remediación.
Reglas (Rules of Engagement “RoE”)
Documento que trata sobre la forma en que se llevará a cabo la prueba de penetración,
contiene directivas claras sobre las cuales se realizará el análisis, entre ellas están:
1. El tipo y alcance de las pruebas (cajas negra, blanca o gris)
2. Datos de contacto del cliente (importantes contactos administrativos, técnicos y de
emergencia)
3. Notificaciones del equipo de TI del cliente
4. Manejo de datos sensibles
5. Reunión de estado e informes
En Kali Linux, las herramientas en el análisis de aplicaciones web se dividen en cuatro
categorías, como se detalla a continuación:
1. CMS y la identificación del marco
2. Proxy de aplicaciones web
3. Web Crawlers y Directorio Bruteforce
4. Escáneres de vulnerabilidad web
Ejemplo 1 - Detección de puertos
Para detectar los puertos abiertos en el servidor usaremos el comando nmap
nmap -A DOMINIO
Usando Tor para pruebas de penetración
A veces, las pruebas de penetración web pueden incluir pasar por alto ciertas
protecciones, filtrado o bloqueo desde el lado del servidor, o evitar ser detectado o
identificado con el fin de probar de una manera similar a un hacker malicioso del mundo
real. El Onion Router (Tor) proporciona una opción interesante para emular los pasos que
un pirata informático usa para proteger su identidad y ubicación. Aunque un hacker ético
que intenta mejorar la seguridad de una aplicación web no debería preocuparse por
ocultar su ubicación, el uso de Tor le ofrece la opción adicional de probar los sistemas de
seguridad de borde tales como firewalls de red, firewalls de aplicaciones web y
dispositivos IPS.
Ejercicio 1 - Mezcle nmap a través de la red tor
OWASP - Aplicaciones web rotas
El Proyecto de aplicaciones web rotas (BWA) de OWASP es una colección de aplicaciones
web vulnerables, que se distribuyen como una máquina virtual con el propósito de
proporcionar a los estudiantes, entusiastas de seguridad y profesionales de pruebas de
penetración una plataforma para aprender y desarrollar habilidades de prueba de
aplicaciones web. probar herramientas automatizadas y probar los firewalls de
aplicaciones web (WAF) y otras medidas defensivas: