четверг, 1 октября 2009 г.

Вредоносный код на сайте gooroo

Возникла на проекте такая проблема:

Последнее время Яндекс спонтанно заносит сайт gooroo.ru в список потенциально опасных и так же спонтанно из этого списка удаляет.
Вредоносного кода на сайте, как ни странно, нет.
Собственно, после 2-3 запросов на перепроверку сайт исчезает из списка потенциально опасных, но через 2-3 недели снова туда попадает :(

В суппорт Яндекса обращался неоднократно, но каждый раз был послан на FAQ, в котором искомой информации нет.
Собственно, от человека из Яндекса хочется получить ответ на вопрос: "Какой конкретно кусок кода не нравится роботу, проверяющему сайт?"



Эта ситуация сильно напрягла меня и я попросил помощи в одном закрытом листе рассылки, где мне посоветовали написать в yandex-open на френд фиде.


Написание туда помогло, через несколько часов мне пришел ответ такого содержания:


Из-за особенностей или проблем с конфигурацией вашего сервера, он
добавляет в GIF файлам HTML содержимое. Например,
http://gooroo.ru/?img=168b7ae17fc952ccc9470a56495443bf.gif&width=100&height=26&nozoom


В этом HTML содержимом присутствует и IFRAME. Такое содержимое
характерно определенному виду инфицирования сайтов.

В вашем случае это ложное срабатывание, так как не смотря на
некорретный формат GIF, он не представляет угрозы.

В результатах поиска сайт в скором времени не будет помечаться как
опасный, но мы рекомендуем исправить эту проблему (HTML дописанный к
GIF), хотя бы потому что она может приводить к некорректному показу
картинок у пользователя.



Вот что показало расследование, проведенное по ответу саппорта:
этот код добавлялся в результате ресемплинга картинок. Поскольку такие картинки отображались только пользователям сайта, а не хранились на сервере, поиск вредоносного кода в каталоге со скриптами и данными не помогал. Равно как и анализ полученного кода страницы в веб-инспекторе и фаер-баге. Открыть же эти картинки в текстовом редакторе никто из команды не догадался (согласитесь, это не банально).

В качестве решения мы просто переписали функцию ресемплинга и теперь все ок.


Теперь я знаком с новым методом диагностики -- просмотром картинок и прочих бинарных файлов в текстовом редакторе... Никогда не думал, что из-за такого сайт могут занести в список вредоносных.