Neu entdeckte bösartige npm-Pakete tarnen sich als harmlose Front-End-Helfer, enthalten jedoch bösartigen verschleierten Code.
Das Sicherheitsforschungsteam bei Xygeni festgestellt, dass diese npm-Pakete: „React-UI-Benachrichtigung“, „React-Tmedia“, „React-UI-Animationen“, „React-Medias“, „React-Mandes“ sind modifizierte Derivate von „Bingo-Logger“, selbst ein bösartiger Fork, der die Struktur und Dokumentation des beliebten Protokollierungspakets nachahmt 'Pino' um legitim zu erscheinen. Diese Tarnung wird verwendet, um das Vertrauen der Entwickler auszunutzen und Downloads anzulocken. In Wirklichkeit enthält die Codebasis eine unabhängige verschleierte Datei, die in Node-Umgebungen ausgeführt wird.
Hintergrund der Bedrohungsakteure: Die Kampagne „Contagious Interview“
Das Ansteckende Interview-Kampagne ist mit dem Bedrohungscluster verbunden, der als 'UNC4034', die Verbindungen zu nordkoreanischen Akteuren meldet Lazarus Group or APT38, eine bekannte staatlich geförderte Gruppe mit Verbindungen zum nordkoreanischen Regime. Die Angreifer hinter dieser Kampagne haben es bereits in der Vergangenheit geschafft, Entwickler über Open-Source-Ökosysteme anzugreifen und täuschend echte Pakete zu verbreiten, die versteckte Schadsoftware ausführen. Letztendlich exfiltrieren sie kryptobezogene Daten, Quellcode und Anmeldeinformationen aus infizierten Systemen.
Das Taktiken, Techniken und Verfahren (TTPs), die in diesen npm-Paketen beobachtet wurden, folgen demselben Muster:
- Imitieren Sie legitim klingende Projektnamen, um vertrauenswürdig zu wirken.
- Betten Sie verschleierten Code in Testdateien und Hilfsskripte ein.
- Führen Sie versteckte Nutzdaten aus, die vertrauliche Daten sammeln und an einen Remote-Command-and-Control-Server (C2) senden.
Technische Erkenntnisse: Analyse verschleierter Nutzlasten
Die darin enthaltene Nutzlast '/test/fixtures/eval/node_modules/test.list' verwendet verschleiertes JavaScript (Index-/Array-String-Lookups, codierte Blöcke), um lesbare Strings zu verbergen, und der Kontrollfluss wird ausgeführt, sobald das Paket aufgrund des Postinstall-Skripts installiert ist 'npm run test || npm transpile || npm run skip' innerhalb der Paket.json.
Unsere Analyse ergab, dass diese Pakete adaptive Malware enthalten, die sich zwischen Betriebssystemen (Windows, macOS oder Linux) und Benutzerumgebungen bewegt. Diese Fähigkeit deutet auf eine gezielte Fokussierung auf technische Benutzer hin, die häufig in unterschiedlichen Umgebungen arbeiten.
Sobald sich die Malware auf einem System etabliert hat, überwacht sie ihre Umgebung und sammelt detaillierte Systeminformationen wie hostname, Lernumgebung, Ausgangsverzeichnis und temporäres Systemverzeichnis bevor es seine Reichweite auf Anwendungen ausweitet, die sensible Daten speichern, wie Browsern (Chrome/Brave/Edge/Opera) und digitale Brieftaschen. Es durchsucht rekursiv gängige Speicherorte nach Browserprofilen, Wallet-Dateien, Schlüsselbunden und vielen Dokument-/Dateitypen. Zu den Suchbegriffen gehören Wallet, Seed-bezogene Begriffe und viele Dateierweiterungen, die wahrscheinlich Anmeldeinformationen oder Geheimnisse enthalten (*.env, *.key, *.wallet, *.json, *.txt, *.doc usw..). Es enthält Ausschlusslisten für allgemeine Verzeichnisse, um offensichtliche Systemdateien zu vermeiden.
Die Nutzlast schreibt eine lokale Markierungs-/Sperrdatei, um mehrere gleichzeitige Ausführungen zu verhindern, und schreibt ihre Daten in temporäre Betriebssystemverzeichnisse, um eine Erkennung zu vermeiden.
Die verschleierte Nutzlast enthält außerdem einen Kommunikationskanal zu einem Remote-Server, der als Kommando- und Kontrollzentrum fungiert. Über diesen Kanal kann gestohlene Informationen exfiltrieren und weitere Anweisungen erhalten. Während die Infrastruktur selbst begrenzt und zweckgebunden erscheint, bestätigt ihre Existenz die Absicht des Angreifers, die Kontrolle über infizierte Systeme dauerhaft zu behalten.
Wenn die Malware vertrauliche Daten findet, bündelt sie diese und versucht, sie mithilfe von Multipart/Form-Data auf einen Remote-Endpunkt hochzuladen, der auf einem Cloud-Server gehostet wird, sodass gestohlene Dateien an Anfragen angehängt werden.
Indikatoren für Gefährdungen und Empfehlungen zur Schadensbegrenzung
Organisationen wird empfohlen, diese schädlichen Abhängigkeiten zu entfernen (React-UI-Benachrichtigung, React-Tmedia, React-UI-Animationen, React-Medias, React-Mandes, Bingo-Logger) und aktualisieren Sie diese Umgebungen, um die Integrität sicherzustellen. Bei Systemen, die möglicherweise exponiert waren, sollten alle Anmeldeinformationen und Zugriffstoken sofort rotiert werden.
Netzwerkadministratoren sollten den ausgehenden Datenverkehr auf diese IPs beschränken 23.227.202.24, 131.153.22.25 und überprüfen Sie die letzten Verbindungen auf Anomalien. Es wird dringend empfohlen, betroffene Umgebungen aus verifizierten, sauberen Quellen wiederherzustellen, um eine erneute Infektion zu verhindern und die Integrität der Lieferkette sicherzustellen.
Breiteren Kontext
Insgesamt sind diese Pakete ein weiteres Beispiel Aufgrund des neuen Reifegrads JavaScript-basierter Supply-Chain-Angriffe erstellen Angreifer zunehmend ähnliche Pakete, die Struktur und Dokumentation von vertrauenswürdigen Projekten übernehmen, modular erweitert werden und bessere Techniken anwenden, um die Erkennung und Abwehr zu einer Herausforderung zu machen.
Diese Entwicklung erhöht die Wahrscheinlichkeit einer versehentlichen Installation durch ahnungslose Entwickler und gewährt Angreifern tieferen Zugriff auf Build-Umgebungen. CI/CD Systeme und Quellcode-Repositories.
Open-Source-Ökosysteme haben sich zu einer bevorzugten Verbreitungsplattform für solche Kampagnen entwickelt. Indem sie das inhärente Vertrauen der Entwickler in Community-Pakete ausnutzen, können Angreifer mit minimalem Aufwand und oft ohne sofortige Entdeckung oder Konsequenzen in die Software-Lieferkette eindringen.
Malware Early Warning (MEW) von Xygeni
Dieser Vorfall wurde ursprünglich durch Xygenis Frühwarnung vor Malware System, das Open-Source-Paketregister wie npm, PyPI und Maven kontinuierlich auf schädliche Pakete überwacht.
Unsere Erkennungs-Engine hat diese Pakete aufgrund ihrer ungewöhnlichen Struktur, des Postinstall-Skripts und der verschleierten Nutzlast automatisch als verdächtig markiert. Infolgedessen wurden die schädlichen Pakete (react-ui-notify, react-tmedia, react-ui-animates, react-medias und react-mandes) wurden von unserem Sicherheitsteam als bösartig bestätigt und an npm gemeldet, bevor sie eine breitere Verbreitung finden konnten.
Wie Xygeni Early Warning Ihre pipelines
- Bedrohungserkennung in Echtzeit: Scannt jedes neue oder aktualisierte Paket in Ihrem Abhängigkeitsdiagramm und markiert verdächtiges Verhalten wie Betriebssystemsystemaufrufe, Befehlsausführung, verschleierten Code, Typosquatting und vieles mehr.
- Sofortige Benachrichtigungen: Benachrichtigt Ihre Sicherheits- und DevOps-Teams in Slack, Jira oder per E-Mail, sobald in Ihrer Umgebung eine neue Bedrohung auftritt.
- Korrektur mit einem Klick: Erzeugt pull requests die anfällige Abhängigkeitsversionen in Ihren Projekten entfernen oder ersetzen.
- Unterstützte Ökosysteme: Derzeit sind npm, PyPI, Maven und Packagist enthalten.
- Xygeni hilft Ihnen, Angriffen auf die Lieferkette immer einen Schritt voraus zu sein, indem es schädliche Pakete im frühesten Stadium abfängt, bevor sie Ihren Build erreichen.
👉 Testen Sie Xygeni Malware Early Warning kostenlos und sehen Sie, wie schnell Sie Bedrohungen in der Lieferkette in Ihrem eigenen pipelines.







