Яндекс.Вебмастерская №3: как найти вирусы и...

30
Яндекс.Вебмастерская, 21/05/15 Григорий Земсков, компания «Ревизиум» «Как найти иголку в стоге сена» или руководство по поиску вредоносного кода на сайте

Upload: revisium

Post on 21-Jul-2015

191 views

Category:

Technology


6 download

TRANSCRIPT

Page 1: Яндекс.Вебмастерская №3: как найти вирусы и вредоносный код на сайте

Яндекс.Вебмастерская, 21/05/15

Григорий Земсков, компания «Ревизиум»

«Как найти иголку в стоге сена»

или руководство по поиску вредоносного кода на сайте

Page 2: Яндекс.Вебмастерская №3: как найти вирусы и вредоносный код на сайте

Какие последствия после взлома сайта?

Что искать?

Где искать?

Как искать?

2

Краткое содержание

Page 3: Яндекс.Вебмастерская №3: как найти вирусы и вредоносный код на сайте

На сайте вирус :(

С чего начать анализ?

Page 4: Яндекс.Вебмастерская №3: как найти вирусы и вредоносный код на сайте

Срабатывают антивирусы

Редирект на внешние ресурсы, попандеры

Сторонние баннеры, «black hat seo» ссылки на страницах

Спам-рассылка

Вредоносная активность на хостинге

Сайт сломался («дефейс», пустая страница, ошибки)

Тысячи спам-страниц в поисковом индексе

Внешне - не проявляется. Взлом без «полезной нагрузки»

4

Негативные последствия взлома

Page 5: Яндекс.Вебмастерская №3: как найти вирусы и вредоносный код на сайте

Что искать?

Page 6: Яндекс.Вебмастерская №3: как найти вирусы и вредоносный код на сайте

Хакерские скрипты (шеллы, бэкдоры, «загрузчики»)

Инжекты в существующих скриптах

Вредоносный код в базе данных

Инжекты в кэширующих сервисах

Инжекты в системных компонентах сервера

6

Виды вредоносного кода

Page 7: Яндекс.Вебмастерская №3: как найти вирусы и вредоносный код на сайте

7

Примеры хакерских скриптов

Page 8: Яндекс.Вебмастерская №3: как найти вирусы и вредоносный код на сайте

8

Примеры хакерских скриптов

Page 9: Яндекс.Вебмастерская №3: как найти вирусы и вредоносный код на сайте

9

Примеры хакерских скриптов

Page 10: Яндекс.Вебмастерская №3: как найти вирусы и вредоносный код на сайте

Статические

БД, шаблоны, вставки в скрипты, в кэш. сервисы

Динамические

Вставки в скрипты, в компоненты сервера, подгрузка с

внешних серверов, виджеты

10

Инжекты

Page 11: Яндекс.Вебмастерская №3: как найти вирусы и вредоносный код на сайте

11

Пример инжекта в .php

Page 12: Яндекс.Вебмастерская №3: как найти вирусы и вредоносный код на сайте

12

Пример инжекта в .js

Page 13: Яндекс.Вебмастерская №3: как найти вирусы и вредоносный код на сайте

13

Примеры инжекта в БД

Page 14: Яндекс.Вебмастерская №3: как найти вирусы и вредоносный код на сайте

Как искать?

Page 15: Яндекс.Вебмастерская №3: как найти вирусы и вредоносный код на сайте

Сканерами и антивирусами

Вручную (опыт и командная строка)

Анализ траффика

Анализ логов

Сторонними сервисами

Integrity Check, VCS, встроенные антивирусы и др.

15

Варианты поиска «вредоносов»

Page 16: Яндекс.Вебмастерская №3: как найти вирусы и вредоносный код на сайте

Сканеры вредоносного кода

Page 17: Яндекс.Вебмастерская №3: как найти вирусы и вредоносный код на сайте

Поиск вредоносных и подозрительных скриптов

Удаление или размещение в карантин указанных файлов

Работает через браузер

Удобный и функциональный интерфейс

Каждое действие контролируется пользователем

http://yandex.ru/promo/manul

17

Манул - антивирус для сайтов

Page 18: Яндекс.Вебмастерская №3: как найти вирусы и вредоносный код на сайте

18

Манул - антивирус для сайтов

Page 19: Яндекс.Вебмастерская №3: как найти вирусы и вредоносный код на сайте

Поиск вредоносного кода в файлах сайта

Обнаружение фишинговых страниц

Определение уязвимостей в скриптах

Поиск дорвеев

Обнаружение хакерских инструментов

В командной строке или браузере (для небольших сайтов)

http://revisium.com/ai/ 19

AI-BOLIT - сканер для сайтов

Page 20: Яндекс.Вебмастерская №3: как найти вирусы и вредоносный код на сайте

20

AI-BOLIT - отчет

Page 21: Яндекс.Вебмастерская №3: как найти вирусы и вредоносный код на сайте

Поиск вредоносного кода на сервере

Требуют установки и навыков работы с командной строкой

ClamAv ищет вирусы в архивах и бинарных файлах

clamav.net

rfxn.com/projects/linux-malware-detect/

21

ClamAv, Maldet - сканеры для сервера

Page 22: Яндекс.Вебмастерская №3: как найти вирусы и вредоносный код на сайте

Не подходят для лечения сайтов

База данных содержит небольшое число сигнатур

хакерских скриптов - пропуски «вредоносов» сайта

Но можно просканировать бэкап сайта

(проверить бинарные файлы)

22

Антивируса для десктопов

Page 23: Яндекс.Вебмастерская №3: как найти вирусы и вредоносный код на сайте

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

Поиск вручную

Page 24: Яндекс.Вебмастерская №3: как найти вирусы и вредоносный код на сайте

Анализ директорий upload/cache/tmp/backup/log

Нестандартные имена файлов (обфусцированные)

Нехарактерные расширения файлов

Нестандартные атрибуты файлов

Много файлов .html/.php в директории

24

Использование «эвристики»

Page 25: Яндекс.Вебмастерская №3: как найти вирусы и вредоносный код на сайте

1. Настраиваем среду тестирования

2. Включаем сниффер траффика или HTTP прокси

3. Загружаем сайт

4. Анализируем сессию

Fiddler

Charles

Wireshark

IE11

25

Анализ траффика

Page 26: Яндекс.Вебмастерская №3: как найти вирусы и вредоносный код на сайте

Поиск вредоносных активностей на хостинге (например,

спам-скриптов) в access_log

Анализ взлома (access_log, error_log, xferlog)

Анализ логов проактивной защиты (атаки)

26

Анализ логов

Page 27: Яндекс.Вебмастерская №3: как найти вирусы и вредоносный код на сайте

Сервис Яндекс.Вебмастер

sitecheck.sucuri.ru

quttera.com

virustotal.com

27

Сторонние сервисы

Page 28: Яндекс.Вебмастерская №3: как найти вирусы и вредоносный код на сайте

Integrity Check (контроль целостности)

Системы контроля версий (git, svn, cvs)

Антивирус CMS

28

Другие варианты поиска вредоносов

Page 29: Яндекс.Вебмастерская №3: как найти вирусы и вредоносный код на сайте

Prevention is Better Than Cure

Page 30: Яндекс.Вебмастерская №3: как найти вирусы и вредоносный код на сайте

Григорий Земсков

Компания «Ревизиум»

Вопросы? Спасибо!

@revisium

Revisium

+7 (499) 506 76 73

[email protected]