Ataques del lado del cliente con malware personalizado en las pruebas de penetración

7

Regularmente realizo pruebas con lápiz en aplicaciones web, sistemas operativos, etc. Ocasionalmente, tengo la suerte de hacer un ejercicio de 'red teaming' y atacar en todos los puntos posibles de una red (personas, etc. también ) que es muy divertido y por lo general va bastante bien.

Sin embargo, un cliente mencionó recientemente que también estaría interesado en probar máquinas del lado del cliente (usuario final), como computadoras de escritorio / portátiles, para ver qué tipo de ataques se podrían realizar contra ellos, como una medios para probar la seguridad de los puntos finales (firewall / HIPS / AV / app whitellisting), y también para poner a prueba su programa de respuesta a incidentes.

Están considerando el uso de malware personalizado para hacer esto y están dispuestos a dejar que intentemos propagar nuestro propio código en su entorno.

Debido a que la mayoría de los ataques exitosos en estos días involucran ataques del lado del cliente (phishing de lanza, descargas automáticas, etc.) tiene sentido probar los puntos finales reales (que generalmente son un gran problema). Sin embargo, me preocupa que si creamos una pieza de malware que se propaga por sí misma, eventualmente se suelte de la red, o que, en una de las infinitas interacciones posibles entre las aplicaciones, deje a algunos servidores fuera de línea. Obviamente, el cliente firmará una renuncia y asumirá riesgos como este.

¿Son los escenarios de ataque del lado del cliente solicitudes comunes? ¿Qué hacen otras personas en este tipo de escenarios? ¿Hay alguna metodología a seguir con respecto al uso de malware personalizado en los pentests del lado del cliente?

    
pregunta NULLZ 04.06.2013 - 05:26
fuente

2 respuestas

6

No necesita un malware que se propague por sí mismo para probar las máquinas de los usuarios finales. Por ejemplo, si decide apuntar a los navegadores de las máquinas de los usuarios finales, a las aplicaciones (MS Office, PDF, Java, Flash) o a la seguridad física de las máquinas, lo que necesita es un exploit personalizado y una carga útil. La carga útil no necesita ser auto-propagada. Solo necesita un tipo de carga útil que le permita controlar solo la máquina que ha seleccionado.

Tomemos un ejemplo. Supongamos que quiero apuntar a 10 máquinas de usuario y decidí apuntar a sus navegadores. Lo primero que haría es alojar los exploits Metasploit en mi máquina. Las vulnerabilidades deben personalizarse para evitar el AV y otros tipos de defensas. Puedo usar meterpreter como mi carga útil. Luego enviaría a estos 10 usuarios un enlace a mi servidor que alberga los archivos de exploits. Si de estos 10 usuarios conseguí que 5 usuarios se conectaran a mi servidor Metasploit y yo aprovechara sus navegadores y obtuviera acceso a su máquina, el medidor de parámetros me dará acceso solo a esas cinco máquinas. No se dirigirá a todas las otras máquinas en la subred automáticamente. Por supuesto, si quiero ir más lejos de allí, puedo hacerlo manualmente.

Al final, creo que lo que necesita es un malware personalizado, pero ese malware personalizado no tiene que propagarse por sí mismo. Cree un malware que solo le dará acceso a las máquinas específicas a las que se dirige.

    
respondido por el void_in 04.06.2013 - 06:40
fuente
0

Hemos hecho varios ataques del lado del cliente. Si bien las pruebas con malware son limitadas, a menudo tenemos solicitudes para probar la seguridad de entornos restringidos y evaluar la complejidad general de cómo salir de estos. No tengo conocimiento de ninguna metodología abierta y común. La creatividad es clave cuando se realizan estos tipos de evaluaciones.

    
respondido por el Lucas Kauffman 04.06.2013 - 09:51
fuente

Lea otras preguntas en las etiquetas