Snyk identificeert cyberaanval als protest tegen crisis Oekraïne

Op 15 maart werd, als protest tegen de crisis in Oekraïne, een aanval op de supply chain gecreëerd, gericht op gebruikers van het populaire JavaScript front-end ontwikkelings-framework Vue.js en de Unity Hub. De aanval creëert een bestand met een anti-oorlogsboodschap en introduceert securitylekken waarbij de inhoud van eerdere versies van gebruikersbestanden, afkomstig uit Rusland en Wit-Rusland, vervangen worden door gele en blauwe hart-emojis.

Dit was het resultaat van het knoeien met de nested dependencies van het framework, node-ipc en peacenotwar, door de onderhouder van node-ipc, Brandon Nozaki Miller, ook bekend als ‘RIAEvangelist’. Nested dependencies zijn additionele pakketten waar stukken software van afhankelijk zijn en deze worden automatisch gedownload.

Het gebruik van dependencies is een heel normaal onderdeel van de manier waarop open source-toepassingen en -tools werken, maar het is er wel één die kan worden uitgebuit om kwetsbaarheden te introduceren op de apparaten van nietsvermoedende gebruikers.

Liran Tal, directeur Developer Advocacy bij Snyk, zei: “Hoewel we er fel op tegen zijn wat er in Oekraïne gebeurt, ondermijnt opzettelijke sabotage zoals deze de wereldwijde open source-gemeenschap. De impact van security-incidenten in de supply chain blijft aantonen dat het noodzakelijk is om de risico’s met open source-dependencies goed te beheren en er snel op te reageren.”

Verloop van de aanval
Het verhaal van deze aanval toont de potentieel zeer ontwrichtende en effectieve impact die aanvallen op de supply chain kunnen hebben. Op 8 maart werd het pakket peacenotwar gepubliceerd op npm, een centrale repository voor JavaScript-ontwikkelaars. Het pakket was ontworpen om simpelweg een anti-oorlogsboodschap te tonen op de desktops van gebruikers. Op zichzelf had het weinig impact en weinig downloads.

Dat veranderde dramatisch op 15 maart, toen de onderhouder, RIAEvangelist, peacenotwar als een dependency toevoegde aan een ander pakket waar hij controle over had, node-ipc. Node-ipc is een zeer populaire communicatiemodule die gebruikt wordt – en automatisch gedownload wordt – door vele andere populaire pakketten, waaronder Vue.js, en specifiek zijn command line tool, Vue.js CLI via zijn pakket @vue/cli. De release voegt ook expliciet een dependency toe van colors@* die opzettelijk kwetsbare broncode binnenhaalt, als gevolg van de acties van een andere kwaadaardige maintainer.

Liran Tal concludeert: “Om te zorgen dat toekomstige code-updates gebruikers niet in gevaar kunnen brengen, raden we aan om het node-ipc npm-pakket volledig te vermijden. Als dit npm pakket gebundeld is in je project als onderdeel van de applicatie die je bouwt, dan raden we je aan om de npm package managers functie te gebruiken om de gesaboteerde versies helemaal te overschrijven en de transitieve dependency vast te pinnen op known good.”

Gerelateerde berichten...