SlideShare a Scribd company logo
Сайт Школы
Канал на YouTube
Как защитить свой сайт
Пётр Волков
Школа вебмастеров
Типы атак на сайты
Массовые:
• По большей части автоматизированы
• Постэксплуатация вне контекста сайта
• Подвержены в основном сайты с распространенными инструментами,
либо пренебрежением базовой гигиены
(словарные/стандартные пароли и т.п.)
Целевые:
• Выполняются человеком
• Максимально возможный ущерб в случае успеха атаки
• Подвержены крупные сайты
Схема получения несанкционированного доступа
Поисковые «дорки»
Сканирование ( порты + web )
Загрузка шелла
Укрепление
Эксплуатация
Места естественного обитания вредоносного кода
• Серверные скрипты
• Конфиги веб-сервера
• БД
• Статика
• Исполняемый файл/процесс веб-сервера,
модули веб-сервера, модифицированный sshd
Монетизация
Целевые атаки:
• Похищение клиентской базы
• Похищение коммерчески значимых кода и данных
• Дискредитация конкурентов
Массовые атаки:
• Чёрная поисковая оптимизация
• Заражение посетителей
• DDoS-платформа
• Вымогательство
• Рассылка спама
• Серверные ресурсы (проксирование и т.п.)
Атака на посетителей: drive-by download
Отказ в обслуживании, он же DDoS
DoS/DDoS - Атака с целью вывода сервиса из строя
Основные мотивы: Конкуренция и вымогательство
Атака на приложение
Атака на транспортном уровне
Пример атаки на TCP: syn flood
Атака на канал
Пример: (DNS/NTP/*)-amplification атака
Управление рисками
14
Управление рисками
Расчёт бюджета: сколько ресурсов потратить
на снижение рисков?
Распределение бюджета:
• Снижение вероятности проведения успешной атаки
• Снижение потенциального ущерба от последствий атаки
Управление рисками
Снижение вероятности нежелательного события:
• Обновления безопасности для CMS
и остальных программ на сервере
• Парольная гигиена
• Отсутствие отладочных артефактов на сервере
• Минимизация точек входа (443 порта хватит всем)
• …
Управление рисками
Снижение возможного ущерба от наступления
нежелательного события:
• Хеширование (с солью) паролей пользователей
• Процесс резервного копирования
• Контроль целостности
• Минимизация привилегий
• Система обнаружения вторжений
• Виртуализация/контейнеризация
• …
Доступный инструментарий и
методики для обеспечения
безопасности
18
Чек-листы и методологии
Топ-10 проблем безопасности вебсайтов по версии OWASP:
•A1 Внедрение постороннего кода на серверной стороне
•A2 Ошибки системы аутентификации и управления сессиями
•A3 Внедрение постороннего кода на клиентской стороне (XSS)
•A4 Прямой доступ к критичным объектам
•A5 Ошибки конфигурации
•A6 Открытие критичных данных
•A7 Проблемы авторизации операций
•A8 Межсайтовая подделка запросов (CSRF)
•A9 Использование компонентов с известными уязвимостями
•A10 Открытые редиректы
w3af: сканер веб-уязвимостей с открытым кодом
WebGoat: дырявое веб-приложение для тренировок
Web application firewall
Заплатка для случая, когда на аудит кода ресурсов нет
или код закрыт
Пример: mod_security (плагин для Apache, Nginx, IIS)
Набор регулярок для типичных шаблонов эксплуатации
уязвимостей веб-приложения.
Возвращает HTTP 406 в случае, если запрос попал
под одно из правил.
Использование уязвимых компонентов
https://exploit-db.com/
Использование уязвимых компонентов
Борьба с перебором
Мониторит логи и обновляет правила межсетевого экрана
Защита от DDoS
Наращивание ресурсов – может оказаться
экономически неэффективным
Переезд к «облачному» хостеру – см. первый пункт
Защита от атаки на уровне приложения – поиск аномалий,
бан по ip, региону, капча
Защита от атаки на TCP – syn cookies, бан по ip
Защита от атаки на канал – переезд под защиту
анти-DDoS сервиса
Аудит безопасности
• Whitebox
Аудиторы исследуют исходные тексты веб-приложения и
конфигурацию серверного окружения
• Blackbox
Аудиторы проводят исследование безопасности, не имея
исходных текстов, не зная конфигурации
• BugBounty
Программа поощрения сообщений о найденных уязвимостях
[15:27:03] Warning: No swap partion found in /etc/fstab [FILE-6332]
[15:27:24] Warning: Found one or more vulnerable packages. [PKGS-7392]
[15:27:25] Warning: Found mail_name in SMTP banner, and/or mail_name contains 'Postfix' [MAIL-8818]
[15:27:26] Warning: Root can directly login via SSH [SSH-7412]
…
[15:26:25] Suggestion: Set a password on GRUB bootloader. [BOOT-5122]
[15:27:01] Suggestion: Install a PAM module for password strength testing [AUTH-9262]
[15:27:01] Suggestion: Configure password aging limits to enforce password [AUTH-9286]
[15:27:25] Suggestion: Configure a firewall/packet filter to filter incoming and outgoing traffic [FIRE-4590]
[15:27:27] Suggestion: Enable process accounting [ACCT-9622]
[15:27:27] Suggestion: Enable sysstat to collect accounting (no results) [ACCT-9626]
[15:27:27] Suggestion: Enable auditd to collect audit information [ACCT-9628]
[15:27:30] Suggestion: Harden compilers like restricting access to root user only [HRDN-7222]
…
Lynis
Расширяемая проверка ошибок конфигурации
Дополнительно: Rootkit Hunter, chkrootkit
Проверка целостности средствами ПМ
sudo debsums -as
debsums: changed file /etc/gnome/defaults.list (from desktop-file-utils package
debsums: changed file /etc/default/rcS (from initscripts package)
debsums: changed file /etc/subuid (from login package)
debsums: changed file /etc/subgid (from login package)
debsums: changed file /etc/sudoers (from sudo package)
Проверка целостности средствами ПМ
sudo rpm -Va
.M5....T /usr/X11R6/lib/X11/fonts/misc/fonts.dir
missing /var/spool/at/.lockfile
missing /var/spool/at/spool
S.5....T /usr/lib/rhs/glint/icon.pyc
..5....T c /etc/inittab
..5..... /usr/bin/loadkeys
rpm -Vf /etc/blunder
file /etc/blunder is not owned by any package
Tripwire
Контроль целостности файловой системы
• Шлет отчеты по почте
• Выбор алгоритма хэширования
• Гибкие политики контроля целостности: append и т.д.
Проблемы:
• /tmp
• изменения между проверками
Аналоги: AIDE, TAMU, ATP, Hobgoblin, sXid, L5,
Gog&Magog
Apr 6 06:46:26 asterisk snoopy[12664]: [uid:0 sid:12595 tty:/dev/pts/2 cwd:/home/develop filename:/usr/bin/nano]:
nano /etc/asterisk/extensions.conf
Apr 6 07:56:19 asterisk snoopy[13267]: [uid:0 sid:13166 tty:/dev/pts/3 cwd:/root filename:/sbin/ifconfig]: ifconfig
Apr 6 07:56:26 asterisk snoopy[13268]: [uid:0 sid:13166 tty:/dev/pts/3 cwd:/root filename:/bin/touch]: touch /opt/1.txt
Apr 6 07:57:56 asterisk sudo: felvis : TTY=pts/3 ; PWD=/home/felvis ; USER=root ; COMMAND=/sbin/ifconfig eth0
Apr 6 07:57:56 asterisk snoopy[13277]: [uid:0 sid:13166 tty:/dev/pts/3 cwd:/home/felvis filename:/sbin/ifconfig]:
/sbin/ifconfig eth0
Snoopy Logger
https://github.com/a2o/snoopy
Логирует выполняемые в терминале команды
#Cледить за изменениями в каталоге /servers/i/
auditctl -w /servers/i/ -p wa
#Следить за обращениям к файлам в /etc
auditctl -a exit,always -S open -F path=/etc/
#Cледить за модификациями /etc
auditctl -a exit,always -S open -F path=/etc/ -F perm=aw
#Cледить за модификациями /etc/passwd
auditctl -w /etc/passwd -p wa
vi /etc/audit/audit.rules
#Следить веб-сервером и sshd
-w /usr/local/apache/bin -p rwxa
-w /etc/init.d/httpd -p rwxa
-w /etc/init.d/sshd -p rwxa
#Следить за ssh-сессиями ( 1084 – Pid main sshd )
-a entry,always -F arch=b64 -S fork -S vfork -S clone -F ppid=1084
-a entry,always -F arch=b64 -S execve -F ppid=1084
-a entry,always -F arch=b64 -S connect -S bind -F ppid=1084
auiditd
OSSEC
• Анализ логов
• Контроль целостности
• Мониторинг конфигурации
• Поиск руткитов
• Готовое SIEM решение
https://github.com/ossec/ossec-hids
OSSEC
Устранение последствий
Поменять пароли и ключи к ftp- и ssh-сервисам сайта
Поменять пароли к базе данных сайта (phpmyadmin)
Поменять пароли к панели администратора сайта
Установить обновления CMS и плагинов
Установить обновления / обновления безопасности
ключевых сервисов сайта и ОС
YARA
YARA
import "elf"
rule single_section {
condition: elf.number_of_sections == 1
}
rule elf_64 {
condition: elf.machine == elf.EM_X86_64
}
ClamAV
MalwareName:FileType:Offset:HexSignature
$clamscan mod_probe
mod_probe: Linux.Flooder.Agent FOUND
$ sigtool --md5 test.bin > test.hdb
$ clamscan -d test.hdb test.bin
Формат сигнатур:
…
"scan_date": "2011-11-08 19:44:53",
"permalink": "https://www.virustotal.com/url/d466...1eaf/analysis/1320781493/",
…
"scans": {
"nProtect": {"detected": true, "version": "2010-05-14.01", "result": "Trojan.Generic.3611249", "update":
"20100514"},
"CAT-QuickHeal": {"detected": true, "version": "10.00", "result": "Trojan.VB.acgy", "update": "20100514"},
"McAfee": {"detected": true, "version": "5.400.0.1158", "result": "Generic.dx!rkx", "update": "20100515"},
…
Virustotal Public API
• HTTPS API, ответ в json
• Готовые клиенты на 10 ЯП
• Сканирует файлы, URL, ip
Манул: сканер
Манул: анализатор логов
Манул: лечение сайта
Манул – простой инструмент для поиска и
удаления вредоносного кода на сайтах
https://yandex.ru/promo/manul
Подмена содержимого на стороне пользователя
Подмена содержимого на стороне пользователя
Подмена содержимого на стороне пользователя
Content Security Policy – технология для затруднения эксплуатации XSS,
по факту, на данный момент, помогает справляться и с внедрением
постороннего контента со стороны клиента. (Хотя не должна)
Content-Security-Policy: default-src 'self' 'unsafe-inline' 'unsafe-eval'
https://yastatic.net *.yandex.ru *.yandex.net yandex.st
*.yastatic.net wss://portal-xiva.yandex.net wss://push.yandex.ru;
img-src data: 'self' https://yastatic.net *.yandex.ru *.tns-counter.ru
*.gemius.pl yandex.st *.yandex.net *.yastatic.net;
report-uri https://csp.yandex.net/csp?from=big.ru&showid=22863
Подмена содержимого на стороне пользователя
Используйте Вебмастер,
чтобы:
Вовремя узнавать о
заражении сайта
Посмотреть примеры
кода, которые
актуальны для вердикта
Отправить сайт на
перепроверку, и
связаться с поддержкой
Раздел безопасности Яндекс.Вебмастер
Раздел безопасности Яндекс.Вебмастер
Рекомендации в Яндекс.Вебмастер
http://help.yandex.ru/webmaster/
Сайт Школы
Канал на YouTube

More Related Content

What's hot

CodeFest 2012 - Пентест на стероидах
CodeFest 2012 - Пентест на стероидахCodeFest 2012 - Пентест на стероидах
CodeFest 2012 - Пентест на стероидах
Sergey Belov
 
Целевые атаки: прицелься первым
Целевые атаки: прицелься первымЦелевые атаки: прицелься первым
Целевые атаки: прицелься первым
Positive Hack Days
 
Magic Box, или Как пришлось сломать банкоматы, чтобы их спасти
Magic Box, или Как пришлось сломать банкоматы, чтобы их спастиMagic Box, или Как пришлось сломать банкоматы, чтобы их спасти
Magic Box, или Как пришлось сломать банкоматы, чтобы их спасти
Positive Hack Days
 
ХАРДЕНИНГ (Аринов Ильяс (determination))
ХАРДЕНИНГ (Аринов Ильяс (determination))ХАРДЕНИНГ (Аринов Ильяс (determination))
ХАРДЕНИНГ (Аринов Ильяс (determination))
Kristina Pomozova
 
Безопасность веб-приложений. Так ли опасна виртуальная угроза?
Безопасность веб-приложений.  Так ли опасна виртуальная угроза?Безопасность веб-приложений.  Так ли опасна виртуальная угроза?
Безопасность веб-приложений. Так ли опасна виртуальная угроза?phpdevby
 
Белов наиболее часто уязвимые места в веб приложениях
Белов наиболее часто уязвимые места в веб приложенияхБелов наиболее часто уязвимые места в веб приложениях
Белов наиболее часто уязвимые места в веб приложенияхqasib
 
разработка безопасного кода
разработка безопасного кодаразработка безопасного кода
разработка безопасного кода
Andrey Somsikov
 
Хранение, обработка и отдача статики с использованием \Zend\File. Опыт социал...
Хранение, обработка и отдача статики с использованием \Zend\File. Опыт социал...Хранение, обработка и отдача статики с использованием \Zend\File. Опыт социал...
Хранение, обработка и отдача статики с использованием \Zend\File. Опыт социал...
zfconfua
 
сотни серверов, десятки компонент. автоматизация раскладки и конфигурирования...
сотни серверов, десятки компонент. автоматизация раскладки и конфигурирования...сотни серверов, десятки компонент. автоматизация раскладки и конфигурирования...
сотни серверов, десятки компонент. автоматизация раскладки и конфигурирования...rit2011
 
Operating Systems Hardening
Operating Systems HardeningOperating Systems Hardening
Operating Systems HardeningVasily Sartakov
 
The Atomic bomb for kiddies /exploring NSA exploits/
The Atomic bomb for kiddies /exploring NSA exploits/The Atomic bomb for kiddies /exploring NSA exploits/
The Atomic bomb for kiddies /exploring NSA exploits/
defcon_kz
 
CSRF-уязвимости все еще актуальны: как атакующие обходят CSRF-защиту в вашем ...
CSRF-уязвимости все еще актуальны: как атакующие обходят CSRF-защиту в вашем ...CSRF-уязвимости все еще актуальны: как атакующие обходят CSRF-защиту в вашем ...
CSRF-уязвимости все еще актуальны: как атакующие обходят CSRF-защиту в вашем ...
Mikhail Egorov
 
Seopult мастеркласс 1 - восстановление сайта после взлома
Seopult   мастеркласс 1 - восстановление сайта после взломаSeopult   мастеркласс 1 - восстановление сайта после взлома
Seopult мастеркласс 1 - восстановление сайта после взлома
revisium
 
Встречайте Zend Framework 2.0
Встречайте Zend Framework 2.0Встречайте Zend Framework 2.0
Встречайте Zend Framework 2.0
zfconfua
 
Penetration testing (AS IS)
Penetration testing (AS IS)Penetration testing (AS IS)
Penetration testing (AS IS)Dmitry Evteev
 
Спецификация WSGI (PEP-333)
Спецификация WSGI (PEP-333)Спецификация WSGI (PEP-333)
Спецификация WSGI (PEP-333)
lectureswww lectureswww
 
современная практика статического анализа безопасности кода веб приложений
современная практика статического анализа безопасности кода веб приложенийсовременная практика статического анализа безопасности кода веб приложений
современная практика статического анализа безопасности кода веб приложенийSergey Belov
 

What's hot (20)

CodeFest 2012 - Пентест на стероидах
CodeFest 2012 - Пентест на стероидахCodeFest 2012 - Пентест на стероидах
CodeFest 2012 - Пентест на стероидах
 
Целевые атаки: прицелься первым
Целевые атаки: прицелься первымЦелевые атаки: прицелься первым
Целевые атаки: прицелься первым
 
Magic Box, или Как пришлось сломать банкоматы, чтобы их спасти
Magic Box, или Как пришлось сломать банкоматы, чтобы их спастиMagic Box, или Как пришлось сломать банкоматы, чтобы их спасти
Magic Box, или Как пришлось сломать банкоматы, чтобы их спасти
 
ХАРДЕНИНГ (Аринов Ильяс (determination))
ХАРДЕНИНГ (Аринов Ильяс (determination))ХАРДЕНИНГ (Аринов Ильяс (determination))
ХАРДЕНИНГ (Аринов Ильяс (determination))
 
Drupal Paranoia
Drupal ParanoiaDrupal Paranoia
Drupal Paranoia
 
Drupal Paranoia
Drupal ParanoiaDrupal Paranoia
Drupal Paranoia
 
Безопасность веб-приложений. Так ли опасна виртуальная угроза?
Безопасность веб-приложений.  Так ли опасна виртуальная угроза?Безопасность веб-приложений.  Так ли опасна виртуальная угроза?
Безопасность веб-приложений. Так ли опасна виртуальная угроза?
 
Белов наиболее часто уязвимые места в веб приложениях
Белов наиболее часто уязвимые места в веб приложенияхБелов наиболее часто уязвимые места в веб приложениях
Белов наиболее часто уязвимые места в веб приложениях
 
разработка безопасного кода
разработка безопасного кодаразработка безопасного кода
разработка безопасного кода
 
Хранение, обработка и отдача статики с использованием \Zend\File. Опыт социал...
Хранение, обработка и отдача статики с использованием \Zend\File. Опыт социал...Хранение, обработка и отдача статики с использованием \Zend\File. Опыт социал...
Хранение, обработка и отдача статики с использованием \Zend\File. Опыт социал...
 
сотни серверов, десятки компонент. автоматизация раскладки и конфигурирования...
сотни серверов, десятки компонент. автоматизация раскладки и конфигурирования...сотни серверов, десятки компонент. автоматизация раскладки и конфигурирования...
сотни серверов, десятки компонент. автоматизация раскладки и конфигурирования...
 
Operating Systems Hardening
Operating Systems HardeningOperating Systems Hardening
Operating Systems Hardening
 
The Atomic bomb for kiddies /exploring NSA exploits/
The Atomic bomb for kiddies /exploring NSA exploits/The Atomic bomb for kiddies /exploring NSA exploits/
The Atomic bomb for kiddies /exploring NSA exploits/
 
CSRF-уязвимости все еще актуальны: как атакующие обходят CSRF-защиту в вашем ...
CSRF-уязвимости все еще актуальны: как атакующие обходят CSRF-защиту в вашем ...CSRF-уязвимости все еще актуальны: как атакующие обходят CSRF-защиту в вашем ...
CSRF-уязвимости все еще актуальны: как атакующие обходят CSRF-защиту в вашем ...
 
Seopult мастеркласс 1 - восстановление сайта после взлома
Seopult   мастеркласс 1 - восстановление сайта после взломаSeopult   мастеркласс 1 - восстановление сайта после взлома
Seopult мастеркласс 1 - восстановление сайта после взлома
 
Встречайте Zend Framework 2.0
Встречайте Zend Framework 2.0Встречайте Zend Framework 2.0
Встречайте Zend Framework 2.0
 
Этичный хакинг
Этичный хакингЭтичный хакинг
Этичный хакинг
 
Penetration testing (AS IS)
Penetration testing (AS IS)Penetration testing (AS IS)
Penetration testing (AS IS)
 
Спецификация WSGI (PEP-333)
Спецификация WSGI (PEP-333)Спецификация WSGI (PEP-333)
Спецификация WSGI (PEP-333)
 
современная практика статического анализа безопасности кода веб приложений
современная практика статического анализа безопасности кода веб приложенийсовременная практика статического анализа безопасности кода веб приложений
современная практика статического анализа безопасности кода веб приложений
 

Viewers also liked

Admin Resume
Admin ResumeAdmin Resume
Admin Resume
Emma Dorrepaal
 
MASTER - Vanya Semerdjieva
MASTER - Vanya SemerdjievaMASTER - Vanya Semerdjieva
MASTER - Vanya Semerdjieva
Vanya Semerdjieva
 
Better Together
Better TogetherBetter Together
Better Together
Le Roi Arrivillaga
 
dzifa cv
dzifa cvdzifa cv
PI_JohnnieGriffin_102615
PI_JohnnieGriffin_102615PI_JohnnieGriffin_102615
PI_JohnnieGriffin_102615
Johnnie Griffin
 
Keshu powerpoint presentation
Keshu powerpoint presentationKeshu powerpoint presentation
Keshu powerpoint presentation
kesu1234
 
Hoe werkt energie vergelijken?
Hoe werkt energie vergelijken?Hoe werkt energie vergelijken?
Hoe werkt energie vergelijken?
EasySwitch Klantenservice
 
Seo tips and tricks by omar bin sulaiman
Seo tips and tricks by omar bin sulaimanSeo tips and tricks by omar bin sulaiman
Seo tips and tricks by omar bin sulaiman
Omar Bin Sulaiman
 
Holmes bros winter 2015 lookbook
Holmes bros winter 2015 lookbookHolmes bros winter 2015 lookbook
Holmes bros winter 2015 lookbook
de Cuverville Vanessa
 

Viewers also liked (9)

Admin Resume
Admin ResumeAdmin Resume
Admin Resume
 
MASTER - Vanya Semerdjieva
MASTER - Vanya SemerdjievaMASTER - Vanya Semerdjieva
MASTER - Vanya Semerdjieva
 
Better Together
Better TogetherBetter Together
Better Together
 
dzifa cv
dzifa cvdzifa cv
dzifa cv
 
PI_JohnnieGriffin_102615
PI_JohnnieGriffin_102615PI_JohnnieGriffin_102615
PI_JohnnieGriffin_102615
 
Keshu powerpoint presentation
Keshu powerpoint presentationKeshu powerpoint presentation
Keshu powerpoint presentation
 
Hoe werkt energie vergelijken?
Hoe werkt energie vergelijken?Hoe werkt energie vergelijken?
Hoe werkt energie vergelijken?
 
Seo tips and tricks by omar bin sulaiman
Seo tips and tricks by omar bin sulaimanSeo tips and tricks by omar bin sulaiman
Seo tips and tricks by omar bin sulaiman
 
Holmes bros winter 2015 lookbook
Holmes bros winter 2015 lookbookHolmes bros winter 2015 lookbook
Holmes bros winter 2015 lookbook
 

Similar to 11 лекция, петр волков

Безопасность Joomla: теория и практика
Безопасность Joomla: теория и практикаБезопасность Joomla: теория и практика
Безопасность Joomla: теория и практика
revisium
 
Эволюция атак на веб приложения (Evolution of web applications attacks)
Эволюция атак на веб приложения (Evolution of web applications attacks)Эволюция атак на веб приложения (Evolution of web applications attacks)
Эволюция атак на веб приложения (Evolution of web applications attacks)
c3retc3
 
Application Security - ответы на ежедневные вопросы / Сергей Белов (Mail.Ru G...
Application Security - ответы на ежедневные вопросы / Сергей Белов (Mail.Ru G...Application Security - ответы на ежедневные вопросы / Сергей Белов (Mail.Ru G...
Application Security - ответы на ежедневные вопросы / Сергей Белов (Mail.Ru G...
Ontico
 
Новые возможности развертывания и масштабирования open source приложений в Az...
Новые возможности развертывания и масштабирования open source приложений в Az...Новые возможности развертывания и масштабирования open source приложений в Az...
Новые возможности развертывания и масштабирования open source приложений в Az...
Artur Baranok
 
Безопасность сайта: мифы и реальность — Петр Волков
Безопасность сайта: мифы и реальность — Петр ВолковБезопасность сайта: мифы и реальность — Петр Волков
Безопасность сайта: мифы и реальность — Петр Волков
Yandex
 
Open source technologies in Microsoft cloud - MS SWIT 2014
Open source technologies in Microsoft cloud - MS SWIT 2014Open source technologies in Microsoft cloud - MS SWIT 2014
Open source technologies in Microsoft cloud - MS SWIT 2014
Alexey Bokov
 
Пост-эксплуатация веб-приложений в тестах на проникновение
Пост-эксплуатация веб-приложений в тестах на проникновениеПост-эксплуатация веб-приложений в тестах на проникновение
Пост-эксплуатация веб-приложений в тестах на проникновение
beched
 
Безопасность веб-приложений: starter edition
Безопасность веб-приложений: starter editionБезопасность веб-приложений: starter edition
Безопасность веб-приложений: starter edition
Andrew Petukhov
 
История из жизни. Демонстрация работы реального злоумышленника на примере ата...
История из жизни. Демонстрация работы реального злоумышленника на примере ата...История из жизни. Демонстрация работы реального злоумышленника на примере ата...
История из жизни. Демонстрация работы реального злоумышленника на примере ата...
Dmitry Evteev
 
Pt devteev-risspa
Pt devteev-risspaPt devteev-risspa
Pt devteev-risspayaevents
 
[ONSEC ]XSS vs waf
[ONSEC ]XSS vs waf[ONSEC ]XSS vs waf
[ONSEC ]XSS vs wafd0znp
 
Intel Security Endpoint Protection 2015
Intel Security Endpoint Protection 2015Intel Security Endpoint Protection 2015
Intel Security Endpoint Protection 2015
Vladyslav Radetsky
 
Защита сайта от взлома и вирусов
Защита сайта от взлома и вирусовЗащита сайта от взлома и вирусов
Защита сайта от взлома и вирусов
SkillFactory
 
Основные аспекты управления веб-проектом в Microsoft Azure Websites
Основные аспекты управления веб-проектом в Microsoft Azure WebsitesОсновные аспекты управления веб-проектом в Microsoft Azure Websites
Основные аспекты управления веб-проектом в Microsoft Azure Websites
Artur Baranok
 
07 - Web-технологии. Web-сервера
07 - Web-технологии. Web-сервера07 - Web-технологии. Web-сервера
07 - Web-технологии. Web-сервера
Roman Brovko
 
Rsnx tsvetkov che btrix conf 2015
Rsnx tsvetkov che btrix conf 2015Rsnx tsvetkov che btrix conf 2015
Rsnx tsvetkov che btrix conf 2015
Yulia Karpova
 
Взломать Web-сайт на ASP.NET? Сложно, но можно!
Взломать Web-сайт на ASP.NET? Сложно, но можно!Взломать Web-сайт на ASP.NET? Сложно, но можно!
Взломать Web-сайт на ASP.NET? Сложно, но можно!
Vladimir Kochetkov
 
Методы выполнения требования 6.6 PCI DSS – практический выбор
Методы выполнения требования 6.6 PCI DSS – практический выборМетоды выполнения требования 6.6 PCI DSS – практический выбор
Методы выполнения требования 6.6 PCI DSS – практический выбор
Denis Bezkorovayny
 
Владимир Кочетков "OWASP TOP 10 для.NET"
Владимир Кочетков  "OWASP TOP 10 для.NET"Владимир Кочетков  "OWASP TOP 10 для.NET"
Владимир Кочетков "OWASP TOP 10 для.NET"
MskDotNet Community
 

Similar to 11 лекция, петр волков (20)

Drupal Paranoia
Drupal ParanoiaDrupal Paranoia
Drupal Paranoia
 
Безопасность Joomla: теория и практика
Безопасность Joomla: теория и практикаБезопасность Joomla: теория и практика
Безопасность Joomla: теория и практика
 
Эволюция атак на веб приложения (Evolution of web applications attacks)
Эволюция атак на веб приложения (Evolution of web applications attacks)Эволюция атак на веб приложения (Evolution of web applications attacks)
Эволюция атак на веб приложения (Evolution of web applications attacks)
 
Application Security - ответы на ежедневные вопросы / Сергей Белов (Mail.Ru G...
Application Security - ответы на ежедневные вопросы / Сергей Белов (Mail.Ru G...Application Security - ответы на ежедневные вопросы / Сергей Белов (Mail.Ru G...
Application Security - ответы на ежедневные вопросы / Сергей Белов (Mail.Ru G...
 
Новые возможности развертывания и масштабирования open source приложений в Az...
Новые возможности развертывания и масштабирования open source приложений в Az...Новые возможности развертывания и масштабирования open source приложений в Az...
Новые возможности развертывания и масштабирования open source приложений в Az...
 
Безопасность сайта: мифы и реальность — Петр Волков
Безопасность сайта: мифы и реальность — Петр ВолковБезопасность сайта: мифы и реальность — Петр Волков
Безопасность сайта: мифы и реальность — Петр Волков
 
Open source technologies in Microsoft cloud - MS SWIT 2014
Open source technologies in Microsoft cloud - MS SWIT 2014Open source technologies in Microsoft cloud - MS SWIT 2014
Open source technologies in Microsoft cloud - MS SWIT 2014
 
Пост-эксплуатация веб-приложений в тестах на проникновение
Пост-эксплуатация веб-приложений в тестах на проникновениеПост-эксплуатация веб-приложений в тестах на проникновение
Пост-эксплуатация веб-приложений в тестах на проникновение
 
Безопасность веб-приложений: starter edition
Безопасность веб-приложений: starter editionБезопасность веб-приложений: starter edition
Безопасность веб-приложений: starter edition
 
История из жизни. Демонстрация работы реального злоумышленника на примере ата...
История из жизни. Демонстрация работы реального злоумышленника на примере ата...История из жизни. Демонстрация работы реального злоумышленника на примере ата...
История из жизни. Демонстрация работы реального злоумышленника на примере ата...
 
Pt devteev-risspa
Pt devteev-risspaPt devteev-risspa
Pt devteev-risspa
 
[ONSEC ]XSS vs waf
[ONSEC ]XSS vs waf[ONSEC ]XSS vs waf
[ONSEC ]XSS vs waf
 
Intel Security Endpoint Protection 2015
Intel Security Endpoint Protection 2015Intel Security Endpoint Protection 2015
Intel Security Endpoint Protection 2015
 
Защита сайта от взлома и вирусов
Защита сайта от взлома и вирусовЗащита сайта от взлома и вирусов
Защита сайта от взлома и вирусов
 
Основные аспекты управления веб-проектом в Microsoft Azure Websites
Основные аспекты управления веб-проектом в Microsoft Azure WebsitesОсновные аспекты управления веб-проектом в Microsoft Azure Websites
Основные аспекты управления веб-проектом в Microsoft Azure Websites
 
07 - Web-технологии. Web-сервера
07 - Web-технологии. Web-сервера07 - Web-технологии. Web-сервера
07 - Web-технологии. Web-сервера
 
Rsnx tsvetkov che btrix conf 2015
Rsnx tsvetkov che btrix conf 2015Rsnx tsvetkov che btrix conf 2015
Rsnx tsvetkov che btrix conf 2015
 
Взломать Web-сайт на ASP.NET? Сложно, но можно!
Взломать Web-сайт на ASP.NET? Сложно, но можно!Взломать Web-сайт на ASP.NET? Сложно, но можно!
Взломать Web-сайт на ASP.NET? Сложно, но можно!
 
Методы выполнения требования 6.6 PCI DSS – практический выбор
Методы выполнения требования 6.6 PCI DSS – практический выборМетоды выполнения требования 6.6 PCI DSS – практический выбор
Методы выполнения требования 6.6 PCI DSS – практический выбор
 
Владимир Кочетков "OWASP TOP 10 для.NET"
Владимир Кочетков  "OWASP TOP 10 для.NET"Владимир Кочетков  "OWASP TOP 10 для.NET"
Владимир Кочетков "OWASP TOP 10 для.NET"
 

11 лекция, петр волков

  • 2. Как защитить свой сайт Пётр Волков Школа вебмастеров
  • 3. Типы атак на сайты Массовые: • По большей части автоматизированы • Постэксплуатация вне контекста сайта • Подвержены в основном сайты с распространенными инструментами, либо пренебрежением базовой гигиены (словарные/стандартные пароли и т.п.) Целевые: • Выполняются человеком • Максимально возможный ущерб в случае успеха атаки • Подвержены крупные сайты
  • 4. Схема получения несанкционированного доступа Поисковые «дорки» Сканирование ( порты + web ) Загрузка шелла Укрепление Эксплуатация
  • 5.
  • 6.
  • 7.
  • 8.
  • 9. Места естественного обитания вредоносного кода • Серверные скрипты • Конфиги веб-сервера • БД • Статика • Исполняемый файл/процесс веб-сервера, модули веб-сервера, модифицированный sshd
  • 10. Монетизация Целевые атаки: • Похищение клиентской базы • Похищение коммерчески значимых кода и данных • Дискредитация конкурентов Массовые атаки: • Чёрная поисковая оптимизация • Заражение посетителей • DDoS-платформа • Вымогательство • Рассылка спама • Серверные ресурсы (проксирование и т.п.)
  • 12. Отказ в обслуживании, он же DDoS DoS/DDoS - Атака с целью вывода сервиса из строя Основные мотивы: Конкуренция и вымогательство Атака на приложение Атака на транспортном уровне Пример атаки на TCP: syn flood Атака на канал Пример: (DNS/NTP/*)-amplification атака
  • 14. Управление рисками Расчёт бюджета: сколько ресурсов потратить на снижение рисков? Распределение бюджета: • Снижение вероятности проведения успешной атаки • Снижение потенциального ущерба от последствий атаки
  • 15. Управление рисками Снижение вероятности нежелательного события: • Обновления безопасности для CMS и остальных программ на сервере • Парольная гигиена • Отсутствие отладочных артефактов на сервере • Минимизация точек входа (443 порта хватит всем) • …
  • 16. Управление рисками Снижение возможного ущерба от наступления нежелательного события: • Хеширование (с солью) паролей пользователей • Процесс резервного копирования • Контроль целостности • Минимизация привилегий • Система обнаружения вторжений • Виртуализация/контейнеризация • …
  • 17. Доступный инструментарий и методики для обеспечения безопасности 18
  • 18. Чек-листы и методологии Топ-10 проблем безопасности вебсайтов по версии OWASP: •A1 Внедрение постороннего кода на серверной стороне •A2 Ошибки системы аутентификации и управления сессиями •A3 Внедрение постороннего кода на клиентской стороне (XSS) •A4 Прямой доступ к критичным объектам •A5 Ошибки конфигурации •A6 Открытие критичных данных •A7 Проблемы авторизации операций •A8 Межсайтовая подделка запросов (CSRF) •A9 Использование компонентов с известными уязвимостями •A10 Открытые редиректы
  • 19. w3af: сканер веб-уязвимостей с открытым кодом
  • 21. Web application firewall Заплатка для случая, когда на аудит кода ресурсов нет или код закрыт Пример: mod_security (плагин для Apache, Nginx, IIS) Набор регулярок для типичных шаблонов эксплуатации уязвимостей веб-приложения. Возвращает HTTP 406 в случае, если запрос попал под одно из правил.
  • 24. Борьба с перебором Мониторит логи и обновляет правила межсетевого экрана
  • 25. Защита от DDoS Наращивание ресурсов – может оказаться экономически неэффективным Переезд к «облачному» хостеру – см. первый пункт Защита от атаки на уровне приложения – поиск аномалий, бан по ip, региону, капча Защита от атаки на TCP – syn cookies, бан по ip Защита от атаки на канал – переезд под защиту анти-DDoS сервиса
  • 26. Аудит безопасности • Whitebox Аудиторы исследуют исходные тексты веб-приложения и конфигурацию серверного окружения • Blackbox Аудиторы проводят исследование безопасности, не имея исходных текстов, не зная конфигурации • BugBounty Программа поощрения сообщений о найденных уязвимостях
  • 27. [15:27:03] Warning: No swap partion found in /etc/fstab [FILE-6332] [15:27:24] Warning: Found one or more vulnerable packages. [PKGS-7392] [15:27:25] Warning: Found mail_name in SMTP banner, and/or mail_name contains 'Postfix' [MAIL-8818] [15:27:26] Warning: Root can directly login via SSH [SSH-7412] … [15:26:25] Suggestion: Set a password on GRUB bootloader. [BOOT-5122] [15:27:01] Suggestion: Install a PAM module for password strength testing [AUTH-9262] [15:27:01] Suggestion: Configure password aging limits to enforce password [AUTH-9286] [15:27:25] Suggestion: Configure a firewall/packet filter to filter incoming and outgoing traffic [FIRE-4590] [15:27:27] Suggestion: Enable process accounting [ACCT-9622] [15:27:27] Suggestion: Enable sysstat to collect accounting (no results) [ACCT-9626] [15:27:27] Suggestion: Enable auditd to collect audit information [ACCT-9628] [15:27:30] Suggestion: Harden compilers like restricting access to root user only [HRDN-7222] … Lynis Расширяемая проверка ошибок конфигурации Дополнительно: Rootkit Hunter, chkrootkit
  • 28. Проверка целостности средствами ПМ sudo debsums -as debsums: changed file /etc/gnome/defaults.list (from desktop-file-utils package debsums: changed file /etc/default/rcS (from initscripts package) debsums: changed file /etc/subuid (from login package) debsums: changed file /etc/subgid (from login package) debsums: changed file /etc/sudoers (from sudo package)
  • 29. Проверка целостности средствами ПМ sudo rpm -Va .M5....T /usr/X11R6/lib/X11/fonts/misc/fonts.dir missing /var/spool/at/.lockfile missing /var/spool/at/spool S.5....T /usr/lib/rhs/glint/icon.pyc ..5....T c /etc/inittab ..5..... /usr/bin/loadkeys rpm -Vf /etc/blunder file /etc/blunder is not owned by any package
  • 30. Tripwire Контроль целостности файловой системы • Шлет отчеты по почте • Выбор алгоритма хэширования • Гибкие политики контроля целостности: append и т.д. Проблемы: • /tmp • изменения между проверками Аналоги: AIDE, TAMU, ATP, Hobgoblin, sXid, L5, Gog&Magog
  • 31. Apr 6 06:46:26 asterisk snoopy[12664]: [uid:0 sid:12595 tty:/dev/pts/2 cwd:/home/develop filename:/usr/bin/nano]: nano /etc/asterisk/extensions.conf Apr 6 07:56:19 asterisk snoopy[13267]: [uid:0 sid:13166 tty:/dev/pts/3 cwd:/root filename:/sbin/ifconfig]: ifconfig Apr 6 07:56:26 asterisk snoopy[13268]: [uid:0 sid:13166 tty:/dev/pts/3 cwd:/root filename:/bin/touch]: touch /opt/1.txt Apr 6 07:57:56 asterisk sudo: felvis : TTY=pts/3 ; PWD=/home/felvis ; USER=root ; COMMAND=/sbin/ifconfig eth0 Apr 6 07:57:56 asterisk snoopy[13277]: [uid:0 sid:13166 tty:/dev/pts/3 cwd:/home/felvis filename:/sbin/ifconfig]: /sbin/ifconfig eth0 Snoopy Logger https://github.com/a2o/snoopy Логирует выполняемые в терминале команды
  • 32. #Cледить за изменениями в каталоге /servers/i/ auditctl -w /servers/i/ -p wa #Следить за обращениям к файлам в /etc auditctl -a exit,always -S open -F path=/etc/ #Cледить за модификациями /etc auditctl -a exit,always -S open -F path=/etc/ -F perm=aw #Cледить за модификациями /etc/passwd auditctl -w /etc/passwd -p wa vi /etc/audit/audit.rules #Следить веб-сервером и sshd -w /usr/local/apache/bin -p rwxa -w /etc/init.d/httpd -p rwxa -w /etc/init.d/sshd -p rwxa #Следить за ssh-сессиями ( 1084 – Pid main sshd ) -a entry,always -F arch=b64 -S fork -S vfork -S clone -F ppid=1084 -a entry,always -F arch=b64 -S execve -F ppid=1084 -a entry,always -F arch=b64 -S connect -S bind -F ppid=1084 auiditd
  • 33. OSSEC • Анализ логов • Контроль целостности • Мониторинг конфигурации • Поиск руткитов • Готовое SIEM решение https://github.com/ossec/ossec-hids
  • 34. OSSEC
  • 35. Устранение последствий Поменять пароли и ключи к ftp- и ssh-сервисам сайта Поменять пароли к базе данных сайта (phpmyadmin) Поменять пароли к панели администратора сайта Установить обновления CMS и плагинов Установить обновления / обновления безопасности ключевых сервисов сайта и ОС
  • 36. YARA
  • 37. YARA import "elf" rule single_section { condition: elf.number_of_sections == 1 } rule elf_64 { condition: elf.machine == elf.EM_X86_64 }
  • 38. ClamAV MalwareName:FileType:Offset:HexSignature $clamscan mod_probe mod_probe: Linux.Flooder.Agent FOUND $ sigtool --md5 test.bin > test.hdb $ clamscan -d test.hdb test.bin Формат сигнатур:
  • 39. … "scan_date": "2011-11-08 19:44:53", "permalink": "https://www.virustotal.com/url/d466...1eaf/analysis/1320781493/", … "scans": { "nProtect": {"detected": true, "version": "2010-05-14.01", "result": "Trojan.Generic.3611249", "update": "20100514"}, "CAT-QuickHeal": {"detected": true, "version": "10.00", "result": "Trojan.VB.acgy", "update": "20100514"}, "McAfee": {"detected": true, "version": "5.400.0.1158", "result": "Generic.dx!rkx", "update": "20100515"}, … Virustotal Public API • HTTPS API, ответ в json • Готовые клиенты на 10 ЯП • Сканирует файлы, URL, ip
  • 43. Манул – простой инструмент для поиска и удаления вредоносного кода на сайтах https://yandex.ru/promo/manul
  • 44. Подмена содержимого на стороне пользователя
  • 45. Подмена содержимого на стороне пользователя
  • 46. Подмена содержимого на стороне пользователя Content Security Policy – технология для затруднения эксплуатации XSS, по факту, на данный момент, помогает справляться и с внедрением постороннего контента со стороны клиента. (Хотя не должна) Content-Security-Policy: default-src 'self' 'unsafe-inline' 'unsafe-eval' https://yastatic.net *.yandex.ru *.yandex.net yandex.st *.yastatic.net wss://portal-xiva.yandex.net wss://push.yandex.ru; img-src data: 'self' https://yastatic.net *.yandex.ru *.tns-counter.ru *.gemius.pl yandex.st *.yandex.net *.yastatic.net; report-uri https://csp.yandex.net/csp?from=big.ru&showid=22863
  • 47. Подмена содержимого на стороне пользователя
  • 48. Используйте Вебмастер, чтобы: Вовремя узнавать о заражении сайта Посмотреть примеры кода, которые актуальны для вердикта Отправить сайт на перепроверку, и связаться с поддержкой Раздел безопасности Яндекс.Вебмастер