Los Honeypots son dispositivos de seguridad cuyo valor reside en ser investigados y comprometidos. Los honeypots tradicionales son servidores (o dispositivos que exponen los servicios del servidor) que esperan pasivamente a ser atacados. Los clientes Honeypots son dispositivos de seguridad activos en busca de servidores maliciosos que atacan a los clientes. El honeypot cliente se hace pasar por un cliente e interactúa con el servidor para examinar si se ha producido un ataque. A menudo, el enfoque de los honeypots de cliente está en los navegadores web, pero cualquier cliente que interactúe con los servidores puede ser parte de un honeypot de cliente (por ejemplo , ftp , ssh, correo electrónico, etc.).
Hay varios términos que se utilizan para describir los honeypots de los clientes. Además de cliente honeypot, que es la clasificación genérica, honeyclient es el otro término que se usa y acepta generalmente. Sin embargo, hay una sutileza aquí, ya que "honeyclient" es en realidad un homógrafo que también podría referirse a la primera implementación conocida de honeypot de cliente de código abierto (ver más abajo), aunque esto debería quedar claro en el contexto.
Arquitectura
Un honeypot de cliente se compone de tres componentes. El primer componente, una cola, es responsable de crear una lista de servidores para que los visite el cliente. Esta lista se puede crear, por ejemplo, mediante rastreo. El segundo componente es el propio cliente, que puede realizar solicitudes a los servidores identificados por la cola. Una vez que ha tenido lugar la interacción con el servidor, el tercer componente, un motor de análisis, es responsable de determinar si se ha producido un ataque en el honeypot del cliente.
Además de estos componentes, los honeypots del cliente suelen estar equipados con algún tipo de estrategia de contención para evitar que los ataques exitosos se extiendan más allá del honeypot del cliente. Por lo general, esto se logra mediante el uso de firewalls y entornos sandbox de máquinas virtuales.
De manera análoga a los honeypots de servidor tradicionales, los honeypots de cliente se clasifican principalmente por su nivel de interacción: alto o bajo; que denota el nivel de interacción funcional que el servidor puede utilizar en el honeypot del cliente. Además de esto, también hay nuevos enfoques híbridos que denotan el uso de técnicas de detección de interacción alta y baja.
Alta interacción
Los honeypots de clientes de alta interacción son sistemas completamente funcionales comparables a los sistemas reales con clientes reales. Como tal, no existen limitaciones funcionales (además de la estrategia de contención) en los honeypots de clientes de alta interacción. Los ataques a los honeypots de clientes de alta interacción se detectan mediante la inspección del estado del sistema después de que se haya interactuado con un servidor. La detección de cambios en el honeypot del cliente puede indicar la ocurrencia de un ataque contra el que se ha aprovechado una vulnerabilidad del cliente. Un ejemplo de tal cambio es la presencia de un archivo nuevo o modificado.
Los honeypots de cliente de alta interacción son muy efectivos para detectar ataques desconocidos en los clientes. Sin embargo, la compensación por esta precisión es un impacto en el rendimiento de la cantidad de estado del sistema que se debe monitorear para realizar una evaluación de ataque. Además, este mecanismo de detección es propenso a varias formas de evasión por parte del exploit. Por ejemplo, un ataque podría retrasar la activación inmediata del exploit (bombas de tiempo) o podría activarse en un conjunto particular de condiciones o acciones ( bombas lógicas ). Dado que no se produjo un cambio de estado inmediato y detectable, es probable que el honeypot del cliente clasifique incorrectamente el servidor como seguro a pesar de que realizó con éxito su ataque al cliente. Finalmente, si los honeypots del cliente se ejecutan en máquinas virtuales, entonces un exploit puede intentar detectar la presencia del entorno virtual y dejar de activarse o comportarse de manera diferente.
Captura-HPC
Capture [1] es un honeypot de cliente de alta interacción desarrollado por investigadores de la Universidad Victoria de Wellington, Nueva Zelanda. Capture se diferencia de los honeypots de clientes existentes en varias formas. Primero, está diseñado para ser rápido. Los cambios de estado se detectan utilizando un modelo basado en eventos que permite reaccionar a los cambios de estado a medida que ocurren. En segundo lugar, Capture está diseñado para ser escalable. Un servidor de captura central puede controlar numerosos clientes en una red. En tercer lugar, se supone que Capture es un marco que permite utilizar diferentes clientes. La versión inicial de Capture es compatible con Internet Explorer, pero la versión actual es compatible con todos los navegadores principales (Internet Explorer, Firefox, Opera, Safari), así como con otras aplicaciones de cliente compatibles con HTTP, como aplicaciones de oficina y reproductores multimedia.
HoneyClient
HoneyClient [2] es un honeypot cliente de alta interacción basado en navegador web (IE / FireFox) diseñado por Kathy Wang en 2004 y posteriormente desarrollado en MITRE . Fue el primer honeypot cliente de código abierto y es una mezcla de Perl, C ++ y Ruby. HoneyClient se basa en el estado y detecta ataques a clientes de Windows mediante la supervisión de archivos, procesos de eventos y entradas de registro. Ha integrado el verificador de integridad en tiempo real Capture-HPC para realizar esta detección. HoneyClient también contiene un rastreador, por lo que se puede sembrar con una lista de URL iniciales desde las que comenzar y luego continuar recorriendo sitios web en busca de malware del lado del cliente.
HoneyMonkey (muerto desde 2010)
HoneyMonkey [3] es un honeypot cliente de alta interacción basado en navegador web (IE) implementado por Microsoft en 2005. No está disponible para descargar. HoneyMonkey se basa en el estado y detecta ataques a los clientes mediante la supervisión de archivos, registros y procesos. Una característica única de HoneyMonkey es su enfoque en capas para interactuar con servidores con el fin de identificar exploits de día cero. HoneyMonkey inicialmente rastrea la web con una configuración vulnerable. Una vez que se ha identificado un ataque, el servidor se vuelve a examinar con una configuración completamente parcheada. Si el ataque aún se detecta, se puede concluir que el ataque utiliza un exploit para el que aún no se ha publicado ningún parche y, por lo tanto, es bastante peligroso.
SHELIA (muerta desde 2009)
Shelia [4] es un honeypot de cliente de alta interacción desarrollado por Joan Robert Rocaspana en Vrije Universiteit Amsterdam. Se integra con un lector de correo electrónico y procesa cada correo electrónico que recibe (URL y archivos adjuntos). Dependiendo del tipo de URL o archivo adjunto recibido, abre una aplicación cliente diferente (por ejemplo, navegador, aplicación de oficina, etc.) Monitorea si las instrucciones ejecutables se ejecutan en el área de datos de la memoria (lo que indicaría que se ha activado un exploit de desbordamiento de búfer) . Con este enfoque, SHELIA no solo puede detectar exploits, sino que también puede evitar que se activen.
UW Spycrawler
El Spycrawler [5] desarrollado en la Universidad de Washington es otro honeypot cliente de alta interacción basado en navegador (Mozilla) desarrollado por Moshchuk et al. en 2005. Este honeypot cliente no está disponible para descargar. El Spycrawler se basa en el estado y detecta ataques a los clientes al monitorear archivos, procesos, registro y fallas del navegador. El mecanismo de detección de Spycrawlers se basa en eventos. Además, aumenta el paso del tiempo de la máquina virtual en la que está operando el Spycrawler para superar (o más bien reducir el impacto de) las bombas de tiempo.
Buscador de exploits web
WEF [6] es una implementación de una detección automática drive-by-download en un entorno virtualizado, desarrollada por Thomas Müller, Benjamin Mack y Mehmet Arziman, tres estudiantes de la Hochschule der Medien (HdM), Stuttgart durante el semestre de verano en 2006. WEF se puede utilizar como una HoneyNet activa con una arquitectura de virtualización completa debajo para reversiones de máquinas virtualizadas comprometidas.
Baja interacción
Los honeypots de cliente de baja interacción se diferencian de los honeypots de cliente de alta interacción en que no utilizan un sistema real completo, sino que utilizan clientes ligeros o simulados para interactuar con el servidor. (en el mundo de los navegadores, son similares a los rastreadores web). Las respuestas de los servidores se examinan directamente para evaluar si se ha producido un ataque. Esto podría hacerse, por ejemplo, examinando la respuesta para detectar la presencia de cadenas maliciosas.
Los honeypots de cliente de baja interacción son más fáciles de implementar y operar que los honeypots de cliente de alta interacción y también funcionan mejor. Sin embargo, es probable que tengan una tasa de detección más baja, ya que el honeypot del cliente debe conocer los ataques para que los detecte; Es probable que los nuevos ataques pasen desapercibidos. También sufren el problema de la evasión por exploits, que puede agravarse debido a su simplicidad, facilitando así que un exploit detecte la presencia del honeypot del cliente.
HoneyC
HoneyC [7] es un honeypot cliente de baja interacción desarrollado en la Universidad Victoria de Wellington por Christian Seifert en 2006. HoneyC es un marco de trabajo de código abierto independiente de la plataforma escrito en Ruby. Actualmente se concentra en la conducción de un simulador de navegador web para interactuar con los servidores. Los servidores maliciosos se detectan examinando estáticamente la respuesta del servidor web en busca de cadenas maliciosas mediante el uso de firmas Snort.
Monkey-Spider (muerto desde 2008)
Monkey-Spider [8] es un honeypot cliente de baja interacción desarrollado inicialmente en la Universidad de Mannheim por Ali Ikinci. Monkey-Spider es un honeypot cliente basado en rastreadores que inicialmente utiliza soluciones antivirus para detectar malware. Se afirma que es rápido y ampliable con otros mecanismos de detección. El trabajo comenzó como una tesis de diploma y continúa y se publica como software libre bajo la GPL .
PhoneyC (muerto desde 2015)
PhoneyC [9] es un cliente de baja interacción desarrollado por José Nazario. PhoneyC imita los navegadores web legítimos y puede comprender el contenido dinámico al desenmascarar el contenido malicioso para su detección. Además, PhoneyC emula vulnerabilidades específicas para identificar el vector de ataque. PhoneyC es un marco modular que permite el estudio de páginas HTTP maliciosas y comprende las vulnerabilidades modernas y las técnicas de los atacantes.
SpyBye
SpyBye [10] es un honeypot de cliente de baja interacción desarrollado por Niels Provos . SpyBye permite a un web master determinar si un sitio web es malicioso mediante un conjunto de heurísticas y escaneo de contenido contra el motor ClamAV.
Matón
Thug [11] es un honeypot cliente de baja interacción desarrollado por Angelo Dell'Aera. Thug emula el comportamiento de un navegador web y se centra en la detección de páginas web maliciosas. La herramienta utiliza el motor Javascript de Google V8 e implementa su propio Modelo de Objetos de Documento (DOM). Las características más importantes y únicas de Thug son: el módulo de manejo de controles ActiveX (módulo de vulnerabilidad) y capacidades de análisis estático + dinámico (usando Abstract Syntax Tree y el analizador de shellcode Libemu). Thug está escrito en Python bajo la Licencia Pública General GNU.
YALIH
YALIH (Yet Another Low Interaction Honeyclient) [12] es un honeypot de cliente de baja interacción desarrollado por Masood Mansoori del capítulo Honeynet de la Universidad Victoria de Wellington, Nueva Zelanda y diseñado para detectar sitios web maliciosos mediante técnicas de coincidencia de firmas y patrones. YALIH tiene la capacidad de recopilar URL sospechosas de bases de datos de sitios web maliciosos, API de Bing, bandeja de entrada y carpeta de SPAM a través del protocolo POP3 e IMAP. Puede realizar extracción de Javascript, desofuscación y desminificación de scripts incrustados dentro de un sitio web y puede emular referencias, agentes de navegador y manejar redirecciones, cookies y sesiones. Su agente de visitantes es capaz de buscar un sitio web desde múltiples ubicaciones para evitar los ataques de encubrimiento de IP y ubicación geográfica. YALIH también puede generar firmas automatizadas para detectar variaciones de un ataque. YALIH está disponible como proyecto de código abierto.
miniC
miniC [13] es un honeypot de cliente de baja interacción basado en wget retriever y el motor Yara. Está diseñado para ser ligero, rápido y adecuado para la recuperación de una gran cantidad de sitios web. miniC permite establecer y simular referrer, user-agent, accept_language y algunas otras variables. miniC fue diseñado en el capítulo Honeynet de Nueva Zelanda de la Universidad Victoria de Wellington.
Honeypots de cliente híbrido
Los honeypots de cliente híbridos combinan honeypots de cliente de baja y alta interacción para aprovechar las ventajas de ambos enfoques.
HoneySpider (muerta desde 2013)
La red HoneySpider [14] es un honeypot de cliente híbrido desarrollado como una empresa conjunta entre NASK / CERT Polska , GOVCERT.NL [1] y SURFnet . [2] El objetivo del proyecto es desarrollar un sistema de honeypot de cliente completo, basado en soluciones de honeypot de cliente existentes y un rastreador especialmente para el procesamiento masivo de URL.
Referencias
- ^ NCSC (14 de mayo de 2013). "Centro Nacional de Seguridad Cibernética - NCSC" . www.ncsc.nl .
- ^ "SURF es de ICT-coöperatie van onderwijs en onderzoek" . SURF.nl .
Literatura
- Jan Göbel, Andreas Dewald, Client-Honeypots: Exploración de sitios web maliciosos , Oldenbourg Verlag 2010, ISBN 978-3-486-70526-3 , este libro en Amazon
Documentos
- M. Egele, P. Wurzinger, C. Kruegel y E. Kirda, Defending Browsers Against Drive-by Downloads: Mitigating Heap-spraying Code Injection Attacks, Secure Systems Lab, 2009, p. Disponible en iseclab.org , consultado el 15 de mayo de 2009.
- Feinstein, Ben. Mono de cafeína: recopilación, detección y análisis automatizados de JavaScript. BlackHat USA. Las Vegas, 2007.
- Ikinci, A, Holz, T., Freiling, FC: Monkey-Spider: Detectando sitios web maliciosos con Honeyclients de baja interacción . Sicherheit 2008: 407-421 ,
- Moshchuk, A., Bragin, T., Gribble, SD y Levy, HM Un estudio basado en rastreadores de software espía en la web . En el 13º Simposio anual de seguridad de redes y sistemas distribuidos (NDSS). San Diego, 2006. The Internet Society .
- Provos, N., Holz, T. Honeypots virtuales: del seguimiento de botnets a la detección de intrusiones . Addison-Wesley. Boston, 2007.
- Provos, N., Mavrommatis, P., Abu Rajab, M., Monrose, F. Todos sus iFRAMEs nos señalan . Informe técnico de Google. Google, Inc., 2008.
- Provos, N., McNamee, D., Mavrommatis, P., Wang, K., Modadugu, N. El fantasma en el navegador: análisis de malware basado en la web . Actas de los HotBots de 2007. Cambridge, abril de 2007. USENIX.
- Seifert, C., Endicott-Popovsky, B., Frincke, D. , Komisarczuk, P., Muschevici, R. y Welch, I., Justifying the Need for Forensically Ready Protocols: A Case Study of Identifying Malicious Web Servers Using Client Honeypots. en la 4a Conferencia Internacional Anual IFIP WG 11.9 sobre análisis forense digital, Kyoto, 2008.
- Seifert, C. Conoce a tu enemigo: detrás de escena de servidores web maliciosos. El proyecto Honeynet. 2007.
- Seifert, C., Komisarczuk, P. y Welch, I. Aplicación del paradigma del algoritmo divide y vencerás para mejorar la velocidad de detección de honeypots de clientes de alta interacción . 23º Simposio Anual ACM sobre Computación Aplicada. Ceará, Brasil, 2008.
- Seifert, C., Steenson, R., Holz, T., Yuan, B., Davis, MA Conoce a tu enemigo: servidores web maliciosos . El proyecto Honeynet. 2007. (disponible en honeynet.org )
- Seifert, C., Welch, I. y Komisarczuk, P. HoneyC: The Low-Interaction Client Honeypot . Actas del 2007 NZCSRCS. Universidad de Waikato , Hamilton, Nueva Zelanda. Abril de 2007.
- C. Seifert, V. Delwadia, P. Komisarczuk, D. Stirling e I. Welch, Estudio de medición sobre servidores web maliciosos en el dominio .nz, en la 14a Conferencia Australasia sobre Seguridad y Privacidad de la Información (ACISP), Brisbane, 2009.
- C. Seifert, P. Komisarczuk e I. Welch, Curva de costo positivo verdadero: un método de evaluación basado en el costo para los Honeypots de clientes de alta interacción, en SECURWARE, Atenas, 2009.
- C. Seifert, P. Komisarczuk e I. Welch, Identificación de páginas web maliciosas con heurística estática, en la Conferencia de aplicaciones y redes de telecomunicaciones de Austalasia, Adelaida, 2008.
- Stuurman, Thijs, Verduin, Alex. Honeyclients - Método de detección de baja interacción. Reporte técnico. Universidad de Amsterdam. Febrero de 2008.
- Wang, Y.-M., Beck, D., Jiang, X., Roussev, R., Verbowski, C., Chen, S. y King, S. Patrulla web automatizada con Strider HoneyMonkeys: búsqueda de sitios web que explotan el navegador Vulnerabilidades . En el 13º Simposio anual de seguridad de redes y sistemas distribuidos (NDSS). San Diego, 2006. The Internet Society.
- Zhuge, Jianwei, Holz, Thorsten, Guo, Jinpeng, Han, Xinhui, Zou, Wei. Estudio de sitios web maliciosos y la economía subterránea en la web china . Actas del Taller de 2008 sobre la economía de la seguridad de la información. Hannover, junio de 2008.
Presentaciones
- Presentación de Websense sobre su infraestructura Honeyclient y la próxima generación de Honeyclients que están trabajando actualmente; Abril de 2008 en RSA-2008
- El proyecto Honeynet
- Virtuelle Leimrouten (en alemán)
- Video de la presentación del cliente Honeypot de Michael Davis en HITB 2006
- Video de la presentación de Kathy Wang de HoneyClient en Recon 2005
- Video de la presentación de Wolfgarten en la conferencia CCC
Sitios
- ^ https://web.archive.org/web/20100131222145/https://projects.honeynet.org/capture-hpc
- ^ https://web.archive.org/web/20071204172932/http://handlers.dshield.org/rdanford/pub/2nd_generation_honeyclients.ppt
- ^ https://web.archive.org/web/20100131222101/https://projects.honeynet.org/honeyc/
- ^ https://archive.is/20070410162806/http://www.honeyclient.org/trac
- ^ https://web.archive.org/web/20180430012758/http://www.honeyspider.net/
- ^ http://monkeyspider.sourceforge.net/
- ^ https://code.google.com/p/phoneyc/
- ^ https://github.com/buffer/thug
- ^ http://www.cs.vu.nl/~herbertb/misc/shelia/
- ^ http://www.spybye.org/
- ^ https://web.archive.org/web/20070322205829/http://www.xnos.org/security/overview.html
- ^ https://web.archive.org/web/20100220013531/http://code.mwcollect.org/
- ^ http://nz-honeynet.org
- ^ https://github.com/masood-m/yalih
- ^ https://github.com/Masood-M/miniC