Изначальный игнор бага от Microsoft привёл к публикации деталей EoP-дыры

Изначальный игнор бага от Microsoft привёл к публикации деталей EoP-дыры

Изначальный игнор бага от Microsoft привёл к публикации деталей EoP-дыры

Недопонимание между исследователями из Google Project Zero и Microsoft привело к раскрытию подробностей уязвимости в Windows, приводящей к повышению привилегий в системе. Сначала могло показаться, что Project Zero сам нарушил 90-дневный срок, но потом стало понятно, что Microsoft не смогла определиться с планами по выпуску патча.

8 июля представители Google Project Zero направили техногиганту из Редмонда все необходимые сведения в отношении бреши. Прошло чуть больше месяца, а исследователи уже выложили информацию о дыре в общий доступ. Почему так произошло?

Дело в том, что Microsoft не смогла чётко обозначить свои планы по выпуску обновления, которое бы устранило уязвимость в Windows. Именно поэтому специалисты Project Zero не стали больше тянуть с раскрытием технических деталей.

18 июля представители Microsoft заявили, что разработчики не будут готовить патч для бага, поскольку эксплуатация требует обхода AppContainer — песочницы, предназначенной для проверки Windows-программ до их полноценного запуска.

Учитывая необходимость компрометации песочницы, корпорация обозначила, что «это не проблема, и мы не будем устранять баг». Чуть позже Microsoft уже поменяла своё мнение, чуть лучше разобравшись в сути уязвимости.

Как объяснил в отчёте Джеймс Форшоу из Project Zero, исследователи просто приняли в качестве ответа первоначальную позицию Microsoft: мы не будем заморачиваться работой над патчем.

Также Форшоу указал на корень проблемы: правила платформы Windows Filtering Platform (WFP) по умолчанию допускают подключение к TCP-сокетам исполняемых файлов в AppContainers. Эта особенность может позволить атакующим повысить свои права в системе.

В настоящее время разработчики Microsoft готовят к выходу патч для описанной Форшоу бреши.

Проводник Windows падал не из-за Microsoft, виноват оказался деинсталлятор

Инженер Microsoft Рэймонд Чен рассказал любопытную историю отладки загадочных падений Проводника. Сначала всё выглядело так, будто в Windows внезапно появился неприятный баг. Но виновником оказалась вовсе не Microsoft, а сторонний деинсталлятор.

Проблема проявилась как резкий всплеск сбоев Проводника. Инженеры начали изучать дампы и заметили странную деталь: падала 32-битная версия программы, запущенная на 64-битных системах Windows.

Такая версия Проводника всё ещё есть в Windows ради совместимости со старыми приложениями. Обычно современные системы почти не используют этот путь. Но в данном случае сторонний деинсталлятор каким-то образом заставлял систему обращаться именно к этому устаревшему компоненту.

Дальше выяснилось, что деинсталлятор некорректно работал с системными API: использовал неправильное соглашение о вызовах функций и неверно обрабатывал параметры стека. Из-за этого при каждой неудачной операции данные из стека удалялись неправильно.

Поскольку процесс повторялся в цикле, повреждение памяти постепенно накапливалось. В какой-то момент указатель стека уезжал в область активного кода, и Проводник падал.

Со стороны всё выглядело как типичная системная ошибка: софт снова и снова аварийно завершал работу, создавая ощущение, что проблема в самой Windows. На деле операционная система лишь показывала последствия ошибки в стороннем ПО.

Чен напомнил важную вещь: в экосистеме Windows с миллиардами устройств и огромным количеством приложений далеко не каждый сбой компонента Microsoft означает баг в Windows. Сторонние программы тоже могут ломать системные процессы, особенно если неправильно используют низкоуровневые API.

RSS: Новости на портале Anti-Malware.ru