TL; DR
Shai-Hulud 3.0 е най-новата еволюция на зловредния софтуер shai-hulud npm. саморазпространяващ се червей на веригата за доставки злоупотреба с npm пакети за кражба на идентификационни данни, автоматично разпространение и компрометиране CI/CD среди. За разлика от по-ранните вълни, Shai-Hulud 3.0 усъвършенства логиката си на разпространение, насочва се към популярни frontend библиотеки и ускорява заразяването чрез злоупотреба с токени на поддържащите.
В резултат на това, този зловреден софтуер shai-hulud за пореден път доказва, че съвременните атаки срещу веригата за доставки на npm вече не разчитат на zero-day атаки, а на автоматизация, злоупотреба с доверие и работни процеси на разработчиците.
Какво е Шай-Хулуд 3.0?
Shai-Hulud 3.0 е третата потвърдена вълна от кампанията със зловреден софтуер shai-hulud npm, след оригиналния червей Shai-Hulud и мащабната епидемия Shai-Hulud 2.0.
Тази версия обаче не въвежда радикално нова експлойт уязвимост. Вместо това, тя подобрява ефективността, скритността и насочването. С други думи, Shai-Hulud 3.0 оптимизира модела на атака срещу веригата за доставки, вместо да го преоткрива.
Най-важното е, че зловредният софтуер продължава да функционира като червей, а не като еднократен злонамерен пакет.
Защо Shai-Hulud 3.0 е важен за npm сигурността
На пръв поглед Shai-Hulud 3.0 може да изглежда като „просто още един злонамерен npm пакет“. Именно това предположение обаче е причината тази кампания да е успешна.
Защото екосистемите от npm разчитат в голяма степен на:
- имплицитно доверие
- автоматизирани инсталации
- идентификационни данни за поддържащ
- CI/CD pipelines
Един-единствен компрометиран токен може бързо да ескалира до пълномащабна епидемия от зловреден софтуер във веригата за доставки на NPM.
В резултат на това, зловредният софтуер shai-hulud не се нуждае от експлойти. Той превръща нормалните работни процеси в оръжие.
Вектор на атака Shai-Hulud 3.0: Как се разпространява зловредният софтуер npm
Първоначална инфекция чрез зловреден npm пакет
Зловредният софтуер shai-hulud npm навлиза в екосистемата чрез троянски пакети, публикувани под легитимни или компрометирани акаунти на поддържащи.
Във вълната Shai-Hulud 3.0, изследователите наблюдаваха инфекция чрез популярни зависимости, включително ориентирани към фронтенда пакети, като например:
Тъй като тези пакети са високо в графиките на зависимостите, една инсталация се разпространява бързо в различните проекти.
Събиране на удостоверения и разпространение на червеи
След инсталиране, Shai-Hulud 3.0 изпълнява злонамерени скриптове за жизнения цикъл по време на install or postinstall.
На този етап зловредният софтуер:
- сканира локални файлове и променливи на средата
- извлича npm токени и GitHub идентификационни данни
- идентифицира достъпни хранилища и пакети
Следователно, инфекцията незабавно преминава от местен компромис да се разпространение в цялата екосистема.
Автоматизирано повторно публикуване в портфолиа на поддържащи
След събиране на пълномощия, зловреден софтуер shai-hulud npm програмно изброява всички пакети, собственост на компрометирания поддържащ.
След това:
- инжектира зловреден код в нови версии
- автоматично препубликува тези версии
- превръща всяка жертва в нова точка на разпространение
Като резултат, Един откраднат токен може да зарази десетки или стотици npm пакети в рамките на часове.
Шай-Хулуд 3.0 срещу предишни вълни
Какво се промени в Шай-Хулуд 3.0?
Въпреки че основните механики остават познати, Шай-Хулуд 3.0 въвежда няколко важни подобрения.
Най-вече:
- по-бърза логика на разпространение
- по-чиста структура на полезния материал
- по-добро сливане с легитимни актуализации на пакети
- намален шум в сравнение с Шай-Хулуд 2.0
Следователно, откриването, основано единствено на репутация или CVE, става неефективно.
| Аспект | Шай-Хулуд 2.0 | Шай-Хулуд 3.0 |
|---|---|---|
| Вектор на първоначална инфекция | Злонамерени npm пакети с предварително инсталирани скриптове за жизнения цикъл | Злонамерени npm пакети, злоупотребяващи с надеждни библиотеки с висока видимост и пътища за актуализиране |
| основна цел | npm екосистема и CI/CD pipelines | npm екосистема с фокус върху машините на разработчиците и потребителите надолу по веригата |
| Механизъм на разпространение | Кражба на идентификационни данни, последвана от автоматизирано повторно публикуване на пакети | Повторно използване на идентификационни данни плюс злоупотреба с доверие на зависимости за по-бързо разширяване на обхвата |
| Злоупотреба по време на изпълнение | Инсталиране на Bun runtime в движение | Повторно използване на съществуваща среда за изпълнение на Node.js и надеждни пътища за изпълнение |
| CI/CD Злоупотреба | Скрити работни потоци за действия в GitHub и самостоятелно хоствани изпълнители | намален CI/CD шум, по-голям акцент върху скритото изпълнение на ниво пакет |
| Поведение на полезния товар | Големи обфускирани JavaScript полезни товари и сканиране на средата | По-малки, по-целенасочени полезни товари, фокусирани върху постоянството и разпространението |
| Насочване към идентификационни данни | GitHub токени, npm токени, облачни идентификационни данни, CI тайни | Същите цели за идентификационни данни, с по-бързо повторно използване и по-малко видимо изтичане на данни |
| Оперативен шум | Много шумно: създаване на масови хранилища, инжектиране в работен процес, групови качвания | По-нисък шум: по-малко видими артефакти, по-трудни за откриване чрез ръчен преглед |
| Радиус на въздействието | Голям, но откриваем поради мащаба и артефактите | Потенциално по-голям поради скритост и злоупотреба с надеждни пакети |
| Защитно предизвикателство | спиране CI/CD злоупотреба и изтичане на идентификационни данни | Откриване на злонамерено поведение в иначе легитимни пакети |
Защо това е все същият червей
Въпреки тези промени, Shai-Hulud 3.0 е все още същият клас npm червей за веригата за доставки..
Разчита на:
- повторна употреба на идентификационни данни
- автоматизирано препубликуване
- доверие на зависимостта
- CI/CD изпълнение
Следователно, всяка среда, която инсталира npm пакети без поведенчески контроли, остава изложена на риск.
Индикатори за компромис
Екипите по сигурност, разследващи зловредния софтуер shai-hulud, трябва да търсят следните сигнали:
- неочаквани ъпгрейди на версията на пакета
- скриптове за жизнен цикъл, добавени без обосновка
- обфускирани JavaScript блобове
- изходящи мрежови заявки по време на инсталиране
- npm или GitHub токени, достъпни по време на инсталиране
- CI/CD задачи, които се държат неочаквано след актуализации на зависимостите
Важно е да се отбележи, че нито едно от тях не изисква CVE, за да съществува.
Защо традиционни инструменти за сигурност на NPM? Мис Шай-Хулуд 3.0
Неуспешно откриване на базата на CVE
Тъй като Shai-Hulud 3.0 злоупотребява с легитимни работни процеси, скенерите, които се фокусират само върху известни уязвимости, не виждат нищо нередно.
Има:
- няма уязвима функция
- няма опасен API
- без повреда на паметта
Вместо това, в нормалния JavaScript е вградено злонамерено намерение.
SBOM Видимостта не е достатъчна
По същия начин, SBOMs мога да ти кажа какво зависиш от, но не какво прави по време на инсталирането.
В резултат на това, видимостта без прилагане на правилата не спира „червея“ във веригата за доставки.
Как Xygeni предотвратява атаки срещу веригата за доставки Shai-Hulud 3.0 npm
Точно тук е важна архитектурата на Xygeni.
Ранно предупреждение за зловреден софтуер (MEW): Спрете зловреден софтуер npm по време на публикуване
Ранно предупреждение за зловреден софтуер (MEW) на Xygeni непрекъснато сканира новопубликуваните npm пакети в реално време.
MEW открива:
- обфускирани полезни товари
- подозрителни скриптове за жизнен цикъл
- поведение при събиране на идентификационни данни
- необичайни записи във файловата система
- неочаквана мрежова активност
Най-важното е, че MEW може да блокира автоматично компилациите, предотвратявайки навлизането на зловреден софтуер shai-hulud npm. CI/CD.
GuardrailsПрилагане на безопасно поведение на зависимости
Ксигени Guardrails прилагат строги политики вътре pipelines.
Те:
- блокиране на злонамерени или подозрителни npm пакети
- предотвратяване на изпълнението на скрити инсталационни скриптове
- спиране на изтеглянията по време на изпълнение по време на компилации
- прилагане на целостта на заключените файлове
В резултат на това pipeline спира преди червеят да се изпълни.
CI/CD Сигурност: Защита Pipelineот злоупотреба
Защото Шай-Хулуд 3.0 често се превръща в CI/CD, Монитори Xygeni pipelines за:
- неоторизирани промени в работния процес
- необичайни модели на изпълнение
- злоупотреба с разрешения
- инжектиране в работен процес, задействано от зависимости
Ако се появи рисково поведение, Xygeni го блокира pipeline незабавно, прекъсвайки страничното движение.
Тайни на защитата: Намалете радиуса на взрива
Тъй като зловредният софтуер shai-hulud агресивно краде идентификационни данни, Ксигени също се фокусира върху тайните.
Ксигени:
- открива разкрити тайни навсякъде SDLC
- автоматично ротира високорискови идентификационни данни
- налага по-безопасни практики за токени
Следователно, дори ако злонамереният софтуер се стартира, откраднатите тайни бързо губят стойност.
Защо Шай-Хулуд 3.0 потвърждава дългосрочна тенденция
В крайна сметка, Шай-Хулуд 3.0 потвърждава една по-широка реалност.
Съвременни атаки върху веригата за доставки на NPM:
- разпространява се автоматично
- движат се по-бързо от човешки преглед
- експлоатират доверие, а не уязвимости
- цел pipelineс, не само код
Следователно, защитата срещу зловреден софтуер shai-hulud npm изисква поведенческо откриване и прилагане, а не само сканиране.
Заключителни бележки: Защо Шай-Хулуд 3.0 все още има значение
Въпреки че Shai-Hulud 3.0 не въвежда нова, ярка експлойт уязвимост, тя представлява зрял, повтаряем и мащабируем модел на атака.
С други думи, това няма да е последната вълна.
Екипи, които разчитат на реактивна сигурност, ще продължат да преследват инфекциите. Екипи, които блокират злонамерено поведение рано, ще спрат червея напълно.
Това е разликата.





