Новости
Тайпсквоттинг или как взламывать компьютеры через пакетные менеджеры

Тайпсквоттинг или как взламывать компьютеры через пакетные менеджеры

Если вы пользуетесь открытым ПО, пакетными менеджерами и прочими свободными разработками энтузиастов – вы в опасности.

Примерно так бы звучала легенда и общий посыл журналистской статьи, если бы автор не разобрался в предметной области. Но, давайте на чистоту, мы действительно в опасности. Не так важно, СПО ли это или "кровавый энтерпрайз". Суть одна: в сложном коде наверняка есть ошибки (как в случае Log4j), злоумышленники найдут лазейку (как с тем же Travis CI недавно случилось).

Что такое тайпсквоттинг

На этот раз хочется рассказать об угрозе, которую таят опечатки. Предположим, авторы популярного пакета "django" замечательно справились со своей задачей – выпустили веб-фреймворк без ошибок и уязвимостей. Но при установке этого пакета программист сделал опечатку: написал "djangoo". Авторы оригинального пакета за это не отвечают, а создатели "подменыша" могут иметь отнюдь не добрые намерения.

Так вы получаете какую-то версию "django" (подменыш же попытается прикинуться оригиналом) + какой-нибудь довесок: вирус, бекдор, программу для майнинга и т.д.

Собственно, это и есть "тайпсквоттинг". Берём популярные пакеты, делаем их копии, подмешивая зловред, публикуем под похожими именами. Довольно просто, но обнаружить это и автоматически определять – непростая задача.

Последние новости о тайпсквоттинге

Именно поэтому периодически появляются новости о взломах через PyPI, NPM, Gems и прочих пакетных менеджеров.

В частности на днях было выявлено 26 вредоносных пакетов в PyPI, которые при установке ставили браузерное дополнение в Chrome / Edge / Brave (на платформе Windows). Дополнение это подменяло крипто-кошельки для криптовалют BTC, ETH, BNB, LTC и TRX.

Неделей ранее в том же PyPI было обнаружено 30 пакетов с W4SP-Stealer. Данная программа ищет на файловой системе пароли, крипто-кошельки и прочую "полезную" информацию и отправляет злоумышленнику.

В первой половине года было выявлено ещё 200 пакетов NPM и PyPI с вредоносным кодом, которые также использовали тайпсквоттинг.

Борьба с этим явлением уже ведётся, но, видимо, ещё не достаточно. К примеру, есть проект Package Analysis, который ищет пакеты, "атакованные" тайпсквоттингом.

Остаётся ждать, когда же допишут системы проверки (а может и присоединиться к разработке). И не забывать, что данная атака идёт прежде всего на внимательность пользователя!