[MUSIC] Hola, te doy la más cordial bienvenida al módulo final de nuestro curso titulado, Ahora ataquemos los servidores y las aplicaciones web. La presencia web de una organización se considera fundamental en estos tiempos. you que adicional a un posicionamiento en el mundo digital, es posible crear canales de interacción con potenciales clientes. Y con esto expandir la presencia de la organización a lugares donde, de otra forma, no podría haber llegado. Para lograr este objetivo, se requiere que las organizaciones dispongan de una arquitectura de tecnologías de información y comunicación. Que les permita el despliegue de su presencia y el proporcionar servicios a través de Internet. En esta infraestructura, el servidor web es uno de los principales componentes. you que es el primer punto de contacto de los clientes con la arquitectura desplegada. Por lo tanto, una vulnerabilidad, por más pequeña que esta sea en la configuración y puesta en marcha del servidor web. Puede generar una gran brecha de seguridad en la organización. En esta lección, veremos cómo realizar una prueba de penetración a los servidores web de una organización. Como es costumbre, revisaremos algunos de los ataques más comunes. Y diferentes herramientas que nos permitirán realizar dichos ataques. Un servidor web es una aplicación de hardware y software que aloja sitios web y los hace accesibles a través de internet. Generalmente, se implementa siguiendo una arquitectura de modelo cliente-servidor. Un atacante suele buscar las vulnerabilidades de los componentes de software. Y los errores de configuración para comprometer los servidores web. A través de esos ataques se pueden causar algunos de los siguientes daños a la organización. Comprometer cuentas de usuario, realizar cambios en el contenido del sitio web, realizar ataques secundarios desde el servidor web. Acceder como administrador a otras aplicaciones o al servidor mismo. Manipular los datos de la organización para comprometer a los usuarios que se conecten al servidor. O robar datos sensibles de la organización. Todo esto, conlleva a un daño en la reputación de la organización. [MUSIC] Existen muchos riesgos de seguridad inherentes asociados a los servidores web. Veamos algunos descuidos que podrían comprometer estos servidores. Establecer permisos inadecuados de archivos y directorios. Realizar la instalación del servidor con la configuración por defecto. Dejar habilitados servicios innecesarios. Problemas con configuración de cuentas con contraseñas por defecto. Configuraciones erróneas en el servidor web, el sistema operativo y/o las redes. Fallos en el software del servidor, el sistema operativo y/o en las aplicaciones web. Problemas con los certificados, pueden ser configuraciones de cifrado erróneas, uso de certificados autofirmados. O uso de certificados por defecto, dejar habilitadas o accesibles funciones administrativas en los servidores web. [MUSIC] El ataque a un servidor web típicamente involucra la ejecución de una serie de actividades planeadas. Para poder irrumpir la seguridad del mismo. Retomemos de nuevo la metodología PTES. Haremos énfasis en la aplicación de las fases recopilación de la información, el análisis de vulnerabilidades. Y la explotación de las mismas en el ataque a un servidor web. Recordemos que en esta fase se recopila la mayor cantidad de información disponible sobre los servidores objetivo. Con la finalidad de descubrir las vulnerabilidades y la información que se pueda utilizar para explotar el objetivo. El pentester puede utilizar herramientas que le permitan recopilar información de los nombres de dominio. Direcciones IP del servidor y direccionamiento de los sistemas autónomos. Algunas de las herramientas que nos permiten realizar la recopilación de esta información son. Whois, herramientas para recopilar el dosier del dominio, y las herramientas para encontrar subdominios. Asimismo, el pentester puede revisar el archivo robots.txt. Archivo en el cual se listan los archivos y/o los directorios para la indexación de las páginas para su búsqueda. El atacante solo debe digitar en la barra de direcciones el URL seguido de robots.txt, para acceder a dicho archivo. Otra información importante que se puede recopilar es la captura de banners. A través de esa técnica, un pentester puede reunir datos valiosos a nivel de sistema. Como detalles de cuentas, sistemas operativos, versiones de software. Nombres de servidores y/o detalles del esquema de la base de datos, entre otros. Algunas de las herramientas que se pueden utilizar para este fin son, Netcraft, Netcat, Telnet, Httprecon, ID Serve y Nmap. Ahora revisaremos cómo realizar un análisis de vulnerabilidades en el contexto de un ataque a un servidor web. En esta fase, se pretende descubrir las vulnerabilidades o errores de configuración de los servidores web objetivo. El pentester puede utilizar escáneres de vulnerabilidad. Existe un gran número de herramientas de este tipo, tanto comerciales como de código abierto. Entre ellas cabe mencionar Acunetix, Arachni, Burp Suite, Nessus y Nikto. En la página web de OWASP se provee un completo listado de este tipo de herramientas. Con la información recopilada se procede a realizar una búsqueda de las vulnerabilidades explotables del servidor web. El sistema operativo o las aplicaciones instaladas en el equipo. En algunos de los múltiples repositorios públicos de vulnerabilidades. Algunas de las bases de datos que se pueden consultar son. Exploit database, Rapid7, Security focus o Zero-day. [MUSIC] Un pentester puede utilizar múltiples técnicas para comprometer un servidor web. En esta sección presentaremos algunos de los ataques más utilizados. El ataque de denegación de servicios y el ataque de denegación de servicios distribuidos. Tiene como objetivo hacer que el servidor web no esté disponible para prestar servicio a los usuarios. El ataque consiste en un envío masivo de solicitudes falsas, para consumir los recursos del servidor web. Como el ancho de banda, la memoria del servidor, el uso de la CPU, el espacio en disco duro y/o el espacio de la base de datos. Los ataques de denegación de servicios se pueden ejecutar de una manera simple. Como un ataque de inundación ping o través del uso de algunas herramientas diseñadas para estresar los sistemas como. Low orbit ion canon, High orbit ion canon, Slowloris, R-U-Dead-Yet, o a través de un exploit lanzado desde metasploid. El ataque de hombre en la mitad, le permite al pentester obtener información a través de la intercepción. Y en algunos casos, alteración de los mensajes enviados entre el usuario legítimo y el servidor web. Este ataque se puede realizar de muchas formas, entre ellas, punto de acceso falso. El pentester atrae al usuario a conectarse al servidor web, pretendiendo ser un proxy. La suplantación ARP. Un pentester puede hacerse pasar por otro dispositivo e interceptar la comunicación dirigida al host objetivo. Y la suplantación del DNS. El pentester introduce una información falsa a la caché de DNS en un host para que este acceda a otro host utilizando su nombre de dominio. Esto hace que la víctima envíe sus mensajes a un host malicioso con la creencia que está enviando la información a una fuente de confianza. El ataque de acceso a directorios del servidor web se trata de la explotación de una vulnerabilidad HTTP. A través de la cual un pentester podría acceder a directorios restringidos. Y a ejecutar comandos del sistema operativo a través de la manipulación de la URL. Para tal fin, el pentester utiliza las secuencias de punto-barra y sus variaciones o rutas de archivo absolutas. Para acceder a los archivos y directorios almacenados en el sistema de archivos. Incluyendo el código fuente de la aplicación o la configuración y los archivos críticos del sistema. Por ejemplo, una solicitud de URL que hace uso del directorio de scripts de Internet Information Server. Para recorrer los directorios y ejecutar un comando, puede ser la que vemos en el recuadro. Si la petición es aceptada, devuelve una lista de todos los archivos en el directorio raíz C. Ejecutando el archivo de comando cmd.exe y ejecutando el comando dir C en la consola. La expresión %5c que se encuentra en la solicitud de la URL. Es un código de escape del servidor web que se utiliza para representar caracteres normales. En este caso representa el carácter backslash. El ataque de desconfiguración del servidor web busca las vulnerabilidades de configuración en el servidor web. Tales como mensajes de error descriptivos, servicios innecesarios habilitados. Como la gestión de contenidos y la función de administración remota. Cuentas y contraseñas por defecto o muy conocidas. Mantener archivos innecesarios, que vienen por defecto en la configuración. Esto incluye archivos de ejemplo, archivos de configuración, scripts y páginas web, entre otros. Configuración incorrecta de los certificados, como el uso de certificados por defecto. Y la implementación incorrecta de la autenticación con sistemas externos. Estas vulnerabilidades pueden ser explotadas para lanzar varios ataques a los servidores web. Como el cruce de directorios, la intrusión en el servidor y el robo de datos. [MUSIC] En este ataque de contraseñas, el pentester intenta explotar las posibles debilidades de las contraseñas asignadas en el servidor web. Comúnmente, los objetivos de los ataques son, los servidores de SMTP y FTP, los túneles SSH y los formularios de autenticación web. El pentester puede utilizar algunos de los múltiples métodos como ingeniería social, suplantación, phishing, keyloggers, entre otros. y/o técnicas como ataques de diccionario, ataques de fuerza bruta, ataques de tabla arcoiris. Para descifrar las contraseñas, y así ganar acceso no autorizado al servidor web y desde allí realizar el objetivo de su incursión. Incluso, si el servidor web está configurado de forma segura, una aplicación web mal codificada desplegada en el servidor web. Puede proporcionar una vía para que un atacante comprometa la seguridad del servidor. Dada la importancia de este tema, lo abordaremos en nuestra próxima lección. Ahora que has aprendido sobre los ataques más frecuentes en los servidores web. Te invito a que explores los recursos de nuestro cuarto módulo. Te familiarices con el contenido y avances en las actividades que hemos propuesto para ti. [MUSIC] [MUSIC]