Проблема повреждения NTFS в Windows 10 получила временное решение

2021-01-27 6505 комментарии
Разработчики подготовили неофициальное исправление для ошибки Windows 10, которая может приводить к повреждению томов NTFS при просмотре определенного файла

В середине января мы писали об уязвимости в 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 станет отличной альтернативой.

© . По материалам Bleeping Computer

Комментарии и отзывы

Добавляя комментарий, ознакомьтесь с Правилами сообщества

Нашли ошибку?