Сканирование со вкусом
               Яндекса
 Докладчик: Тарас Иващенко oxdef@yandex-team.ru
Мероприятие: YaC, Москва, 19 сентября 2011 года
План
• Цикл разработки ПО
• Безопасность конфигураций
• Сканирование на уязвимости
• Проблемы и решения
• Happy end?
Особенности и реалии
Цикл разработки ПО
Цикл разработки ПО
Безопасность конфигураций
OWASP Top 10 > Security
Misconfiguration
• /Makefile, /CVS/Entries и т.п.
• Устаревшие версии ПО
• Отладочная информация
• Доступные специнтерфейсы
Безопасность конфигураций
Решение
• Регулярное сканирование всего: nmap + w3af + pykto
• Более тысячи целей
• Автоматическое       оповещение       ответственных
  администраторов
• Доработки вернули в проект w3af
• Profit!!11
Свободное ПО и Яндекс
Сканирование на уязвимости
Текущий подход
• Наши тестировщики "умеют" ещё и безопасность
• Регулярные сканирования перед релизами
• Охват всех сервисов
Сканирование на уязвимости
Текущее решение
• Проприетарное
• Одно из самых мощных
• Слабо поддаётся    интеграции   в      инфраструктуру
  компании
• "Мелочи",  которые     портят   всё:     ЧПУ,   AJAX,
  платформозависимость ;(
• Цена
Сканирование на уязвимости
Сканирование на уязвимости
w3af
• Фреймворк для аудита безопасности веб-приложений
• GNU GPL v2, Python (и "батарейки")
• Возможность расширения: сотни плагинов
• Мы не будем писать проект "с нуля"!
• Международный проект со своим сообществом
Сканирование на уязвимости
Наши доработки
• Полноценный веб-интерфейс
• Пользователи
• ЧПУ
• Удобная аутентификация в сервисах
• Тестируем веб 2.0 приложения
w3af
Веб-интерфейс
• Django
• Многопользовательский режим
• Планирование сканирований
• Интеграция с внутренними сервисами
• Статистика
w3af
Веб-интерфейс
w3af
  ЧПУ
• http://fotki.yandex.ru/top/users/fotograf-17/view/361364/
   • Набор правил:

     /top/users/%s/view/%d/
     /controller/action/%d/
     ...
w3af
Удобная аутентификация в
сервисах
• Существующие подходы ("запись логина")
• Auth-плагины:

  ; @include Pentest_Profile
  [auth.yandex]
  username = test_user
  password = **************
  passport_host = passport.yandex.ru
Веб 1.0 -> 2.0
Классический сканер c веб 2.0 работает плохо!
Веб 2.0
Как сканировать
автоматизированно?
• Встроенный веб-браузер с JavaScript-движком
• Selenium
• Парсинг и подмешивание логов
• ..?
Присоединяйся!
У нас есть печеньки!...
Спасибо за внимание!
Тарас Иващенко oxdef@yandex-team.ru

Сканирование уязвимостей со вкусом Яндекса. Тарас Иващенко, Яндекс