Continuando con las 10 cosas que puedes revisar en tu servidor web Apache, hoy os dejo otras 5 cosas más. No son éstas las únicas que se pueden mirar - por supuesto - pero son algunas que son fáciles de comprobar. Si quieres fortificar más Apache, puedes leerte las recomendaciones de fortificación que tienes también en la web del proyecto.
6) Consolas de administración y paneles de administración JBOSS
Hace poco salía a la luz los miles de servidores Apache con server-status abierto sin ninguna contraseña en el servidor - entre los que salían sitios como CISCO -, pero casi más peligroso es tener paneles de administración JBOSS en /web-console o /jnx-console sin password o con credenciales por defecto.
Figura 6: Panel de administración JBOSS |
En cualquiera de los dos casos se está pidiendo a gritos un ataque que pueda terminar con la seguridad del sistema.
7) Servicios Proxy configurados en el servidor Apache
7) Servicios Proxy configurados en el servidor Apache
El servidor Apache puede funcionar como un servidor Proxy para dar conexión a una red interna que quiere salir a Internet o como un servidor Reverse Proxy que dé acceso a servidores de la Intranet desde Internet. En ambos casos, una mala configuración puede llevar a serios riesgos de seguridad. Para descubrir el servicio de Proxy en un servidor Apache primeramente se busca el módulo mod_proxy o mod_proxy_ajp - módulo de Apache para jserv que necesita usar mod_proxy - que puede aparecer directamente en el banner del servicio HTTP o en los mensajes de error. Se pueden encontrar haciendo hacking con buscadores en Shodan.
Figura 7: Servidores Apache con mod_proxy descubiertos por Shodan |
Otra forma de descubrirse ese servicio es mediante el uso del método CONNECT por HTTP, que permite utilizar un servidor Proxy para realizar una conexión a otro servidor web, pero también se pude utilizar un servicio Proxy en modo transparente en donde se pide la URL completa en el método HTTP, por ejemplo GET http://servidor2.com/index.htm y utilizando en el encabezado HOST el nombre del servidor Proxy. FOCA realiza estas pruebas buscando servidores Proxy en las direcciones IP del dominio en los puertos 80, 443, 8080, 8081 y 3128 (Squid Proxy).
Figura 8: Búsqueda de servidores Proxy en FOCA |
Si alguien puede conectarse a tu servidor Apache y usarlo como servidor Proxy podría realizar actos maliciosos desde tu dirección IP y lograr que te bloquearan el equipo. Además, podría navegar por la Intranet y hasta por localhost a través del servidor Proxy o conectarse a cualquier servidor de la Intranet incluso si está bien configurado, pero no está actualizado.
8) El soporte PHP de tu servidor
Si tienes instalado PHP en tu servidor Apache, lo primero y más inmediato que debes comprobar es que no sea vulnerable al bug que permite ejecutar comandos en Apache si PHP está en modo CGI. Para solucionarlo lo mejor es que tengas actualizado PHP a la última versión, antes de plantearte cualquier otra alternativa.
Después, puedes comprobar que no tienes un info.php en tu servidor, que no tienes Blind SQL Injection de libro en parámetros numéricos y que no tienes ningún bug de type conversion en las aplicaciones PHP.
9) Ataques D.O.S.
Si tienes una botnet atacando a tu servidor Apache la mejor forma de defenderse es tener el portal alojado en un proveedor en la nube que evite este tipo de ataques, pero si desde una única máquina se puede tirar abajo tu Apache, entonces sí hay problemas que pueden ser subsanados. Si revisas la tabla de CVEs de Apache HTTP Server, podrás ver que el número de bugs que permiten hacer una Denegación de Servicio es alto.
No de todos hay herramientas públicas, pero algunas sí se hicieron muy populares, como la del ataque de Slowris que publicó RSnake y que tiene una aplicación para lanzarlo contra tu servidor y comprobar si es vulnerable o no.
Otra herramienta que puedes probar para ver la resistencia contra ataques D.O.S. de tu servidor Apache es OWASP HTTP Post Tool. Si una sola máquina es capaz de tumbar tu servidor entonces debes revisar las actualizaciones de tu Apache, las propiedades de tu conexión y las configuraciones de seguridad que puedes aplicar para minimizarlo.
10) ¿Qué más hay allí? Los listeners
La última de las cosas que os voy a recomendar mirar es algo que hace FOCA automáticamente por cada nombre de dominio, y es revisar los listeners HTTP y HTTPs de tu dominio. Para ello conéctate a http://www.tudominio.com y https://www.tudominio.com. Luego consulta la dirección IP de tudominio.com y conéctate a http://tuIP y https://tuIP, a ver si sale todo lo que tu esperabas y no aparezca una página por defecto o un portal de administración de un router con una password por defecto.
Si quieres analizar un poco más lo que hay allí, puedes usar el modificador IP de Bing para ver con qué otros sitios webs compartes dirección a ver si pudieras ser atacada por alguno de ellos, aunque eso exigiría que estuvieran en la misma máquina.
Saludos Malignos!
************************************************************************************************
- 10 cosas que puedes revisar en tu Apache (1 de 2)
- 10 cosas que puedes revisar en tu Apache (2 de 2)
************************************************************************************************
Si tienes instalado PHP en tu servidor Apache, lo primero y más inmediato que debes comprobar es que no sea vulnerable al bug que permite ejecutar comandos en Apache si PHP está en modo CGI. Para solucionarlo lo mejor es que tengas actualizado PHP a la última versión, antes de plantearte cualquier otra alternativa.
Figura 9: Ejecución de código en Apache a través del bug CVE-2012-1823 |
Después, puedes comprobar que no tienes un info.php en tu servidor, que no tienes Blind SQL Injection de libro en parámetros numéricos y que no tienes ningún bug de type conversion en las aplicaciones PHP.
9) Ataques D.O.S.
Si tienes una botnet atacando a tu servidor Apache la mejor forma de defenderse es tener el portal alojado en un proveedor en la nube que evite este tipo de ataques, pero si desde una única máquina se puede tirar abajo tu Apache, entonces sí hay problemas que pueden ser subsanados. Si revisas la tabla de CVEs de Apache HTTP Server, podrás ver que el número de bugs que permiten hacer una Denegación de Servicio es alto.
Figura 10: CVEs de Apache HTTP Server |
No de todos hay herramientas públicas, pero algunas sí se hicieron muy populares, como la del ataque de Slowris que publicó RSnake y que tiene una aplicación para lanzarlo contra tu servidor y comprobar si es vulnerable o no.
Figura 11: OWASP HTTP Post Attack Tool |
Otra herramienta que puedes probar para ver la resistencia contra ataques D.O.S. de tu servidor Apache es OWASP HTTP Post Tool. Si una sola máquina es capaz de tumbar tu servidor entonces debes revisar las actualizaciones de tu Apache, las propiedades de tu conexión y las configuraciones de seguridad que puedes aplicar para minimizarlo.
10) ¿Qué más hay allí? Los listeners
La última de las cosas que os voy a recomendar mirar es algo que hace FOCA automáticamente por cada nombre de dominio, y es revisar los listeners HTTP y HTTPs de tu dominio. Para ello conéctate a http://www.tudominio.com y https://www.tudominio.com. Luego consulta la dirección IP de tudominio.com y conéctate a http://tuIP y https://tuIP, a ver si sale todo lo que tu esperabas y no aparezca una página por defecto o un portal de administración de un router con una password por defecto.
Figura 12: Modificador IP en Bing |
Si quieres analizar un poco más lo que hay allí, puedes usar el modificador IP de Bing para ver con qué otros sitios webs compartes dirección a ver si pudieras ser atacada por alguno de ellos, aunque eso exigiría que estuvieran en la misma máquina.
Saludos Malignos!
************************************************************************************************
- 10 cosas que puedes revisar en tu Apache (1 de 2)
- 10 cosas que puedes revisar en tu Apache (2 de 2)
************************************************************************************************
Muy buenas las 2 entradas.
ResponderEliminarHay algunas cosillas que tengo que revisar!!
Un saludo.
Excelente chema, a esto lo transformo en "check list" y lo incorporo al documento de hardening!
ResponderEliminarSaludos!
En el punto 8; ¿Es posible saber con fingerprinting si está funcionando en modo cgi? ¿como se puede saber?
ResponderEliminar