В середине января мы писали об уязвимости в Windows 10, которая позволяет пользователям даже с низкими привилегиями помечать тома с файловой системой NTFS как «dirty volume». Это особая метка тома диска, обозначающая, что диск необходимо проверить при подключении или перезагрузке системы. Проблема была обнаружена инженером по компьютерной безопасности, Йонасом Ликкегаардом (Jonas Lykkegaard).
После установки метки «dirty volume», система Windows отображает сообщение о повреждении диска и предлагает пользователю перезагрузить устройство, чтобы запустить утилиту chkdsk и устранить неполадку.
В большинстве случаев после работы chkdsk операционная система снова загружается в обычном режиме. Однако, в ряде случаев, даже после запуска chkdsk, в системе возможны проблемы с запуском.
Впоследствии оказалось, что данная проблема характерна не только для Windows 10, но и для более старых версий Windows, включая даже Windows XP.
При проверке концепции порталу BleepingComputer удалось создать специальный файл, который автоматически приводит к повреждению NTFS сразу после попытки доступа к файлу или чтения его атрибутов Проводником Windows.
Доступно стороннее исправление
Компания OSR, специализирующаяся на разработке программного обеспечения для Windows, выпустила драйвер фильтра с открытым исходным кодом, который предотвращает злоупотребление ошибкой NTFS, пока мы ждем официальный патч от Microsoft.
Драйвер фильтра файловой системы под названием «i30Flt» отслеживает попытки доступа к потокам, начинающимся с «:$ i30:» и блокирует такие запросы еще до того, как они могут вызвать ошибку.
Компания рассказал про данное решение в своем блоге:
OSRDrivers/i30Flt: это простой фильтр, который блокирует попытку доступа к потокам, начинающимся с “:$i30:”. Это позволяет предотвратить ложное предупреждение о повреждении, срабатывающее в некоторых версиях Windows 10.
OSR также удалось воссоздать ситуацию, когда тестовая система не загружается даже после работы chkdsk. Компания сообщила:
Одна из наших систем перестала загружаться после второго запуска chkdsk. Поэтому мы решили предотвратить риск получения неисправной системы, пока не будет выпущено официальное исправление.
Чтобы установить драйвер, загрузите его со страницы проекта на GitHub, откройте командную строку с повышенными привилегиями и перейдите в папку, в которую вы распаковали файлы.
Затем запустите следующие команды:
RUNDLL32.EXE SETUPAPI.DLL,InstallHinfSection DefaultInstall 132 .\i30flt.inf wevtutil im i30flt.man fltmc load i30flt
После установки драйвера перезагрузка Windows не требуется. Теперь все попытки доступа к пути, содержащему “$i30:” будут блокироваться.
Microsoft рассказала, что планирует исправить данную ошибку. После выхода официального патча драйвер можно будет удалить с помощью команды:
RUNDLL32.EXE SETUPAPI.DLL,InstallHinfSection DefaultUninstall 132 .\i30flt.inf
Если ошибка не была устранена, и вы решили удалить драйвер, то ошибку можно будет снова использовать для вывода ложного предупреждения о повреждении диска.
Microsoft пока не разглашает, когда будет доступно исправление. Пока мы дожидаемся официального патча, решение от OSR станет отличной альтернативой.
Последние статьи #Windows
• Microsoft продолжает перенос настроек из Панели управления в приложение «Параметры» в Windows 11
• Microsoft выпустила Recall, функцию Click to Do и умный поиск на основе ИИ для Copilot+ ПК – доступно в KB5055627 для Windows 11, версия 24H2
• Microsoft устраняет баг с перегрузкой процессора при наборе писем в Outlook
• Обновление KB5055632 (Build 26200.5570) для Windows 11, версия 24H2 (Dev)
• Обновление KB5055634 (Build 26120.3941) для Windows 11, версия 24H2 (Beta)
• Обновление KB5055627 (Build 26100.3915) Preview для Windows 11, версия 24H2