Hace dos años, una cuenta con el nombre "shanhai666" subió nueve paquetes NuGet maliciosos. Esto desencadenó un complejo ataque a la cadena de suministro de software.
Según la empresa de seguridad de la cadena de suministro Socket, los paquetes se han descargado 9488 veces en total. Además, se han establecido desencadenantes específicos para agosto de 2027 y noviembre de 2028.
Kush Pandya, miembro del equipo de Socket, descubrió al actor de amenazas responsable de la campaña que publicó un total de 12 paquetes. Nueve de estos paquetes contienen rutinas dañinas, mientras que tres son implementaciones completamente funcionales que disfrazan al resto de "creíbles"
Pandya cree que el hacker utilizó bibliotecas legítimas junto con las maliciosas para engañar a los desarrolladores para que instalaran los paquetes sin detectar anomalías durante las pruebas de rutina.
“La funcionalidad legítima enmascara la carga maliciosa de aproximadamente 20 líneas enterrada en miles de líneas de código legítimo y retrasa el descubrimiento ya que, incluso después de la activación, las fallas aparecen como errores aleatorios en lugar de ataquesmatic ”, escribió en un informe del 6 de noviembre.
9 amenazas ocultas de NuGet en código legítimo
Los nueve identificadosdentprocesos podrían afectar a los tres principales proveedores de bases de datos utilizados en aplicaciones .NET: Microsoft SQL Server, PostgreSQL y SQLite. Un paquete, Sharp7Extend, ataca específicamente a los PLC industriales utilizados en la fabricación y la automatización de
La investigación de Socket propuso que la base de datos podría ser vulnerable a un ataque de cadena de suministro de doble propósito que amenaza el desarrollo de software y las operaciones de infraestructura crítica.
Pandya acuñó el paquete Sharp7Extend como el más peligroso de los paquetes maliciosos, al ser un error tipográfico de la implementación legítima de la biblioteca Sharp7 .NET para comunicarse con los controladores lógicos programables Siemens S7.

Añadir "Extend" al nombre de confianza podría ayudar al paquete malicioso a instalar códigodenta través de ingenieros de automatización que buscan mejoras para Sharp7. El paquete incluye la biblioteca Sharp7 completa sin modificar con su carga maliciosa. La comunicación PLC estándar puede parecer que funciona correctamente durante las pruebas, pero el malware incrustado está enmascarado.
“Sharp7Extend ataca a los PLC industriales con mecanismos de sabotaje duales: terminación aleatoria inmediata del proceso y fallas de escritura silenciosas que comienzan entre 30 y 90 minutos después de la instalación”, dijo el investigador de seguridad.
Los paquetes maliciosos utilizan métodos de extensión de C# para agregar código peligroso a las operaciones de bases de datos y PLC sin modificar el código original. En el caso de los paquetes de bases de datos, se agrega un método .Exec() a los tipos de comando, mientras que Sharp7Extend agrega un método .BeginTran() a los objetos S7Client.
Las extensiones se ejecutanmaticcada vez que una aplicación realiza una acción PLC o una consulta. Tras la fecha de activación, el malware genera un número aleatorio entre 1 y 100.
Si el número supera los 80, lo cual tiene una probabilidad del 20%, el paquete finaliza inmediatamente el proceso en ejecución mediante Process.GetCurrentProcess().Kill(). Se produce entonces una terminación abrupta sin advertencias ni entradas de registro que podrían indicar inestabilidad de la red, fallos de hardware u otros errores del sistema no alarmantes.
Sharp7Extend también implementa la corrupción de escritura retardada mediante un temporizador que establece un período de gracia de 30 a 90 minutos. Tras este período, un método de filtro llamado ResFliter.fliter() comienza a fallar silenciosamente las operaciones de escritura el 80 % del tiempo.
Los métodos afectados incluyen WriteDBSingleByte, WriteDBSingleInt y WriteDBSingleDInt. Las operaciones parecen realizadas correctamente, pero los datos no se escriben en el PLC.
Temporizador configurado para agosto de 2027 a noviembre de 2028
El informe de seguridad de Socket dijo que ciertos paquetes centrados en bases de datos en la encrucijada de la campaña, incluido MCDbRepository, están programados para ejecutar su carga útil el 8 de agosto de 2027. SqlUnicornCore y SqlUnicornCoreTest probablemente podrían activarse el 29 de noviembre de 2028.
“Este enfoque escalonado le da al actor de amenazas una ventana más amplia para recolectar víctimas antes de que se active el malware de activación retardada, al tiempo que interrumpe de inmediato los sistemas de control industrial”, explicó Pandya.
La investigación de Socket descubrió que el nombre “shanhai666” y partes del código fuente son de origen chino.
En septiembre, analistas de ciberseguridad descubrieron un código en servidores de Microsoft Internet Information Services (IIS) que había estado explotando vulnerabilidades desde 2003. La operación involucra módulos IIS maliciosos utilizados para la ejecución remota de comandos y fraude de optimización de motores de búsqueda (SEO).

