2. Хакеры сфокусировали свое внимание на
веб-сервисах
– 75% всех атак направлено на уровень Web-
приложений (Gartner)
– 60% всех зафиксированных атак в настоящее
время нацелено на эксплуатацию уязвимостей в
Web-приложениях (SANS)
Большинство веб-приложений уязвимы
– 90% сайтов являются уязвимыми (Watchfire)
– 78% уязвимых Web-приложений могут быть
легко атакованы (Symantec)
– 80% организаций в 2010 году столкнутся хотя бы
одним инцидентом, связанным с безопасностью
web-приложений (Gartner)
Согласно последним данным аналитиков IBM 75% атак приходиться на Web-приложения, в то
время как на обеспечение их безопасности тратиться только 10% от общих затрат.
3. Динамика обнаруженных уязвимостей в веб-
приложениях с 1998 года
IBM X-Force 2009 Trend and Risk Report:
http://www.servicemanagementcenter.com/main/pages/IBMRBMS/SMRC/ShowCollateral.aspx?oid=74711
4. Уязвимости веб-приложений
По данным компании Positive Technologies за 2009 год
– 79% сайтов содержат критические уязвимости
– 58% сайтов содержат уязвимости средней степени риска
– вероятность автоматизированного заражения страниц уязвимого
Web-приложения вредоносным кодом при использовании
некоторых уязвимостей достигает 100%
http://ptsecurity.ru/analytics.asp
Данные основываются на проведении 6239 автоматических сканирований, детальном анализе 77
Web-приложений, преимущественно с использованием методики «черного-ящика».
6. Классификация уязвимостей в web-приложениях
Web Application Security Consortium WASC-TCv2 / OWASP Top 10
CWE/SANS Top 25 Most Dangerous Programming Errors 2010
Threat Classification References Mapping Proposal
http://projects.webappsec.org/Threat%20Classification%20References%20Mapping%20Proposal
http://projects.webappsec.org/Threat-Classification
http://www.owasp.org/index.php/Category:OWASP_Top_Ten_Project
http://cwe.mitre.org/top25/archive/2010/2010_cwe_sans_top25.pdf
7. Наиболее часто встречающиеся уязвимости
Межсайтовое выполнение сценариев 27%
Внедрение операторов SQL 49%
Утечка информации 38%
Предсказуемое расположение ресурсов 21%
Уязвимые конфигурации сервера 38%
Подбор 22%
0% 10% 20% 30% 40% 50% 60%
Наиболее часто встречающиеся уязвимости веб-приложений при проведении анализа
методом «черного ящика» (данные за 2009 год, http://ptsecurity.ru/analytics.asp)
8. Массовые заражения интернет-ресурсов
"Лаборатория Касперского" предупреждает о массовом взломе - на 10,000 серверов
были размещены опасные ссылки
ScanSafe сообщают об обнаружении в сети Интернет более 64,000 web-сайтов,
зараженных одним и тем же интернет-червем
Инфицированные сайты Не инфицированные сайты
14%
12%
12%
11%
10%
8%
6%
6%
4%
3% 3%
2%
1%
0% 0%
0%
SQL Injection SSI Injection OS Commanding Path Traversal
Распределение критических уязвимостей по инфицированным сайтам (по данным Positive
Technologies за 2009 год) http://ptsecurity.ru/analytics.asp
9. Подходы по снижению угроз
Директивный подход (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)
10. Способы обнаружения уязвимостей
Тестирование функций
• Метод «черного ящика» (black-box)
• Метод «серого ящика» (gray-box)
• Метод «белого ящика» (white-box)
Фаззинг (fuzzing)
Анализ исходного кода
• Статический анализ
• Динамический анализ
• Ручной анализ
Бинарный анализ приложения (binary analysis)
11. Что такое анализ веб-приложения методикой «черного ящика»?
Уязвимость 1: подбор пароля
Impact: доступ к приложению (с ограниченными привилегиями)
Уязвимость 2: внедрение операторов SQL
Impact: только чтение файлов (включена опция magic quotes)
Уязвимость 3: выход за каталог
Impact: только чтение файлов (потенциально LFI)
Уязвимость 4: предсказуемое значение идентификатора загружаемого файла
Уязвимость 3 + Уязвимость 4 = Impact: выполнение команд на сервере
Web-сервер
Проверка 1
Проверка N
Проверка N
Проверка N
Рабочее место аудитора
Найдена уязвимость
Найдена уязвимость
13. Статистика используемых паролей в России
Более 40% паролей можно взломать из-за простоты
Статистика по паролям низкой стойкости у администраторов:
Данные основываются на анализе более чем 185 тысяч паролей пользователей
(http://www.ptsecurity.ru/download/PT-Metrics-Passwords-2009.pdf).
14. Что такое анализ веб-приложения методикой «белого ящика»?
Уязвимости на первом этапе: внедрение операторов SQL, межсайтовое
выполнение сценариев, различные варианты утечки информации и пр.
Уязвимости на втором этапе: логические уязвимости, предсказуемое
значение идентификатора сессии, подделка HTTP-запросов и пр.
Уязвимости на других этапах: небезопасные конфигурации, уровень
соответствия архитектуры приложения отраслевым стандартам и пр.
Найдены недостатки
Web-сервер
Найдены уязвимости Проверка 1
Проверка N
Проверка N&& анализ
Оценка
Рабочее место аудитора
Найдены уязвимости
15. Уязвимости веб-приложений
90%
79%
80%
70%
60%
55%
50%
40%
35%
30%
20% 18%
10%
10%
3%
0%
Высокая Средняя Низкая
Автоматизированное сканирование Детальный анализ
Распределение узлов по максимальному уровню уязвимости (% сайтов по данным за 2009 год)
http://ptsecurity.ru/analytics.asp
16. Анализ исходного кода web-приложения
Статический анализ
• Минусы
Ошибки первого рода (false negative — «ненайденные уязвимости») при использовании
статического анализа возникают в силу следующих причин:
• при программировании web-приложения используется сложный синтаксис;
• проверки переменных происходят с использованием собственных функций приложения;
• отсутствуют соответствующие сигнатуры.
В силу фундаментальных ограничений сигнатурного поиска возникает множество ошибок
второго рода (false positive — «ложные сообщения об уязвимостях»).
• Плюсы
Простота в реализации.
Наиболее известные разработчики коммерческих продуктов
Armorize Technologies, Fortify, Ounce Labs
17. Анализ исходного кода web-приложения
Динамический анализ
• Минусы
Присущи те же недостатки, что и сканерам безопасности. Например, невозможно
выявить уязвимости «Небезопасное восстановление паролей», «Отсутствие тайм-
аута сессии», «Логические атаки» и пр.
Сложность в реализации.
• Плюсы
Наиболее качественная оценка исходного кода.
Наиболее известные разработчики коммерческих продуктов
Coverity, Valgrind, Fortify PTA
18. Уязвимости веб-приложений
120%
99.70%
100%
90.16%
80.62%
80%
65.35%
60% % Уязвимостей
% Сайтов
40%
23.49%
20%
13.44%
0%
Уязвимости архитектуры Уязвимости реализации Уязвимости развертывания
Распределение уязвимостей согласно классам WASC WSTCv2 (обобщенные результаты по
данным Positive Technologies за 2009 год) http://ptsecurity.ru/analytics.asp
20. Как безопасность Web-приложения может
поставить под угрозу безопасность всей сети?
СЕТЕВОЕ
ОБОРУДОВА
СЕТЕВОЕ
НИЕ ФИЛИАЛ
РАБОЧИЕ
ОБОРУДОВА СТАНЦИИ
НИЕ
WEB-
СЕРВЕР
СЕРВЕРЫ
СЕРВЕРЫ
РАБОЧИЕ
СТАНЦИИ
ГОЛОВНОЙ
ОФИС
21. Как безопасность Web-приложения может
поставить под угрозу безопасность всей сети?
СЕТЕВОЕ
ОБОРУДОВА
СЕТЕВОЕ
НИЕ ФИЛИАЛ
РАБОЧИЕ
ОБОРУДОВА СТАНЦИИ
НИЕ
Сканирование сети
Успешно подобран пароль!
WEB-
СЕРВЕР
– Эксплуатация SQL Injection
СЕРВЕРЫ
– Выполнение команд на
СЕРВЕРЫ
сервере
– Повышение привилегий
ПОДОБРАН
ПАРОЛЬ – Атака на внутренние
ресурсы
РАБОЧИЕ
СТАНЦИИ
ПРОВЕДЕНИЕ
ПРОВЕРОК
ПРОВЕДЕНИЕ MP SERVER
ПРОВЕРОК
ГОЛОВНОЙ
ОФИС
Рабочее
место
аудитора
22. Как безопасность Web-приложения может
поставить под угрозу безопасность всей сети?
СЕТЕВОЕ
ОБОРУДОВА
СЕТЕВОЕ
НИЕ ФИЛИАЛ
РАБОЧИЕ
ОБОРУДОВА СТАНЦИИ
НИЕ Внутренний пентест/аудит по
результатам пентеста Сканирование сети
Внутренний пентест/аудит
по результатам пентеста Успешно подобран пароль!
WEB-
СЕРВЕР
– Эксплуатация SQL Injection
СЕРВЕРЫ
– Выполнение команд на
СЕРВЕРЫ
сервере
– Повышение привилегий
ПОДОБРАН
ПАРОЛЬ – Атака на внутренние
ресурсы
РАБОЧИЕ
СТАНЦИИ
ПРОВЕДЕНИЕ
ПРОВЕРОК
Внутренний пентест
MP SERVER
– Установка сканера
ПРОВЕДЕНИЕ
ПРОВЕРОК MaxPatrol
ГОЛОВНОЙ – Поиск уязвимостей
ОФИС – Эксплуатация уязвимостей
Рабочее
место
аудитора Перемещение в ИС ЦО
– Проведение атаки на
ресурсы ЦО
Получение максимальных
привилегий во всей сети!
23. Концепция безопасного интернет-проекта
Уязвимость не является свойством интернет-проекта!
Безопасность должна быть разумной
Безопасность должна быть комплексной
Безопасность – это непрерывный процесс
24. Концепция безопасного интернет-проекта
• Из чего складывается защищенность веб-ресурса?
Процесс разработки Web-приложения
Жизненный цикл разработки программного обеспечения (SDLC)
Требования к информационной безопасности (архитектура приложения)
Непрерывный мониторинг Состояние промышленной среды
IDS/IPS Поддержка актуального состояния
Web Application Firewall (WAF) ОС/ПО и сопутствующих компонентов
Безопасные конфигурации (CIS, etc)
Обеспечение доступности
Анализ защищенности
Проверка выполнения требований к информационной безопасности
Тестирование функций (fuzzing) и поиск уязвимостей (WASC, OWASP)
25. Positive Technologies
7 лет работы в области информационной безопасности
Основные направления деятельности:
• разработка одного из лучших сетевых сканеров XSpider;
• разработка уникального продукта - системы контроля защищенности и
соответствия стандартам MaxPatrol;
• предоставление консалтинговых и сервисных услуг в области
информационной безопасности;
• развитие специализированного портала Securitylab.
Positive Technologies – лаборатория безопасности
• постоянный мониторинг новых уязвимостей;
• внутренняя система описания уязвимостей;
• одна из наиболее профессиональных команд в Европе;
• MaxPatrol – ежедневные обновления.