❤️ Adquiere tu membresía:  Contenidos protegidos, manuales y videos >> Ver Más

Descubren miles de repositorios de GitHub con falsos exploits PoC con malware

GitHub es conocido por todos al ser considerada una de las grandes plataformas de alojamiento de código. Esta es usada por programadores y también por investigadores de seguridad para subir sus proyectos. 

Pero aunque se le da mucha confianza a todo lo que se almacena en GitHub, una investigación reciente nos recuerda que hay que tener cuidado a la hora de descargar diferentes archivos. 

Investigadores del Leiden Institute of Advanced Computer Science encontraron miles de repositorios en GitHub que ofrecen exploits de prueba de concepto (PoC) falsos para varias vulnerabilidades, algunos de los cuales incluyen malware.

GitHub es una de las plataformas de alojamiento de código más grandes, y los investigadores la usan para publicar vulnerabilidades de PoC. Los PoCs ayudan a la comunidad de seguridad a verificar soluciones para vulnerabilidades o determinar el impacto y el alcance de una falla.

Según el documento técnico  de los investigadores del Leiden Institute of Advanced Computer Science, la posibilidad de infectarse con malware en lugar de obtener un PoC podría llegar al 10.3%, excluyendo las falsificaciones comprobadas y el software de broma.

Recogida y análisis de datos

Los investigadores analizaron un poco más de 47,300 repositorios que anuncian un exploit para una vulnerabilidad revelada entre 2017 y 2021 utilizando los siguientes tres mecanismos:

  • Análisis de direcciones IP: comparación de la IP del editor de PoC con listas de bloqueo públicas y VT y AbuseIPDB.
  • Análisis binario: ejecutar comprobaciones de VirusTotal en los ejecutables proporcionados y sus hashes.
  • Análisis hexadecimal y Base64: decodificar archivos ofuscados antes de realizar comprobaciones binarias y de IP.
Método de análisis de datos

De las 150,734 direcciones IP únicas extraídas, 2864 entradas de la lista de bloqueo coincidieron, 1522 se detectaron como maliciosas en los análisis antivirus en VirusTotal y 1069 de ellas estaban presentes en la base de datos AbuseIPDB.

Direcciones IP encontradas en varias listas de bloqueo 

El análisis binario examinó un conjunto de 6160 ejecutables y reveló un total de 2164 muestras maliciosas alojadas en 1398 repositorios.

En total, 4,893 repositorios de los 47,313 probados se consideraron maliciosos, y la mayoría de ellos se referían a vulnerabilidades de 2020.

Repositorios maliciosos por año

El informe contiene un pequeño conjunto de repositorios con PoC falsos que contienen malware. Sin embargo, los investigadores compartieron con algunos medios al menos otros 60 ejemplos que aún están activos y en proceso de ser eliminados por GitHub.

“Descubrimos que no todos los PoC son confiables. Algunas pruebas de concepto son falsas (es decir, en realidad no ofrecen la funcionalidad PoC) o incluso maliciosas. Por ejemplo, intentan filtrar datos del sistema en el que se ejecutan o intentan instalar malware en este sistema”

Malware en PoC

Al observar más de cerca algunos de esos casos, los investigadores encontraron una gran cantidad de diferentes malware y scripts dañinos, que van desde troyanos de acceso remoto hasta Cobalt Strike.

Un caso interesante es el de un PoC para CVE-2019-0708, comúnmente conocido como “BlueKeep”. Este contiene un script de Python ofuscado en base64 que obtiene un VBScript de Pastebin.

El script es Houdini RAT, un antiguo troyano basado en JavaScript que admite la ejecución remota de comandos a través de Windows CMD.

Script ofuscado y desofuscado de Houdini

En otro caso, los investigadores detectaron un PoC falso que era un ladrón de información que recopila información del sistema, dirección IP y agente de usuario.

Esto fue creado anteriormente como un experimento de seguridad por otro investigador, por lo que encontrarlo con la herramienta automatizada fue una confirmación para los investigadores de que su enfoque funcionó.

Ejemplo de exfiltración de PoC falso 

Uno de los investigadores, El Yadmani Soufian, que también es investigador de seguridad en Darktrace, tuvo la amabilidad de proporcionar ejemplos adicionales no incluidos en el informe técnico, que se detallan a continuación:

El PoC de PowerShell que contiene un binario codificado en base64 marcado como malicioso en Virus Total.

PoC falso de PowerShell

El PoC de Python que contiene una sola línea que decodifica un payload codificado en base64 marcado como malicioso en Virus Total.

Payload malicioso de una sola línea que se hace pasar por un PoC

Asimismo, el falso exploit de BlueKeep que contiene un ejecutable que la mayoría de los motores antivirus marcan como malicioso e identifican como Cobalt Strike.

Cobalt Strike lanzado a través de PoC falso

Un script que se esconde dentro de un PoC falso con componentes maliciosos inactivos que podrían causar daños si su autor así lo desea.

PoC inofensivo pero falso

Cómo mantenerte a salvo

Confiar ciegamente en un repositorio en GitHub de una fuente no verificada sería una mala idea ya que el contenido no está moderado, por lo que corresponde a los usuarios revisarlo antes de usarlo.

Recomendamos a los probadores de software que analicen cuidadosamente los PoC que descargan y ejecuten tantas verificaciones como sea posible antes de ejecutarlos.

Soufian cree que todos los evaluadores deben seguir estos tres pasos:

  • Leer atentamente el código que estás a punto de ejecutar en tu red o la de tu cliente.
  • Si el código está demasiado ofuscado y necesitas demasiado tiempo para analizarlo manualmente, guárdalo en un entorno (por ejemplo, una máquina virtual aislada) y verifica tu red en busca de tráfico sospechoso.
  • Utilizar herramientas de inteligencia de código abierto como VirusTotal para analizar archivos binarios.

Los investigadores informaron todos los repositorios maliciosos que descubrieron a GitHub. Sin embargo, pasará algún tiempo hasta que todos sean revisados ​​y eliminados, por lo que muchos aún permanecen disponibles para el público.

Como explicó Soufian, su estudio tiene como objetivo no solo servir como una acción de limpieza única en GitHub, sino actuar como un activador para desarrollar una solución automatizada que podría usarse para marcar instrucciones maliciosas en el código cargado.

Esta es la primera versión de la investigación del equipo y están trabajando para mejorar su detector. Actualmente, la herramienta de detección oculta el código con una ofuscación más fuerte.

Deja un comentario

Adquiere tu Membresía Anual Wiser

Adquiere tu Membresía Anual Wiser y adquiere grandes beneficios

Más información