Эксперты Google рассказали, как нарушить работу браузера Microsoft Edge

Эксперты Google рассказали, как нарушить работу браузера Microsoft Edge

Эксперты Google рассказали, как нарушить работу браузера Microsoft Edge

В феврале этого года Google Project Zero опубликовал сообщение о наличии бага в Microsoft Edge. Корпорация Microsoft не смогла устранить эту брешь, что побудило эксперта Google Ивана Фратрика опубликовать технические подробности этой уязвимости.

Специалист сообщает, что проблема кроется во взаимодействии JavaScript-движка Chakra, используемого Edge, с защитным механизмом Arbitrary Code Guard (ACG). ACG предназначен для предотвращения динамического модифицирования кода.

«Когда ACG получает доступ к процессу Microsoft Edge, выделение новой памяти внутри процесса, а также изменение текущей памяти, становится невозможным. Это своего рода защитная функция, направленная на предотвращение выполнения произвольного кода злоумышленником, который уже получил некоторые привилегии», — объяснил эксперт.

В опубликованном специалистом документе более подробно описывается схема атаки, она завязана на том, как JIT-компиляция работает с ACG.

Таким образом, если JavaScript-движок Chakra встречает функцию, которая требует JIT-компиляции, он передает байт-код на JIT-сервер, который «компилирует его и записывает полученный исполняемый код обратно в процесс, используя общую память».

Другой метод атаки использует Guard Flow Guard (CFG), предназначенный для защиты от уязвимостей повреждения памяти. Здесь, как отмечает эксперт, вектор заключается в том, чтобы перезаписать обратный адрес, так как он незащищен, это поможет обойти систему защиты.

Эксперт описывает следующий алгоритм действий:

  • Атакующий получает адрес распределения JIT и прогнозирует следующий адрес;
  • Злоумышленник анмапит соответствующий раздел JIT — UnmapViewOfFile();
  • Затем вызывает VirtualAlloc()для восстановления памяти, но на этот раз с разрешениями PAGE_READWRITE;
  • Атакующий записывает свою полезную нагрузку во вновь распределенную локацию;
  • Атакующий ждет, пока сервер JIT области памяти исполняемой;
  • Теперь злоумышленник может просто передать поток управления в код, записанный на 4-ом шаге.

Устранение этой бреши не требует каких-то специфических решений, достаточно просто удалить вызов VirtualAllocEx().

Специалист опубликовал proof-of-concept код здесь.

AM LiveПодписывайтесь на канал "AM Live" в Telegram, чтобы первыми узнавать о главных событиях и предстоящих мероприятиях по информационной безопасности.

Microsoft решает проблему апгрейда Windows в обход блокировок Intune

Корпоративные компьютеры неожиданно стали предлагать апгрейд до Windows 11 вопреки запрету, выставленному в Intune. Сбой сервиса Microsoft объяснила «скрытой проблемой кода» (latent code issue) и уже работает над фиксом.

Непрошеная подсказка преследует сотрудников компаний с субботы, 12 апреля. Примечательно, что сообщение об апгрейде отображается не на всех Windows-устройствах в сетях с контролем через Intune.

Упущенный баг, по словам Microsoft, проявился после недавних изменений на сервисе. Исправления уже подготовлены, тестируются и вскоре будут развернуты.

Тем, кто по ошибке получил Windows 11, придется вручную выполнить откат ОС до корректной версии. Админам советуют пока поставить на паузу функциональные обновления Windows, используя политики Intune.

Преждевременный апгрейд Windows в организации способен сломать рабочие процессы: критически важное программное обеспечение может отказать из-за проблем с совместимостью, а сотрудникам придется заняться освоением новой ОС.

Последнее время Microsoft и без того доставляет много хлопот ИТ-командам и сисадминам. Выпускаемые ею обновления Windows все чаще оказываются проблемными, после установки их приходится откатывать, ликвидируя последствия, а потом заменять.

AM LiveПодписывайтесь на канал "AM Live" в Telegram, чтобы первыми узнавать о главных событиях и предстоящих мероприятиях по информационной безопасности.

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