Пользователями обнаружена серьезная ошибка в одном из приложений антивирусного программного обеспечения 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, где компания сообщила о том, что знает о существующей проблеме и работает над ее устранением.