Компрометиране на веригата за доставки постави npm пакетите на AsyncAPI в центъра на инцидент със сигурността на разработчиците.

Пет компрометирани версии с общо около 2,9 милиона седмични изтегляния бяха публикувани, след като нападател е получил достъп до токен за публикуване в npm.

Инцидентът създава риск за работните станции на разработчиците, сървърите за компилация и средите, които са заредили засегнатите модули.

Атаката е започнала в хранилището за генериране на AsyncAPI, където работен процес на GitHub Actions е използвал тригера pull_request_target. Тази конфигурация е позволила разкриването на тайните на хранилището, когато код от външна заявка за изтегляне (pull request) е бил изтеглен локално.

Нападателят е отворил множество заявки за изтегляне и е използвал една от тях, за да изпрати npm токена към rentry.co, преди да публикува променените пакети.

Анализаторите на Aikido идентифицираха зловредните версии на 14 юли и проследиха кампанията от слабост в работния процес до постоянен имплант за отдалечен достъп.

Aikido съобщи в доклад, споделен с Cyber Security News (CSN), че самото импортиране на засегнат пакет, а не инсталирането му, може да задейства веригата на инфекция. Тази разлика прави процеса по изграждане (build) и дейността по разработка потенциални точки на излагане на риск.

Вграденият код изтегля криптиран Node.js заредител от IPFS, записва го като sync.js и го стартира в отделен процес. Крайният зловреден код установява присъствие в системата и предоставя на нападателите отдалечена обвивка (shell), способна да събира данни и да изпълнява команди. Въпреки че в пакета са съществували функции за кражба на идентификационни данни и саморазпространение, тези функции са били деактивирани в откритата версия.

Компрометираните версии са: asyncapi-specs 6.11.2 и 6.11.2-alpha.1, asyncapi-generator 3.3.1, asyncapi-generator-helpers 1.1.1 и asyncapi-generator-components 0.7.1.

Организациите трябва да даунгрейднат до безопасните версии и да премахнат компрометираните издания от своите манифести, lock файлове и кешове, както и да подменят потенциално компрометираните си ключове и пароли.