Яндекс.Вебмастерская, 21/05/15
Григорий Земсков, компания «Ревизиум»
«Как найти иголку в стоге сена»
или руководство по поиску вредоносного кода на сайте
Какие последствия после взлома сайта?
Что искать?
Где искать?
Как искать?
2
Краткое содержание
На сайте вирус :(
С чего начать анализ?
Срабатывают антивирусы
Редирект на внешние ресурсы, попандеры
Сторонние баннеры, «black hat seo» ссылки на страницах
Спам-рассылка
Вредоносная активность на хостинге
Сайт сломался («дефейс», пустая страница, ошибки)
Тысячи спам-страниц в поисковом индексе
Внешне - не проявляется. Взлом без «полезной нагрузки»
4
Негативные последствия взлома
Что искать?
Хакерские скрипты (шеллы, бэкдоры, «загрузчики»)
Инжекты в существующих скриптах
Вредоносный код в базе данных
Инжекты в кэширующих сервисах
Инжекты в системных компонентах сервера
6
Виды вредоносного кода
7
Примеры хакерских скриптов
8
Примеры хакерских скриптов
9
Примеры хакерских скриптов
Статические
БД, шаблоны, вставки в скрипты, в кэш. сервисы
Динамические
Вставки в скрипты, в компоненты сервера, подгрузка с
внешних серверов, виджеты
10
Инжекты
11
Пример инжекта в .php
12
Пример инжекта в .js
13
Примеры инжекта в БД
Как искать?
Сканерами и антивирусами
Вручную (опыт и командная строка)
Анализ траффика
Анализ логов
Сторонними сервисами
Integrity Check, VCS, встроенные антивирусы и др.
15
Варианты поиска «вредоносов»
Сканеры вредоносного кода
Поиск вредоносных и подозрительных скриптов
Удаление или размещение в карантин указанных файлов
Работает через браузер
Удобный и функциональный интерфейс
Каждое действие контролируется пользователем
http://yandex.ru/promo/manul
17
Манул - антивирус для сайтов
18
Манул - антивирус для сайтов
Поиск вредоносного кода в файлах сайта
Обнаружение фишинговых страниц
Определение уязвимостей в скриптах
Поиск дорвеев
Обнаружение хакерских инструментов
В командной строке или браузере (для небольших сайтов)
http://revisium.com/ai/ 19
AI-BOLIT - сканер для сайтов
20
AI-BOLIT - отчет
Поиск вредоносного кода на сервере
Требуют установки и навыков работы с командной строкой
ClamAv ищет вирусы в архивах и бинарных файлах
clamav.net
rfxn.com/projects/linux-malware-detect/
21
ClamAv, Maldet - сканеры для сервера
Не подходят для лечения сайтов
База данных содержит небольшое число сигнатур
хакерских скриптов - пропуски «вредоносов» сайта
Но можно просканировать бэкап сайта
(проверить бинарные файлы)
22
Антивируса для десктопов
find . -name ‘*.ph*’ -mtime -7
find . -name ‘*.ph*' -newermt 2015-01-25 ! -newermt 2015-01-30 -ls
find . -name ‘*.ph*’ -exec grep -l ‘eval(base64’ {} \;
grep -ril 'src="http://stummann.net/jquery-1.6.5.min.js"
type="text/javascript"></script>' *
find / -perm -4000 -o -perm -2000
lsof +r 1 -p `ps axww | grep httpd | grep -v grep | awk ' { if(!str) { str=$1 } else {
str=str","$1}}END{print str}'` | grep vhosts | grep php
23
Поиск вручную
Анализ директорий upload/cache/tmp/backup/log
Нестандартные имена файлов (обфусцированные)
Нехарактерные расширения файлов
Нестандартные атрибуты файлов
Много файлов .html/.php в директории
24
Использование «эвристики»
1. Настраиваем среду тестирования
2. Включаем сниффер траффика или HTTP прокси
3. Загружаем сайт
4. Анализируем сессию
Fiddler
Charles
Wireshark
IE11
25
Анализ траффика
Поиск вредоносных активностей на хостинге (например,
спам-скриптов) в access_log
Анализ взлома (access_log, error_log, xferlog)
Анализ логов проактивной защиты (атаки)
26
Анализ логов
Сервис Яндекс.Вебмастер
sitecheck.sucuri.ru
quttera.com
virustotal.com
27
Сторонние сервисы
Integrity Check (контроль целостности)
Системы контроля версий (git, svn, cvs)
Антивирус CMS
28
Другие варианты поиска вредоносов
Prevention is Better Than Cure
Григорий Земсков
Компания «Ревизиум»
Вопросы? Спасибо!
@revisium
Revisium
+7 (499) 506 76 73
Top Related