1 feb 2021

Honeypot de aplicaciones Web: Snare (parte I)


Buenas a todos/as, en el artículo de hoy me gustaría hablaros sobre Hardening de servidores. Muchos estaréis conmigo en que no son pocas las tareas que podremos llevar a cabo para fortificar este tipo de activos, pero por presentar un resumen a alto nivel, nos podríamos centrar en:

  • Instalación mínima: menos aplicaciones, menos vulnerabilidades.
  • Integración con las políticas de obligado cumplimiento: política de usuarios, arquitectura de red, actualización de parches, etc. 
  • Posibilidad de marcha atrás: registro de acciones, copia de respaldo.
  • Documentación de cumplimientos e incumplimientos.
Otro paso más teniendo en cuenta los siguientes principios:
  • Necesidad de perdidas de servicio en reinicios.
  • Entorno en preproducción.
  • Uso de canales cifrados siempre que sea posible.
  • Distribución de servicios en diferentes sistemas.
  • Uso de herramientas de seguridad.

En este último principio, podemos avanzar un paso más e implementar adicionalmente un honeypot en nuestro propio servidor. Para quien no sepa qué es y para qué se utiliza, un Honeypot se trata de una tecnología señuelo que podemos implementar en nuestra red y que se utiliza para simular cualquier dispositivo que se nos pueda ocurrir, ya sea un router, o un servidor FTP por ejemplo. El objetivo del mismo es poder utilizarlo para ser objetivo de ataques informáticos para poder detectar, monitorizar y obtener información tanto del atacante, como de las técnicas que use.  En este caso hablamos de un Honeypot de aplicaciones web sucesor del conocido Glastopf, creado por Lukas Rist y llamado SNARE (Super Next generation Advanced Reactive HonEypot). 

Glastopf ha dejado de mantenerse hace algún tiempo, pero por suerte tenemos a su sucesor: Snare, el cual tiene muchas de las características del primero con la capacidad de convertir páginas web existentes en superficies de ataque con Tanner. Tanner podemos definirlo como el cerebro del sensor del honeypot y se centra en analizar datos remotos para evaluar solicitudes HTTP y construir la respuesta a través del propio Snare. Tanner nos proporcionará multiples dorks para Snare multiplicando sus capacidades de atracción.

Entre las características de Snare que pueden resultar atractivas para los atacantes están las siguientes:

  • Algunos tipos de ataques que emula son RFI a través de una sandbox PHP, LFI o inyección HTML con peticiones tipo POST.
  • Los atacantes suelen usar motores de búsqueda y solicitudes especialmente diseñadas para encontrar a sus víctimas. Para atraerlos, Glastopf proporciona estos dorks y los extrae de las solicitudes extendiendo la superficie de ataque rápidamente.

Para instalarlo, necesitaremos disponer de python 3.6 como mínimo para ejecutar snare.

Pasos básicos de instalación:

  1. Obtener snare: git clone https://github.com/mushorg/snare.git && cd snare
  2. Instalar requisitos: pip3 install -r requirements.txt
  3. Instalar: sudo python3 setup.py install
  4. Clonar una página: sudo clone --target https://www.ohhoneyohsugarsugar.com/
  5. Ejecutar Snare: sudo snare --port 8080 --page-dir ohhoneyohsugarsugar.com
  6. Test: http://localhost:8080/index.html

Hay que tener cuidado porque clone por defecto nos copia toda la página, por lo que podemos indicar el máximo de profundidad con el parámetro --max-depth, como muchos ya sabréis.

Otros parámetros interesantes que podemos utilizar con snare son los siguientes:

  • list-pages: nos mostrará la lista de páginas que hemos clonado con clone.
  • host-ip: dirección IP a la que enlazar la página clonada.
  • index-page: nombre del archivo de la página principal, por defecto es index.html
  • server-header: por defecto Snare actuará como servidor nginx.
  • tanner: IP del servicio de Tanner, por defecto tiene el valor slurp.musmush.org

En el próximo post veremos cómo instalar y utilizar las características de Tanner junto a Snare, y la información que podemos obtener con nuestro Honeypot, ¡entre otras cosas!. 

¡Saludos!

No hay comentarios:

Publicar un comentario