Cybersecurity-onderzoekers hebben details bekendgemaakt van wat een nieuwe stam van Shai Hulud lijkt te zijn in het npm-register, met kleine wijzigingen ten opzichte van de vorige golf die vorige maand werd waargenomen.
Het npm-pakket waarin de nieuwe Shai Hulud-soort is ingesloten, is “@vietmoney/react-big-calendar”, dat in maart 2021 naar npm werd geüpload door een gebruiker met de naam “hoquocdat.” Het werd op 28 december 2025 voor het eerst bijgewerkt naar versie 0.26.2. Het pakket is sinds de eerste publicatie 698 keer gedownload. De nieuwste versie is 197 keer gedownload.
Aikido, die het pakket heeft opgemerkt, zei dat het geen grote verspreiding of infecties heeft opgemerkt na de vrijgave van het pakket.
“Dit suggereert dat we de aanvallers mogelijk hebben betrapt tijdens het testen van hun lading”, zegt beveiligingsonderzoeker Charlie Eriksen. “De verschillen in de code suggereren dat dit opnieuw werd verduisterd ten opzichte van de originele bron, en niet op zijn plaats werd gewijzigd. Dit maakt het hoogst onwaarschijnlijk dat het een copy-cat is, maar werd gemaakt door iemand die toegang had tot de originele broncode van de worm.”
De Shai-Hulud-aanval kwam voor het eerst aan het licht in september 2025, toen werd ontdekt dat getrojaniseerde npm-pakketten gevoelige gegevens zoals API-sleutels, cloud-inloggegevens en npm- en GitHub-tokens stalen en deze met behulp van de gestolen tokens naar GitHub-opslagplaatsen exfiltreerden. In de tweede golf die in november 2025 werd waargenomen, bevatten de opslagplaatsen de beschrijving “Sha1-Hulud: The Second Coming.”
Maar het belangrijkste aspect van de campagne is de mogelijkheid om de npm-tokens te bewapenen om 100 andere meest gedownloade pakketten op te halen die aan de ontwikkelaar zijn gekoppeld, dezelfde kwaadaardige wijzigingen te introduceren en deze naar npm te pushen, waardoor de omvang van het compromis in de toeleveringsketen op een wormachtige manier wordt vergroot.
De nieuwe soort brengt merkbare veranderingen met zich mee:
- Het initiële bestand heet nu “bun_installer.js” en de hoofdpayload wordt “environment_source.js” genoemd
- De GitHub-opslagplaatsen waarnaar de geheimen zijn gelekt, bevatten de beschrijving “Goldox-T3chs: Only Happy Girl.”
- De namen van bestanden die de geheimen bevatten zijn: 3nvir0nm3nt.json, cl0vd.json, c9nt3nts.json, pigS3cr3ts.json en actionsSecrets.json
- Het verwijderen van de “dodemansknop” die resulteerde in de uitvoering van een wiper als er geen GitHub- of npm-tokens werden gevonden die misbruik maakten voor data-exfiltratie en zelfreplicatie
Andere belangrijke wijzigingen zijn onder meer een betere foutafhandeling wanneer de inloggegevensscanner van TruffleHog een time-out ondergaat, een verbeterde op het besturingssysteem gebaseerde pakketpublicatie en aanpassingen aan de volgorde waarin gegevens worden verzameld en opgeslagen.
Fake Jackson JSON Maven-pakket laat Cobalt Strike Beacon vallen
De ontwikkeling komt op het moment dat het supply chain-beveiligingsbedrijf zei dat het een kwaadaardig pakket (“org.fasterxml.jackson.core/jackson-databind”) op Maven Central heeft geïdentificeerd dat zich voordoet als een legitieme Jackson JSON-bibliotheekextensie (“com.fasterxml.jackson.core”), maar een meerfasige aanvalsketen bevat die platformspecifieke uitvoerbare bestanden levert. Het pakket is inmiddels verwijderd.
In het Java Archive (JAR)-bestand bevindt zich zwaar versluierde code die in actie komt zodra een nietsvermoedende ontwikkelaar de kwaadaardige afhankelijkheid aan zijn “pom.xml”-bestand toevoegt.
“Wanneer de Spring Boot-applicatie start, scant Spring naar @Configuration-klassen en vindt JacksonSpringAutoConfiguration”, aldus Eriksen. “De @ConditionalOnClass({ApplicationRunner.class}) controle slaagt (ApplicationRunner is altijd aanwezig in Spring Boot), dus Spring registreert de klasse als een boon. De ApplicationRunner van de malware wordt automatisch aangeroepen nadat de applicatiecontext is geladen. Er zijn geen expliciete oproepen vereist.”
De malware zoekt vervolgens naar een bestand met de naam “.idea.pid” in de werkmap. De keuze van de bestandsnaam is opzettelijk en is ontworpen om te passen bij IntelliJ IDEA-projectbestanden. Als zo’n bestand bestaat, is dit een signaal voor de malware dat er al een exemplaar van zichzelf actief is, waardoor het stilletjes wordt afgesloten.
In de volgende stap gaat de malware verder met het controleren van het besturingssysteem en neemt contact op met een externe server (“m.fasterxml(.)org:51211”) om een gecodeerd antwoord op te halen met URL’s naar een payload die moet worden gedownload op basis van het besturingssysteem. De lading is een Cobalt Strike-baken, een legitiem simulatietool voor tegenstanders dat kan worden misbruikt voor post-exploitatie en command-and-control.
Op Windows is het geconfigureerd om een bestand met de naam “svchosts.exe” van “103.127.243(.)82:8000” te downloaden en uit te voeren, terwijl een payload die “update” wordt genoemd, wordt gedownload van dezelfde server voor Apple macOS-systemen.
Uit verdere analyse is gebleken dat het getypte domein fastxml(.)org op 17 december 2025 via GoDaddy werd geregistreerd, slechts een week voordat het kwaadaardige Maven-pakket werd gedetecteerd.
“Deze aanval maakte gebruik van een specifieke blinde vlek: prefix-swaps in TLD-stijl in Java’s naamruimteconventie voor omgekeerde domeinen”, aldus Eriksen. “De legitieme Jackson-bibliotheek gebruikt com.fasterxml.jackson.core, terwijl het kwaadaardige pakket org.fasterxml.jackson.core gebruikte.”
Het probleem, zegt Aikido, komt voort uit het onvermogen van Maven Central om copycat-pakketten te detecteren die vergelijkbare voorvoegsels gebruiken als hun legitieme tegenhangers, om ontwikkelaars te misleiden om ze te downloaden. Het wordt aanbevolen dat de beheerders van de pakketrepository overwegen om dergelijke pakketten ter beoordeling te markeren, en een lijst met hoogwaardige naamruimten bij te houden en elk pakket dat onder gelijksoortige naamruimten wordt gepubliceerd te onderwerpen aan aanvullende verificatie om er zeker van te zijn dat ze legitiem zijn.