340 likes | 484 Views
За кулисами Windows Update или реализация процесса реагирования на инциденты ИБ. Бешков Андрей Руководитель программы информационной безопасности E-mail: abeshkov@microsoft.com Twitter : @ abeshkov. Текущее положение дел.
E N D
За кулисами WindowsUpdateили реализация процесса реагирования на инциденты ИБ Бешков Андрей Руководитель программы информационной безопасности E-mail:abeshkov@microsoft.com Twitter:@abeshkov
Текущее положение дел • Ручная проверка кода и автоматические инструменты такие как фаззинг, статический анализ весьма полезны, но они не могут выявить всех уязвимостей в крупном программном проекте. • Факторы увеличения количества уязвимостей: • Сложность кода • Бесконечность путей которыми креативный разработчик может создать уязвимость • >8 миллионов разработчиков ПО для Windows Исследователи будут продолжать обнаруживать уязвимости несмотря на использование нами лучших практик в разработке
Каждый месяц! Продукты MS уязвимы!!!
Уязвимости за 5 лет ТОП 20 вендоров Источник Secunia 2011 yearly report
Уязвимости Microsoft Office и OpenOffice Миф о безопасности ПО с открытым кодом? http://www.h-online.com/security/news/item/Vulnerabilities-in-Microsoft-Office-and-OpenOffice-compared-1230956.html
Разработка высококачественных обновлений Обслуживание более чем миллиарда систем вокруг света Раздаем 1-1,5 петабайта обновлений ежемесячно
Процесс выпуска обновления • Выпуск • Создание контента • Отношения с исследователем • Выпуск бюллетеня • Публикация контента и ресурсов • Технические руководства для клиентов • Отслеживание проблем клиентов и прессы • Бюллетень • Затронутые компоненты/ПО • Техническое описание • FAQ • Благодарности • Оценка уязвимости • Уведомление об уязвимости • Быстрые ответы • Регулярные обновления • Поддержка скоординированного раскрытия • Доверенность исследователя • Влияние на клиентов • Критичность уязвимости • Вероятность эксплуатации • MSRC получили данные через • Secure@Microsoft.com • Анонимный отчет на вебсайте TechNet Security • Ответ от MSRC • Каждому исследователю ответ в течении 24 часов • Внутренний ответ • Обновление инструментов разработки и методов • Техническая помощь • Тестирование обновления • Расследование • Обновление лучших практик, методов дизайна, инструментов разработки и тестирования • MSRC Engineering • Защитные меры • Пост в блог SVRD • Рассказ партнерам MAPP о способах обнаружения атаки • MSRC Engineering ипродуктовые команды • Тестирование обновления против уязвимости • Тестирование вариаций • MSRC Engineering • Воспроизведение • Поиск вариаций • Исследование окружающего кода и дизайна продукта
Сведения об уязвимостях • MSRC получает более 150.000 сообщений в год по адресу secure@microsoft.comили анонимные сообщения на вебсайте TechNet Security • MSRC расследует: существует ли уязвимость, какие компоненты и продукты затронуты • В течении года получается: • ~1000 подтвержденных проблем • ~100 обновлений суммарно для всех продуктов Microsoft • Стандартный цикл поддержки продукта 10 лет. Это очень долго!
Примеры уведомлений • Не традиционные отчеты • Subject: “yo ~new vuln” • Subject: 你会来参加我的马来西亚朋友的聚会吧? • 2005 – MSRC 5879 – MS05-039 - Zotob • Исследователь прислал proof-of-concept • В формате Tarball • Для запуска требовался CYGWIN • Первоначальный ответ “No repro”
Критерии открытия кейса? • Репутация исследователя (Пример: Yamata Li, ZDI, iDefenseи.т.д) • Не покрывается 10 законами безопасности (потенциал стать уязвимостью) • Не дублирует уже известный публично случай • Не дублирует известный случай “Won’t fix”
Приоритетность? Индекс эксплоитабельности
Данные о текущих атаках? • Данные о количестве атак и заражений были собраны с 600 миллионов компьютеров обслуживаемых средствами безопасности Microsoft такими как: • Malicious Software Removal Tool • Microsoft Security Essentials • Windows Defender • Microsoft Forefront Client Security • Windows Live OneCare • Windows Live OneCare safety scanner • Bing http://www.microsoft.com/security/sir/
График разработки обновлений Временных границы процессов плавают. Некоторые процессы могут идти параллельно.
Минимизация обновлений • Избегаем повторного выпуска обновлений или выпуска нескольких обновлений для одного и того же компонента • “Поиск вариаций” • Помним о цикле поддержки в 10 лет • Учимся на ошибках – MS03-026 (Blaster) • MS03-045 выпускался 4 раза http://www.microsoft.com/technet/security/bulletin/ms03-026.mspx http://www.microsoft.com/technet/security/bulletin/MS03-039.mspx
Одновременный выпуск обновлений для всех продуктов • Часто уязвимость влияет на несколько продуктовили компонентов. Необходим одновременный выпуск во избежание 0-day. • Учимся на ошибках: • MS04-028 (14 сентября 2004) закрыл уязвимость в GDI+ влиявшую на 53 отдельных продукта • Не тривиально с точки зрения инженера • Продукты и компоненты меняются от релиза к релизу • Часто уязвимость нового продукта существует и в старом продукте • Вариации требуют разных исправлений и разного тестирования
Скоординированный выпуск • “Интернет сломан” – уязвимость в дизайне протокола DNS найдена в 2008 • Повлияло на множество производителей ПО. Угадайте о ком кричала пресса? • Microsoft возглавил комитет производителей ПО и помог решить проблему совместными усилиями • Выпущен бюллетень MS08-037
Тестирование на совместимость • Минимизация проблем с совместимостью приложений требует тестирования огромного количества приложений. Матрица тестирования разрастается очень быстро. • Обновления безопасности Windows тестируются на: • Всех версиях подверженных уязвимости ОС • Windows XP, Windows Server 2003, Windows Vista, Windows Server 2008, Windows 7 и Windows Server 2008 R2 • Разных SKUWindows • Home Basic, Home Premium, Business, Ultimate, и.тд. • Разных сервис паках Windows и уровнях (QFEs) • Разных языковых локализациях Windows • Разных процессорных архитектурах • x86, x64 и Itanium • И более того тестируются ~3000 распространенных семейств приложений…
Тестирование на совместимость Группы приложений X версии ОС X SKU
Тестирование на совместимость в вашей среде? • Security Update Validation Program (SUVP) запущена в 2005 году • Перед выпуском обновления даются группе клиентов под соглашение о неразглашении (NDA) • Позволяет протестировать на широком наборе сред и конфигураций • Участники сообщают о найденных проблемах • Данные об исправляемых уязвимостях и способах эксплуатации не раскрываются http://blogs.technet.com/b/msrc/archive/2005/03/15/403612.aspx
Совместимость со зловредами • MS10-015 локальное повышение привилегий в ядре Windows • Обновление внесло изменения в регистры ядра используемые руткитомAlureon для сокрытия себя в системе • Изменения привели к возникновению BSOD на зараженных системах
Минимизация перезапусков системы • Время непрерывной работы критично • Перезапуск выполняется только если нужные файлы заняты самой ОС • Мы ищем пути дальнейшего уменьшения количества рестартов • Один бюллетень часто закрывает несколько уязвимостей из базы (CVE)
Минимизация бюлетеней Соотношение бюллетеней Microsoft и уязвимостей из CVE за период 1П06–1П10 Источник: Microsoft Security Intelligence Report Volume 9
Защита всем миром • Безопасность является проблемой всей ИТ индустрии • Ежегодно обнаруживаются тысячи уязвимостей • Большинство из них в сторонних приложениях и чаще всего критические • MSRC делится информацией собранной в процессе исследования уязвимостей с партнерами и сообществом
Скоординированное раскрытие • Мы считаем что идеальным вариантом раскрытия является приватное уведомление создателя ПО дающее ему достаточно возможностей для выпуска обновления до того как уязвимость станет публично известной. • В идеале выпуск обновления предшествует или совпадает с публичным оглашением уязвимости http://blogs.technet.com/b/ecostrat/archive/2010/07/22/coordinated-vulnerability-disclosure-bringing-balance-to-the-force.aspx
Скоординированное раскрытие График раскрытия уязвимостейв ПО Microsoft период 1П05–1П10 Источник: Microsoft Security Intelligence Report Volume 9
Бюллетени безопасности Microsoft Обновление и бюллетеней выпущено за период 1П05 и 2П10 Источник: Microsoft Security Intelligence Report – www.microsoft.com/sir
Microsoft Active Protection Program (64+ партнеров) Sourcefireсчитает что до введения MAPP требовалось ~8 часов для реверс инжиниринга обновления, поиска уязвимости и разработкиэксплоита.Затем нужно было потратить время на пути детектирования эксплоита. 8 часов достаточно профессиональному атакующему для разработки своего эксплоита после публичного раскрытия уязвимости MAPP дал возможность сократить процесс до 2 часов. Теперь нужно разрабатывать только детектирование эксплоита. В результате защита обновляется раньше на много часов чем появится первый публичный эксплоит.
Microsoft Secure Software Development Conference. http://mssdcon.ru 5.03.2013
Дополнительные ресурсы • Управление уязвимостями в Microsoft • SDL - разработка безопасного ПО • Security Intelligence Report • Microsoft Security Update Guide • Microsoft Security Response Center • Microsoft Malware Protection Center • Trustworthy Computing blogs
Вопросы? • Бешков Андрей • Руководитель программы информационной безопасности • E-mail:abeshkov@microsoft.com • Twitter:@abeshkov