безопасность веб приложений сегодня. дмитрий евтеев....
DESCRIPTION
TRANSCRIPT
![Page 1: безопасность веб приложений сегодня. дмитрий евтеев. зал 4](https://reader035.vdocuments.pub/reader035/viewer/2022062614/5468c3e1af7959c23c8b4f22/html5/thumbnails/1.jpg)
Безопасность веб-приложений сегодня
Дмитрий Евтеев (Позитив Текнолоджиз)
![Page 2: безопасность веб приложений сегодня. дмитрий евтеев. зал 4](https://reader035.vdocuments.pub/reader035/viewer/2022062614/5468c3e1af7959c23c8b4f22/html5/thumbnails/2.jpg)
По данным компании Positive Technologies
– более 80% сайтов содержат критические уязвимости
– вероятность автоматизированного заражения страниц
уязвимого веб-приложения вредоносным кодом
составляет сегодня приблизительно 15-20%
http://ptsecurity.ru/analytics.asp
![Page 3: безопасность веб приложений сегодня. дмитрий евтеев. зал 4](https://reader035.vdocuments.pub/reader035/viewer/2022062614/5468c3e1af7959c23c8b4f22/html5/thumbnails/3.jpg)
Распределение веб-уязвимостей по данным VERACODE
http://info.veracode.com/rs/veracode/images/soss-v3.pdf
![Page 4: безопасность веб приложений сегодня. дмитрий евтеев. зал 4](https://reader035.vdocuments.pub/reader035/viewer/2022062614/5468c3e1af7959c23c8b4f22/html5/thumbnails/4.jpg)
Что такое уязвимость типа «Внедрение операторов SQL»
Web-сервер СУБДhttp://web/?id=6329&print=Y
….SELECT * from news where id = 6329….
![Page 5: безопасность веб приложений сегодня. дмитрий евтеев. зал 4](https://reader035.vdocuments.pub/reader035/viewer/2022062614/5468c3e1af7959c23c8b4f22/html5/thumbnails/5.jpg)
Что такое уязвимость типа «Внедрение операторов SQL»
Web-сервер СУБДhttp://web/?id=6329+union+select+id,pwd,0+from...
….SELECT * from news where id = 6329 union select id,pwd,0 from…….
![Page 6: безопасность веб приложений сегодня. дмитрий евтеев. зал 4](https://reader035.vdocuments.pub/reader035/viewer/2022062614/5468c3e1af7959c23c8b4f22/html5/thumbnails/6.jpg)
Что такое уязвимость типа «Межсайтовое выполнение сценариев»
Web-серверhttp://web/?search=secureweb
…print "<b>secureweb</b>";…
![Page 7: безопасность веб приложений сегодня. дмитрий евтеев. зал 4](https://reader035.vdocuments.pub/reader035/viewer/2022062614/5468c3e1af7959c23c8b4f22/html5/thumbnails/7.jpg)
Что такое уязвимость типа «Межсайтовое выполнение сценариев»
Web-сервер
1. fuzzing, поиск уязвимости
2. Передача «заряженной» ссылки:http://web/?search=secureweb"><script>...</script>
3. Переход по ссылке
4. Выполнение исполняемогокода в браузере пользователя
5. Например, передача Web-сессии (cookies)
6. Работа с Web-приложением от имени атакованного пользователя
![Page 8: безопасность веб приложений сегодня. дмитрий евтеев. зал 4](https://reader035.vdocuments.pub/reader035/viewer/2022062614/5468c3e1af7959c23c8b4f22/html5/thumbnails/8.jpg)
По данным всех авторитетных источников, наиболее распространено использование следующих уязвимостей:
– Внедрение операторов SQL
– Межсайтовое выполнение сценариев
– Выход за каталог веб-сервера (и Local/Remote File Including)
– Подбор
– Выполнение команд на сервере
![Page 9: безопасность веб приложений сегодня. дмитрий евтеев. зал 4](https://reader035.vdocuments.pub/reader035/viewer/2022062614/5468c3e1af7959c23c8b4f22/html5/thumbnails/9.jpg)
Распределение использования веб-уязвимостей по данным подразделения IBM X-Force
http://public.dhe.ibm.com/common/ssi/ecm/en/wgl03007usen/WGL03007USEN.PDF
![Page 10: безопасность веб приложений сегодня. дмитрий евтеев. зал 4](https://reader035.vdocuments.pub/reader035/viewer/2022062614/5468c3e1af7959c23c8b4f22/html5/thumbnails/10.jpg)
Использование уязвимости SQL Injection
http://public.dhe.ibm.com/common/ssi/ecm/en/wgl03007usen/WGL03007USEN.PDF
![Page 11: безопасность веб приложений сегодня. дмитрий евтеев. зал 4](https://reader035.vdocuments.pub/reader035/viewer/2022062614/5468c3e1af7959c23c8b4f22/html5/thumbnails/11.jpg)
Как «рождаются» уязвимости
http://info.veracode.com/rs/veracode/images/soss-v3.pdf
![Page 12: безопасность веб приложений сегодня. дмитрий евтеев. зал 4](https://reader035.vdocuments.pub/reader035/viewer/2022062614/5468c3e1af7959c23c8b4f22/html5/thumbnails/12.jpg)
Как «рождаются» уязвимости (2)
• Более 40% паролей можно взломать из-за простоты• Статистика по паролям низкой стойкости у администраторов:
Данные основываются на анализе более 185 тысяч паролей пользователей (http://www.ptsecurity.ru/download/PT-Metrics-Passwords-2009.pdf).
![Page 13: безопасность веб приложений сегодня. дмитрий евтеев. зал 4](https://reader035.vdocuments.pub/reader035/viewer/2022062614/5468c3e1af7959c23c8b4f22/html5/thumbnails/13.jpg)
Как «рождаются» уязвимости (3)
Распределение уязвимостей согласно классам WASC WSTCv2 (обобщенные результаты по данным Positive Technologies за 2009 год) http://ptsecurity.ru/analytics.asp
![Page 14: безопасность веб приложений сегодня. дмитрий евтеев. зал 4](https://reader035.vdocuments.pub/reader035/viewer/2022062614/5468c3e1af7959c23c8b4f22/html5/thumbnails/14.jpg)
Какие цели преследует злоумышленник взламывая ваш сайт?
– Black SEO
– Распространение вредоносного кода
– Кража и подмена информации
– Проведение атаки типа DoS
– Использование сайта в качестве плацдарма для проведения атак на внутренние ресурсы компании
– Ради шутки
![Page 15: безопасность веб приложений сегодня. дмитрий евтеев. зал 4](https://reader035.vdocuments.pub/reader035/viewer/2022062614/5468c3e1af7959c23c8b4f22/html5/thumbnails/15.jpg)
Пути компрометации данных держателей карт по данным VERIZON
http://www.verizonbusiness.com/resources/reports/rp_data-breach-investigations-report-2011_en_xg.pdf
![Page 16: безопасность веб приложений сегодня. дмитрий евтеев. зал 4](https://reader035.vdocuments.pub/reader035/viewer/2022062614/5468c3e1af7959c23c8b4f22/html5/thumbnails/16.jpg)
Взломы ради шуток…
Статистика дефейсов zone-h.org (http://zone-h.org/stats/ymd)
![Page 17: безопасность веб приложений сегодня. дмитрий евтеев. зал 4](https://reader035.vdocuments.pub/reader035/viewer/2022062614/5468c3e1af7959c23c8b4f22/html5/thumbnails/17.jpg)
Какие методы использует злоумышленник при взломе вашего сайта?
– Уязвимости «нулевого» дня
– Тестирование функций (fuzzing)
– Поиск уязвимостей на основе анализа исходного кода, используемого приложения на вашем сайте (включая его компоненты)
– Взлом вашего сайта путем проведения атаки на другие сайты, расположенные на shared-хостинге
![Page 18: безопасность веб приложений сегодня. дмитрий евтеев. зал 4](https://reader035.vdocuments.pub/reader035/viewer/2022062614/5468c3e1af7959c23c8b4f22/html5/thumbnails/18.jpg)
Подходы по снижению угроз
Директивный подход (Directive)
• Software Development Life Cycle (SDLC), «бумажная безопасность», выстраивание высокоуровневых процессов
Детективный подход (Detective)
• Тестирование функций (black/white-box), фаззинг (fuzzing), статический/динамический/ручной анализ исходного кода
Профилактический подход (Preventive)
• Intrusion Detection/Prevention Systems (IDS/IPS), Web Application Firewall (WAF)
Корректирующий подход (Corrective)
• Ведение журналов событий, обработка инцидентов
Подход к восстановлению (Recovery)
• Резервное копирование, стратегия обеспечения непрерывности бизнес-процессов (BS25999)
![Page 19: безопасность веб приложений сегодня. дмитрий евтеев. зал 4](https://reader035.vdocuments.pub/reader035/viewer/2022062614/5468c3e1af7959c23c8b4f22/html5/thumbnails/19.jpg)
Современный (детективный) подход обнаружения уязвимостей в веб-приложениях
![Page 20: безопасность веб приложений сегодня. дмитрий евтеев. зал 4](https://reader035.vdocuments.pub/reader035/viewer/2022062614/5468c3e1af7959c23c8b4f22/html5/thumbnails/20.jpg)
А может WAF?
![Page 21: безопасность веб приложений сегодня. дмитрий евтеев. зал 4](https://reader035.vdocuments.pub/reader035/viewer/2022062614/5468c3e1af7959c23c8b4f22/html5/thumbnails/21.jpg)
Что такое Web Application Firewall (WAF)
http://server/?id=6329&print=Y
АТАКА
WAF Webserverhttp://server/?id=5351
http://server/?id=8234
http://server/?id="><script>...
http://server/?id=1+union+select...
http://server/?id=/../../../etc/passwd
Нормализация данныхDecode HTML entities (e.g. c, ", ª)Escaped characters (e.g. \t, \001, \xAA, \uAABB)Null byte string termination...
Поиск сигнатуры /(sel)(ect.+fr)(om)/is/(uni)(on.+sel)(ect)/is...
![Page 22: безопасность веб приложений сегодня. дмитрий евтеев. зал 4](https://reader035.vdocuments.pub/reader035/viewer/2022062614/5468c3e1af7959c23c8b4f22/html5/thumbnails/22.jpg)
«Ложка дегтя в бочке меда»
• За универсальность фильтров приходится расплачиваться ошибками первого и второго рода
• Не все фильтры одинаково полезны
• Ряд уязвимостей в веб-приложениях нельзя выявить сигнатурным путем
• Появление уязвимостей 0day!
![Page 23: безопасность веб приложений сегодня. дмитрий евтеев. зал 4](https://reader035.vdocuments.pub/reader035/viewer/2022062614/5468c3e1af7959c23c8b4f22/html5/thumbnails/23.jpg)
Уязвимость уязвимости рознь
Неполный список администраторов такого приложения:
**admin, user**, r**t , …
![Page 24: безопасность веб приложений сегодня. дмитрий евтеев. зал 4](https://reader035.vdocuments.pub/reader035/viewer/2022062614/5468c3e1af7959c23c8b4f22/html5/thumbnails/24.jpg)
Трудности обнаружения наиболее распространенных уязвимостей
• Внедрение операторов SQL
Огромное разнообразие СУБД (гибкость языка SQL)
• Межсайтовое выполнение сценариев
Помимо постоянного развития браузеров – Dom-based XSS
• Выход за каталог («выше»)
Local File Including, PHP wrappers, замена null-byte
Remote File Including, когда требуется «полный» URL
![Page 25: безопасность веб приложений сегодня. дмитрий евтеев. зал 4](https://reader035.vdocuments.pub/reader035/viewer/2022062614/5468c3e1af7959c23c8b4f22/html5/thumbnails/25.jpg)
PHPIDS??!
Мое приложение сможет работать?
REGEXP:(?:%c0%ae\/)|(?:(?:\/|\\)(home|conf|usr|etc|proc|opt|s?bin|local|dev|tmp|kern|[br]oot|sys|system|windows|winnt|program|%[a-z_-]{3,}%)(?:\/|\\))|(?:(?:\/|\\)inetpub|localstart\.asp|boot\.ini)
![Page 26: безопасность веб приложений сегодня. дмитрий евтеев. зал 4](https://reader035.vdocuments.pub/reader035/viewer/2022062614/5468c3e1af7959c23c8b4f22/html5/thumbnails/26.jpg)
ModSecurity??!• Универсальный способ проведения SQL-инъекций с обходом фильтров по
умолчанию
/*!sql-code*/ и /*!12345sql-code*/
• XSS over SQLi
/?id=-1/*!+union+select+'%3Cscri'+'pt%3Eal'+'ert(1)%3C/script%3E',2,3*/
• Выполнение команд на сервере over unserialize(), пример:
O:8:"Database":1:{s:8:"shutdown";a:2:{i:0;s:6:"system";i:1;s:2:"ls";}}cookie[sessid]=Tzo4OiJEYXRhYmFzZSI6MTp7czo4OiJzaHV0ZG93biI7YToyOntpOjA7czo2OiJzeXN0ZW0iO2
k6MTtzOjI6ImxzIjt9fQ0KDQo=
• HTTP Parameter Pollution, HTTP Parameter Fragmentation, замена null-byte, etc
![Page 27: безопасность веб приложений сегодня. дмитрий евтеев. зал 4](https://reader035.vdocuments.pub/reader035/viewer/2022062614/5468c3e1af7959c23c8b4f22/html5/thumbnails/27.jpg)
Защита веб-приложений должна быть комплексной
•Требования к ИБ
•Архитектура
•Разработка (SDLC)
•Внедрение (CIS, etc)
•Поддержка
•Оценка защищенности
•Превентивный контроль
![Page 28: безопасность веб приложений сегодня. дмитрий евтеев. зал 4](https://reader035.vdocuments.pub/reader035/viewer/2022062614/5468c3e1af7959c23c8b4f22/html5/thumbnails/28.jpg)
Эффективное использование WAF (Virtual Patching)
![Page 29: безопасность веб приложений сегодня. дмитрий евтеев. зал 4](https://reader035.vdocuments.pub/reader035/viewer/2022062614/5468c3e1af7959c23c8b4f22/html5/thumbnails/29.jpg)
Эффективное использование WAF (Virtual Patching)
Система контроля защищенности (eq MaxPatrol)
Обнаружение уязвимости, решение по устранению, правила фильтрации для Web Application Firewall
Пример:
<Location /injectblind.asp>
SecRule ARGS:id "!^\d{1,8}$" "deny,log,status:403,msg:'just-in-time patching #1'"
</Location>
WAF (eq ModSecurity), закрытие вектора атаки до момента устранения
![Page 30: безопасность веб приложений сегодня. дмитрий евтеев. зал 4](https://reader035.vdocuments.pub/reader035/viewer/2022062614/5468c3e1af7959c23c8b4f22/html5/thumbnails/30.jpg)
Что нас ждет впереди?
– Перерождение известных уязвимостей (фрагментированные SQL-инъекции, HTML5)
– Развитие комплексных и более сложных атак (одновременное использование уязвимостей кода и среды функционирования)
– Развитие направления уязвимостей типа «Race Condition»
– Массовые атаки на веб-приложения станут повседневной нормой