Злонамерено модифицирано разширение за Claude Code, открито в Open VSX, може да даде на атакуващите постоянен отдалечен достъп до системите на разработчици, като добавя SSH ключ, отваря обратен тунел и инсталира скриптове за автоматично стартиране. OpenSourceMalware идентифицира променения пакет като anthropic.claude-code версия 2.1.313.
Анализираната извадка е насочена към macOS на Apple Silicon. Инжектираният в нея код обаче съдържа и клонове за Linux и Windows. Важно е, че находките потвърждават наличието на злонамерен артефакт, но не доказват компрометиране на официалната версия на Anthropic във Visual Studio Marketplace или на по-широките ѝ системи за разпространение. Остава неизвестно как точно е бил променен пакетът.
SSH задна вратичка осигурява постоянен достъп
Според техническия анализ на OpenSourceMalware атакуващите са добавили 66-редов JavaScript зареждащ модул в началото на extension.js, преди легитимния пакет на разширението. Зареждането на този модул задейства злонамерения код. Разработчиците не е необходимо да започват разговор с Claude.
Зареждащият модул импортира модули на Node.js за изпълнение на команди, работа с файлове, събиране на системна информация и изпращане на мрежови заявки. Повечето грешки се потискат, така че нормалното разширение продължава да работи, дори когато злонамерени стъпки се провалят. Вредният код се изпълнява по време на работата на разширението, а не чрез инсталационни скриптове на пакета.
Този подход напомня на по-ранното компрометиране на разширението Nx Console, при което инжектираният код се изпълняваше, когато разработчиците отворят работна област. Сравнението показва обща опасност, а не доказателство, че зад инцидентите стоят едни и същи атакуващи.
Имплантът добавя контролиран от атакуващия публичен ключ Ed25519 във ~/.ssh/authorized_keys с коментар svc-telemetry. Той задава права 0700 на SSH директорията и 0600 на файла authorized_keys, така че конфигурацията да прилича на нормална SSH настройка.
След това се опитва да включи Remote Login в macOS, да стартира SSH услуга в Linux или да инсталира и стартира OpenSSH Server чрез PowerShell в Windows. Тези стъпки зависят от наличните права и може да се провалят, без това да спре останалия код.
Вграден частен ключ се декодира във временен файл .stk_. Зловредният код се свързва към tunnel@134.209.82.225 и иска обратно препращане към localhost порт 22. Така се създава маршрут от сървъра на атакуващия към SSH услугата на жертвата, при условие че тя е налична.
Тунелът изключва проверката на идентичността на сървъра и се свързва отново след 60 секунди. В Unix-подобни системи предпочита autossh, а в противен случай използва ssh.
В macOS устойчивостта се осигурява чрез ~/.config/.smt, ~/.config/.smtk и LaunchAgent с име com.apple.sysmond.plist. Въпреки името си, този LaunchAgent на ниво потребител не е компонент на Apple. Той използва RunAtLoad и KeepAlive, за да стартира и поддържа тунела.
Клонът за Linux добавя запис в cron с @reboot. Кодът за Windows се опитва да създаде стартираща задача SysMon, изпълнявана като SYSTEM, със скрипт в папката Startup като резервен вариант. Това са реализирани кодови пътища, а не доказателство за успешно заразяване на всяка платформа.
Зареждащият модул събира още име на хоста, потребителско име, операционна система, архитектура, пътища до директории, имейл от Git и имена на до 40 потенциално чувствителни променливи на средата. Стойностите им не са включени директно в първоначалния сигнал.
След 1,5 секунди модулът проверява публичния IP адрес и изпраща JSON през некриптиран HTTP към порт 8099 на 134.209.82.225 и localhost. Този зареждащ модул не изтегля допълнителен изпълним файл. SSH достъпът обаче може да подпомогне последваща дейност на атакуващите.
По-ранни атаки с разширението Trivy в Open VSX също са скривали нежелана дейност зад работещи инструменти за разработчици, но зловредният им код е използвал локални AI асистенти.
Защитаващите се екипи трябва да проверят authorized_keys за svc-telemetry, да потърсят файловете за устойчивост и да прегледат ssh или autossh процесите, използващи обратно препращане. Публикуваните от OpenSourceMalware индикатори включват хешове за откриване на променения JavaScript файл.
Ако разширението е било изпълнявано, изолирайте хоста, запазете доказателствата и блокирайте сървъра на портове 22 и 8099. Премахнете механизмите за устойчивост след събирането на доказателства, сменете изложените идентификационни данни от чисто устройство и проучете евентуален последващ достъп.
Деинсталирането на разширението само по себе си не може да докаже, че системата е надеждна. Екипите трябва да прегледат и логовете за удостоверяване, обвивка, редактор, процеси и мрежа, преди да решат дали е нужно преинсталиране на засегнатата машина, за да се възстанови доверието в нейната сигурност.