Tutoriales y Manuales
Entradas Mensuales
-
▼
2023
(Total:
710
)
-
▼
diciembre
(Total:
72
)
-
Confirman robo del código fuente de Grand Theft Au...
-
Apple quiere entrenar su inteligencia artificial c...
-
Top 10 de vulnerabilidades críticas en aplicacione...
-
Otra cadena de vulnerabilidades en Outlook permite...
-
España analiza los niveles de radiación del iPhone...
-
Peugeot usaba la Game Boy para realizar los diagnó...
-
CVE-2023-35628: vulnerabilidad silenciosa por e-ma...
-
OpenAI define las estrategias para evitar que la i...
-
Zorin OS 17, la distribución de Linux que se ve co...
-
¿Comprar un HDD o un SSD? SSD siempre, menos para NAS
-
Hyperloop One cierra: la utopía de Elon Musk desap...
-
¿Qué es el UPnP del router? y Tipos de NAT en Cons...
-
Detenidos 5 ciberdelincuentes por estafar mediante...
-
Condenan al autista por filtrar GTA VI: permanecer...
-
Cae una red en España que ha estafado al menos 190...
-
Synology - Conocimientos básicos del cifrado en DS...
-
Diferentes tipos de velocidades WiFi: canales y ba...
-
Retirado el mayor conjunto de datos de imágenes de...
-
Galaxy S24: filtradas todas sus características y ...
-
Inaugurado el superordenador MareNostrum 5, uno de...
-
Tesla culpó a sus usuarios de fallos de fabricación
-
Stable Diffusion y otras IA generativas se entrena...
-
El FBI desmantela el ransomware BlackCat y obtiene...
-
Comparativa de rendimiento velocidad red: 10 Gbe v...
-
La Universidad de Buenos Aires (UBA) víctima de un...
-
OpenAI se ha convertido en la compañía más importa...
-
Google pagará 700 millones de dólares para aparcar...
-
¿Qué es ZFS? ¿Qué ventajas tiene sobre otros siste...
-
MongoDB confirma que datos de clientes quedaron ex...
-
La Comisión Europea abre expediente a Twitter por ...
-
Sistema pionero español para que los menores no ac...
-
OpenAI suspende la cuenta de ByteDance (TikTok) po...
-
Tutorial Apache modsecurity (WAF)
-
Twitch permite más contenido sexual
-
Google Imagen 2, la inteligencia artificial para c...
-
Dropbox comparte tus archivos con OpenAI sin que t...
-
El fabricante de chips NXP fue hackeado en 2017 y ...
-
El BSC presenta Sargantana, la nueva generación de...
-
Apple impedirá que un ladrón pueda usar un iPhone ...
-
El Gobierno Español propone restringir el uso de l...
-
Utilizan Google Forms en ataques de Phishing
-
Si tu PC Windows se ‘congela’, revisa el antivirus...
-
E3: la feria más importante de los videojuegos mue...
-
Insomniac Games hackeado por el ransomware Rhysida...
-
El despilfarro de la IA: se necesitan dos centrale...
-
Optimus Gen 2, el nuevo robot humanoide de Elon Mu...
-
Vulnerabilidad crítica en plugin de WordPress Back...
-
Europa quiere normas para combatir la adicción a l...
-
Microsoft presenta Phi-2, una inteligencia artific...
-
Paquetes con malware en proyectos del repositorio ...
-
DNS0: El DNS público europeo que hace Internet más...
-
¿Qué diferencia hay entre un disco duro WD Red Plu...
-
Linux tendrá su propia pantalla de la muerte azul ...
-
El ordenador con más malware del mundo: 'Most Infe...
-
Configurar el firewall de Windows
-
Apple publica actualizaciones de seguridad para pa...
-
El estándar Wi-Fi 7, a punto de ser aprobado: lleg...
-
Epic Games gana a Google el juicio antimonopolio c...
-
En la mitad de los casos las instrusiones se produ...
-
La UE aprueba la primera Ley de Inteligencia Artif...
-
Cómo la IA puede ayudar a los equipos de seguridad
-
LogoFAIL: ataque al firmware, que afecta a Windows...
-
Lo más buscado en Google en 2023
-
La NASA se dedicó a drogar arañas para comprobar l...
-
Kelvinsecurity: detenido el líder de uno de los gr...
-
El navegador Brave lanza Leo, su IA tipo ChatGPT q...
-
FirewallD viniendo de iptables
-
Google retrasa el lanzamiento de Gemini, su respue...
-
Vulnerabilidades críticas en UEFI: LogoFAIL expone...
-
Bloquear LOLbins con el firewall de Windows
-
Fases fundamentales de un análisis forense digital
-
Tiny11, la versión ligera de Windows 11
-
- ► septiembre (Total: 65 )
-
▼
diciembre
(Total:
72
)
-
►
2022
(Total:
967
)
- ► septiembre (Total: 72 )
-
►
2021
(Total:
730
)
- ► septiembre (Total: 56 )
-
►
2020
(Total:
212
)
- ► septiembre (Total: 21 )
-
►
2019
(Total:
102
)
- ► septiembre (Total: 14 )
-
►
2017
(Total:
231
)
- ► septiembre (Total: 16 )
-
►
2016
(Total:
266
)
- ► septiembre (Total: 38 )
-
►
2015
(Total:
445
)
- ► septiembre (Total: 47 )
-
►
2014
(Total:
185
)
- ► septiembre (Total: 18 )
-
►
2013
(Total:
100
)
- ► septiembre (Total: 3 )
-
►
2011
(Total:
7
)
- ► septiembre (Total: 1 )
Blogroll
Etiquetas
Entradas populares
-
La Policía Nacional ha vuelto a detener a José Luis Huertas , conocido con el alias ' Alcasec ' y que ya estaba procesado en la Audi...
-
Conoce cuáles son las formas de filtrar los resultados de búsqueda en Google y el potencial riesgo para usuarios y organizaciones de que e...
-
El bloatware no se puede desinstalar a menos que tengas rooteado el móvil. Sin embargo, existe una opción, puedes deshabilitar las aplic...
Paquetes con malware en proyectos del repositorio oficial Python
Se ha descubierto un grupo de proyectos Python maliciosos que se distribuyen en PyPI,
el repositorio oficial de paquetes Python. La amenaza se dirige tanto a
sistemas Windows como Linux y suele entregar un backdoor personalizado.
En algunos casos, la carga útil final es una variante del infame W4SP Stealer, o un simple monitor del portapapeles para robar criptomonedas, o ambas cosas.
Las amenazas se dirigen tanto a Windows como Linux y el payload final es un backdoor personalizado. En algunos casos la carga útil es el W4SP Stealer, o un monitor de portapapeles para robar criptomonedas, o ambos.
- Las víctimas han descargado estos paquetes más de 10.000 veces.
- Desde mayo de 2023, la tasa de descarga es de más o menos 80 al día.
- El malware un backdoor capaz de ejecutar comandos de forma remota, realizar exfiltraciones y tomar capturas de pantalla.
- El componente backdoor está implementado tanto para Windows, en Python, como para Linux, en Go.
- En algunos casos, el payload final es W4SP Stealer o un monitor de portapapeles que roba criptomoneda, o ambos,
PyPI es popular entre los programadores de Python para compartir y descargar código. Dado que cualquiera puede contribuir al repositorio, el malware —a veces haciéndose pasar por bibliotecas de código legítimas y populares— puede aparecer allí. Encontramos 116 archivos (distribuciones fuente y ruedas) de 53 proyectos que contenían malware.
Algunos nombres de paquetes parecen similares a otros legítimos, pero creemos que la principal forma en que son instalados por las víctimas potenciales no es a través de typosquatting, sino de ingeniería social, donde las víctimas son guiadas a través de la ejecución de pip install {nombre-del-paquete} para poder utilizar el paquete "interesante".
A lo largo del año pasado, las víctimas descargaron estos archivos más de 10.000 veces; véase la Figura 1.
Infectando PyPI
Los paquetes de PyPI pueden adoptar dos formas: paquetes fuente, que contienen todo el código fuente del proyecto y se construyen al instalarse, y paquetes precompilados (llamados wheels), que pueden contener módulos compilados para un sistema operativo o versión de Python específicos. Curiosamente, en algunos casos el código Python de la distribución fuente difiere del de la distribución compilada. La primera está limpia, mientras que la segunda contiene el código malicioso. El gestor de paquetes de Python, pip, favorece una rueda cuando está disponible en lugar de una distribución fuente. Como resultado, la maliciosa se instala a menos que se solicite explícitamente lo contrario.
Hemos observado que los operadores detrás de esta campaña utilizan tres técnicas para empaquetar código malicioso en paquetes de Python.
Módulo malicioso test.py
La primera técnica consiste en colocar un módulo "test" con código ligeramente ofuscado dentro del paquete. La Figura 2 muestra un archivo test.py con una función llamada graby que se define y luego se llama. Observe que la función maneja tanto sistemas Windows como Linux
Este módulo de prueba se importa en medio del código fuente del módulo principal del paquete(__init__.py), de modo que el código malicioso se ejecuta siempre que se importa el paquete. La Figura 3 muestra un módulo que se hace pasar por un capturador de pantalla e importa el malicioso test.py.
PowerShell en setup.py
La segunda técnica consiste en incrustar código PowerShell en el archivo setup.py, que suelen ejecutar automáticamente gestores de paquetes como pip para ayudar a instalar proyectos Python.
La Figura 4 muestra un script PowerShell que descarga y ejecuta la siguiente etapa.
Este script PowerShell descarga transfer[.]sh/eyRyPT/Updater.zip en un directorio temporal como update.zip. A continuación, el script descomprime el archivo ZIP en C:\ProgramData y lo elimina del directorio temporal. Luego, el script ejecuta el programa pip para instalar las dependencias. Finalmente, ejecuta el código Python en C: \ProgramData\Updater\server.pyw.
Esta técnica solo funciona en Windows y no infestará los sistemas Linux.
En los metadatos del paquete de la Figura 4, puede que haya observado que el autor del paquete es billythegoat356. Ha habido numerosos informes que asocian este apodo con actividades maliciosas, incluyendo un artículo de Phylum, donde revelan el posible vínculo de Billy con W4SP Stealer.
Solo malware…
En la tercera técnica, los operadores no hacen ningún esfuerzo por incluir código legítimo en el paquete, de modo que solo está presente el código malicioso, en una forma ligeramente ofuscada. La figura 5 muestra dos fragmentos de código malicioso para Windows que se escriben en archivos temporales y luego se ejecutan con pythonw.exe, que se utiliza en lugar de python.exe para que el código se ejecute sin abrir una ventana de consola.
Las siguientes etapas son paquetes Python, scripts o archivos binarios descargados desde Dropbox o transfer.sh.
Persistencia
En Windows, la persistencia se consigue la mayoría de las veces a través de un archivo VBScript Encoded (VBE), que es un archivo VBScript codificado, escrito en %APPDATA%/Pythonenv/pythenenv.vbe. La Figura 6 muestra cmd.exe ocultando el directorio %APPDATA%/Pythonenv, ejecutando pythenenv.vbe, y luego programando el archivo VBE para que se ejecute cada cinco minutos bajo la tarea MicrosoftWinRaRUtilityTaskB.
En Linux, la persistencia se consigue colocando una entrada maliciosa en el escritorio, mate-user-share.desktop, en el directorio ~/.config/autostart/, como se ve en la Figura 7. Los archivos ubicados en el directorio autostart se ejecutan cada vez que se inicia el sistema. La entrada de escritorio utiliza el nombre de un subproyecto MATE para su nombre de archivo, pero es solo para reducir sospechas porque no tiene nada que ver con el entorno de escritorio.
La Figura 7 también muestra que el módulo descarga dl.dropbox[.]com/s/u3yn2g7rewly4nc/proclean en ~/.config/.kde/.kdepath. Esto es probablemente un esfuerzo para hacerse pasar por un directorio de configuración para la interfaz gráfica de usuario Plasma de KDE para Linux.
Al ejecutar el archivo mate-user-share.desktop, se ejecuta el archivo .kdepath descargado, que es el archivo ejecutable de Linux que contiene el componente backdoor.
Payload final
Normalmente, el payload final es un backdoor personalizado que permite la ejecución remota de comandos, la exfiltración de archivos y, en ocasiones, incluye la capacidad de realizar capturas de pantalla. En Windows, el backdoor se implementa en Python.
La figura 8 muestra el backdoor creando una conexión de socket TCP a blazywound.ignorelist[.]com en el puerto 6001. Tras enviar el nombre de host, la dirección MAC y el nombre de usuario al servidor de C&C, el backdoor gestionará directamente algunos comandos o ejecutará cualquier otro comando en un proceso independiente y devolverá la salida del comando y cualquier información de error al servidor.
En Linux, el backdoor está implementado en Go; ver Figura 9.
En algunos casos, en lugar del backdoor, el payload es una variante del infame W4SP Stealer, o un simple monitor de portapapeles que roba criptomonedas, o ambos. La Figura 10 muestra un monitor de portapapeles dirigido a las criptomonedas Bitcoin, Ethereum, Monero y Litecoin. El malware utiliza el paquete legítimo pyperclip para comprobar el contenido del portapapeles en busca de direcciones de monederos. Si la encuentra, el malware copia una dirección controlada por el atacante en el portapapeles con la esperanza de que la víctima pegue esta dirección en una futura transacción de criptomoneda.
La mayoría de los paquetes ya habían sido retirados por PyPI en el momento de esta investigación. ESET se comunicó con PyPI para tomar medidas contra los restantes y todos los paquetes maliciosos conocidos están ahora fuera de línea. La lista completa de 116 paquetes se puede encontrar en nuestro repositorio de GitHub.
Vale la pena señalar que el malware en un repositorio de proyectos PyPI no es un problema de seguridad con PyPI en sí. De hecho, el software que ejecuta PyPI fue auditado recientemente por una empresa externa que evaluó que PyPl "se ajustaba a las mejores prácticas ampliamente aceptadas".
Conclusión
Los ciberatacantes siguen abusando de PyPI para comprometer los dispositivos de los programadores de Python. Esta campaña muestra una variedad de técnicas utilizadas para incluir malware en paquetes Python. Los desarrolladores de Python deberían examinar minuciosamente el código que descargan, especialmente en busca de estas técnicas, antes de instalarlo en sus sistemas. Además de seguir abusando del código abierto W4SP Stealer, los operadores también han desplegado una puerta trasera sencilla pero eficaz. Creemos que este tipo de abuso de PyPI continuará y aconsejamos precaución a la hora de instalar código de cualquier repositorio de software público.
Fuentes:
0 comentarios :
Publicar un comentario
Los comentarios pueden ser revisados en cualquier momento por los moderadores.
Serán publicados aquellos que cumplan las siguientes condiciones:
- Comentario acorde al contenido del post.
- Prohibido mensajes de tipo SPAM.
- Evite incluir links innecesarios en su comentario.
- Contenidos ofensivos, amenazas e insultos no serán permitidos.
Debe saber que los comentarios de los lectores no reflejan necesariamente la opinión del STAFF.