Auditar la seguridad de la configuración del balanceo de carga de servidores Web.
|
Para poder hacer frente al tráfico Web muchas veces los administradores de servidores Web tienen que implementar balanceadores de carga. Los balanceadores de carga ocultan muchos servidores web verdaderos detrás de una IP virtual. Reciben peticiones HTTP y las dirigen a los servidores web para compartir el tráfico entre ellos.
Con la herramienta Halberd permite descubrir los servidores que se encuentras detrás del balanceador de carga y auditar la seguridad de la configuración.
El modo de funcionamiento de Halberd se divide en tres etapas:
- Inicialmente, envía peticiones múltiples al servidor Web a auditar y registra sus respuestas. Esto se denomina fase de muestreo.
- Después, el programa procesa las contestaciones y busca muestras del equilibrio de carga. Esto se llama la fase de análisis.
- Finalmente, la Halberd escribe un informe de sus resultados.
Halberd utiliza las siguientes técnicas:
Comparación de la fecha. Las respuestas HTTP revelan el reloj interno del servidor Web que las produce. Si aparecen varios resultados con tiempos de reloj diferente, Halberd identifica número de servidores verdaderos. Este método funciona si los servidores Web no están sincronizados con un NTP.
Diferencia de nombres de campo de las cabeceras del MIME. Las diferencias en los campos que aparecen en respuestas del servidor pueden permitir que la Halberd identifique los servidores.
Generación de altas cantidades de tráfico. Bajo ciertas configuraciones, los balanceadores de la carga comienzan a distribuir tráfico, solamente después de que se alcance cierto umbral. Esta herramienta intenta generar un volumen de tráfico importante para accionar esta condición y alcanzar tantos servidores verdaderos como sea posible.
Usando diversas URL. Un balanceador de carga se puede configurar para redirigir el tráfico a distintos servidores según la URL a la que se acceda. Esta herramienta utiliza una araña para navegar por las diferentes URL para diferenciar los distintos servidores que contestan.
Detección de cache del servidor. Detecta si los servidores web utilizan cache para acelerar las peticiones con programas tipo Squid.
Obtención de IP públicas. A veces las cookies o los campos especiales del MIME en respuestas del servidor pueden revelar direcciones IP públicas de los servidores web. En estos casos se puede puentear el balanceador de carga y acceder directamente al servidor web.
Más información y descarga de Halberd:
http://halberd.superadditive.com/
Manual de Halberd:
http://halberd.superadditive.com/doc/manual/
“Stress test” a servicios de red:
http://vtroger.blogspot.com/2008/04/stress-test-servicios-de-red.html