Патч от Meltdown привел к более критичной уязвимости Windows 7x64/2008R2

Патч, закрывающий уязвимость Meltdown привел к более критичной уязвимости систем Windows 7X64 и Windows 2008R2. Уязвимости подвержены системы, обновленные патчами 2018-01 или 2018-02. Уязвимости не подвержены системы, не пропатченные с декабря 2017 года, либо если на них установлен кумулятивный патч 2018-03.

Патч Meltdown от Microsoft открыл еще большую брешь в безопасности в Windows 7/2008, позволяя любому пользовательскому приложению читать содержимое из ядра операционной системы и даже записывать данные в память ядра.

Шведский эксперт по ИТ-безопасности Ульф Фриск обнаружил эту уязвимость, работая над устройством PCILeech, созданном для проведения атак с прямым доступом к памяти (DMA) и дампу защищенной памяти операционной системы.

По словам эксперта, исправление Meltdown от Microsoft (для CVE-2017-5754), случайно перевернуло бит, который контролирует права доступа для памяти ядра.

Бит прав пользователя/ядра был установлен на пользователя в PML4 (карте страниц четвёртого уровня ). Это сделало таблицы страниц доступными для кода режима пользователя в каждом процессе. В штатном режиме таблицы страниц должны быть доступны только самому ядру. В Windows 7 состояние PML4 фиксируется в позиции 0x1ED, смещение 0xF68 (в Windows 10 это значение случайно). Это означает, что PML4 всегда будет отображаться по адресу: 0xFFFFF6FB7DBED000 в виртуальной памяти.

Значение в PML4e 0x0000000062100867 (из приведенного выше примера) указывает, что установлены биты 0, 1, 2, что означает, что он доступен для чтения и записи.

PML4 является базой 4-уровневой иерархии таблиц страниц в памяти, используемой модулем управления памятью процессора (MMU) для преобразования виртуальных адресов процесса в адреса физической памяти в ОЗУ.

Эта проблема затронула только 64-разрядные версии Windows 7 и Windows Server 2008 R2. Microsoft исправила ошибку, переопределив бит разрешения PML4 обратно в исходное значение в патче 2018-3.

Для проверки своей системы можно воспользоваться утилитой pcileech, выгрузив память в файл:

pcileech.exe dump -out memorydump.raw -device totalmeltdown -v -force

Для удобства можно воспользоваться Dokany, — смонтировать запущенные процессы и виртуальную память ядра как файлы и папки. Чтобы смонтировать процессы необходимо выполнить следующую команду:

pcileech.exe mount -device totalmeltdown

UPD:PoC эксплоит для проверки уязвимости.

Нравится11
Комментарии (7)
  • 11
    семерку не обновляю вообще не вижу смысла .а всякие Meltdown и подавно.Так как убеждения Microsoft и Синих.Не работают.
  • 10
    Кажется мне, что это было не случайно, уж слишком много случайных совпадений, подталкивающих пользователя слезать с семёрки.
  • 10
    смысла в обновлении семёрки не вижу. То что работает как часы трогать не стоит.
  • 4
    Blackmeser
    Не только тебе так кажется
  • 5
    Отключил автообновление еще до того как десятку, якобы случайно, всем впарили в обнове
  • 2
    VICH68
    Его и нет, с 2015 года по сей день, поставил только один патч, закрывающий уязвимость в древнем как говно мамонта протоколе SMBv1 (от Wannacry). И то пришлось т.к. комп использую периодически как сервер, обычному пользователю (с дефолтными настройками роутера без всяких хамачей/танглов и других коллективных VPNнов) - это не нужно.
    После отключения обновлений (вручную пришлось удалять патчи с телеметрией), в июне 2015 - пропали фоновые процессы, нагружающие комп, объём системного раздела перестал таять. Всем знакомым тоже поотключал - никаких проблем ни у кого нет.
  • 0
    Ставлю кумулятивные обновления и делу край. Инструмент очистка диска не позволяет засорять системный диск.
    Телеметрия выпилена,на быстродействии пк не как это не сказалось,не в плюс не в минус.
    Правда майки периодический пихают отдельным КВ телеметрию,и еще какую не будь хрень.Что легко отсеивается.
B
i
u
Спойлер