2. в сутки Яндекс находит более 1400 новых заражений сайтов
всего Яндексу известно более 230k заражённых сайтов
за год было 121 случай заражения сайтов, которые знают все
обычные массовые заражения
2
3. (в 99% случаев пользователи не переходят на заражённые сайты, на выдаче – по
10 документов)
2 массовых заражения со взломами, 1 партнёрская система, заражающая
пользователей через свои блоки на «выгодных» для сайтов условиях
3
4. пользователям
не терять деньги (кража, мошенничество), ценные данные, время на
лечение компьютеров, репутацию
интернету
существовать (быть полезным для людей), без DDoS’ов, накрутки, спама
интернет-индустрия сможет получать больше денег, если в интернете
станет безопаснее (онлайн-банкинг, электронные платёжные системы,
веб-магазины)
злоумышленникам
пойти заниматься чем-нибудь полезным
4
5. сайту – чтобы его трафик, пользователи (→ деньги) не доставались другим
не редиректить на другие сайты
не заражать компьютеры пользователей
не показывать чужих ссылок и рекламы
не терять имидж и доверие
заражение – 99% трафика, поисковый спам до – 100% трафика
поисковой системе – чтобы было, чем отвечать на запросы пользователей
заражённые, испорченные, перенаправляющие сайты – это плохой ответ
5
8. контроль ввода данных (WAF) – защита от атак XSS, Injection
контроль операций ( Insecure Direct Object References ) – защита от IDOR, CSRF,
закрытие доступа к админкам, бэкапам, SVN
обновлять CMS и серверное ПО, минимум «кустарных» модулей, отключать
лишнее, следить за новостями об уязвимостях своей CMS
Пример другого серверного ПО – OpenX, phpMyAdmin
сложный пароль от веб-сервера (FTP, SSH, админ-панели хостинга, CMS)
8
9. компьютер вебмастера – тоже защищён от malware
минимум служебных данных (например, версия сервера или CMS)
анти-кликджекинг
Js-проверки
if (top != window) top.location = window.location
top.location = 'http://example.com'
HTTP-Header
X-FRAME-OPTIONS SAMEORIGIN
X-FRAME-OPTIONS DENY
9
10. блоки и реклама
избегать «уникальных предложений» (подозрительно высокая плата за
счётчики и блоки, монетизация мобильного трафика) – вместо денег
отсутствие трафика и потеря позиций в поисковых системах
использовать партнёрские программы со скрытыми блоками – опасно
блоки и реклама – только от проверенных систем
по возможности принимать только статический контент (ссылки,
картинки. Не скрипты и не фреймы)
о новых партнерках – искать отзывы, проверять, что через них приходит
рассказ про траффбиз
дистрибутивы
осторожнее с дистрибутивами CMS из сомнительных источников,
виджетами и чужими библиотеками
случай с DLE
постоянные проблемы с wordpress-темами
10
11. всякие радио-виджеты для ucoz
контроль служебного доступа
рассказ про утечку базы FTP
та же ситуация с различными фрилансерами – периодически приходят
жалобы на заражения после их работы (особенно если их обидели, ну и
утечь может от них)
качественный хостинг
телекомы тоже страдают (см. статью в блоге)
10
12. валидация данных
нет javascript в <script>, тегах, гиперссылках
нет <iframe>, <object>, <embed>, список разрешённых HTML-тегов
11
14. В двух словах:
На зараженном сайте происходит подгрузка/перенаправление на систему
распределения траффика, цель которой
– отфильтровать потенциальных жертв по критериям:
1. Уникальный заход (1 перенаправление на 1 ip, cookie итп).
2. Уязвимые версии операционной системы, браузера и прочего ПО, например
flash, acrobat, JRE.
3. Проверка подгрузки с зараженного сайта с реферером поисковой выдачи.
4. Различные попытки отсева запросов поисковых роботов и антивирусных
систем.
5. Дополнительные критерии, например время суток.
Если все критерии пройдены – перенаправление на связвку эксплоитов для
заданных ОС и ПО.
Задача связки эксплоитов – установить в ОС вредоносное ПО ( бинарный файл ).
Действия вредоносного ПО внутри ОС зараженного компьютера – тема для
отдельной презентации.
13
15. по возможности посмотреть через прокси / попросить товарища посмотреть из
дома
тестовый стенд
Windows XP на виртуальной машине, IE+FF+Chrome+Opera без cookies и
истории посещений
Желательно IE6 и не последние версии Java, Acrobat Reader, Flash
после каждого просмотра страницы – revert к исходному образу
14
21. 0. в коде
<?php
header(“Location: evil.com”);
?>
в настройках веб-сервера или интерпретатора
.htaccess
php_value auto_append_file “tmpevil.txt«
если сайт статический
на соседнем сайте shared-хостинга, а также, вероятнее всего,
утечка реквизитов доступа, либо заражение всего сервера
если серверный редирект, в т.ч. работающий только для мобильных – .htaccess,
в т.ч. конструкции для mod_rewrite
если строки в конце страниц – в шаблонах CMS
20
22. если до или после обычного блока <html> – возможно, в настройках веб-
сервера или интерпретатора
20
27. вообще надо сказать, что хорошо помимо, регистрации стандартных абуз-
адресов, указать их на сайте в разделе контакты и удостовериться, что
администратор регулярно обрабатывает сообщения в них (просто формально
класть в issue tracker недостаточно)
трафик сайта и статистика переходов: Метрика
аномалии
книга жалоб для пользователей
нужно поддерживать форму для отправки жалоб и/или указать email-адреса
администратора
25
31. мы стараемся для вас, и помогаем вам вылечить ваши сайты
мы понимаем, что потеря трафика – это плохо для сайта, но не давать
пользователям заразиться - важнее
Яндекс размечает, только если действительно обнаружил malware, точность – от
99.5% до 99.98% (для разных детекторов разная)
ваш сайт тоже может заразиться самым неожиданным способом, если вы не
нашли malware на сайте – поищите ещё раз
если антивирусы не находят – это тоже не значит, что malware нет
мы не реагируем только по факту обфускации, или если блок находится в
неположенном месте, а детектируем именно вредоносный код
бывает, что нас пытаются обмануть, но это нам очень хорошо видно, не надо
тратить на это время
29