Обнаружена серьезная уязвимость в антивирусе AVG

Обнаружена серьезная уязвимость в антивирусе AVG

Пользователями обнаружена серьезная ошибка в одном из приложений антивирусного программного обеспечения AVG, которое включено во всю линейку продукции AVG 2011, включая популярный бесплатный антивирус.

По неофициальным данным стало известно о наличии ошибки в приложении AVG LinkScanner, которая может привести к засорению трафика веб-сайтов (флуд), в результате многократных HTTP запросов, а так же ограничению нормальной работы браузера.

Приложение AVG LinkScanner имеет две функции. Первая - Search-Shield, которая отображает рейтинг безопасности для всех результатов поиска, возвращаемых самыми популярными поисковыми службами. И вторая - Surf-Shield, осуществляет проверку веб-страниц в реальном времени на наличие вредоносов, как при переходе по ссылке, так и при введении адреса страницы в адресную строку браузера. Как оказалось, именно при такой проверке возникает проблема.

Дело в том, что при проверке, в самое начало исходного HTML кода страницы добавляется скриптовый элемент, который затем загружает локальный JavaScript файл - avg_ls_dom.js. Таким образом, антивирус подключается между браузером и веб-сайтом, для возможности проверки страницы до того, как будет запущен какой-либо потенциально опасный код.

Загружаемый JavaScript код, как предполагается, создает буфер с контентом загружаемой страницы и перенаправляет его через POST на другой относительный адрес URL - /CC0227228D62/CheckData.

Запрос выглядит следующим образом:
httpRequest.open("POST", "/CC0227228D62/CheckData", false);
httpRequest.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
httpRequest.send(params);

Далее, этот запрос прерывается антивирусом, который проверяет код на наличие вредоносных внедрений, а затем, либо позволяет отобразить страницу, либо выдает ошибку загрузки. Однако, оказалось, что уязвимость, подобно прокси компоненту, пропускает запросы и отправляет их на сервер, откуда была загружена страница, в результате чего генерируются многократные HTTP запросы.

В результате запрос будет выглядеть так: <source_ip> - - [12/Oct/2010:00:06:32 -0400] "POST /CC0227228D62/CheckData HTTP/1.1" 404 5486 "http://<url>" "Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.2.8) Gecko/20100722 YFF35 Firefox/3.6.8" (27)

Причем плотность таких запросов будет зависеть от количества пользователей с антивирусом AVG, пытающихся посетить конкретную страницу. И самое неприятное в этом то, что у пользователя, в это время в браузере будет открываться огромное количество соединений, которые не будут загружаться.

Данная проблема обсуждалась на тематических форумах и блогах, так же как и на франзузком форуме технической поддержки AVG, где компания сообщила о том, что знает о существующей проблеме и работает над ее устранением.

Популярная библиотека Axios оказалась заражена трояном через npm

Популярная JavaScript-библиотека Axios оказалась жертвой атаки на цепочку поставок: злоумышленник скомпрометировал npm-аккаунт одного из ведущих мейнтейнеров и через него опубликовал две вредоносные версии пакета — axios@1.14.1 и axios@0.30.4.

По данным исследователей, обе сборки распространяли скрытый троян для macOS, Windows и Linux. Axios при этом остаётся одной из самых популярных библиотек в экосистеме npm — её скачивают примерно 100 млн раз в неделю.

В заражённые версии Axios добавили всего одну новую зависимость — plain-crypto-js@4.2.1, замаскированную под легитимную библиотеку crypto-js. При этом в исходном коде Axios эта зависимость никак не использовалась: её задачей был запуск postinstall-скрипта, который связывался с управляющим сервером, скачивал вредоносную нагрузку под конкретную ОС и затем зачищал следы своей работы.

Атака развивалась поэтапно. Сначала в npm загрузили «чистую» приманку plain-crypto-js, чтобы создать историю публикаций, а затем — уже заражённую версию. После этого через взломанный аккаунт мейнтейнера были опубликованы две вредоносные версии Axios — сначала для ветки 1.x, а затем для старой, но всё ещё популярной ветки 0.x. То есть атакующий накрыл сразу оба основных сценария использования библиотеки.

Согласно анализу, вредоносный код начинал сетевую активность почти сразу после установки пакета. На macOS троян маскировался под системный процесс Apple, на Windows использовал PowerShell и скрытый скрипт, а на Linux разворачивал Python-бэкдор во временной директории. После этого вредоносный модуль удалял собственные файлы и подменял их «чистой» заглушкой, чтобы при поверхностной проверке установленный пакет не вызывал подозрений.

Вредоносные версии, по имеющимся данным, оставались доступными в npm примерно два-три часа, после чего их удалили, а пакет plain-crypto-js попал под блокировку. При этом заражённые релизы не появились среди тегов GitHub-репозитория Axios, что указывает на публикацию напрямую в npm в обход обычного CI/CD-пайплайна проекта.

RSS: Новости на портале Anti-Malware.ru