UWF (Unified Write Filter — объединенный фильтр записи) – это специальный фильтр записи файловой системы в Windows 10, который позволяет защитить системные файлы Windows и данные на диске от любых изменений. При включенном UWF фильтре любые операции записи на защищаемый диск или в системный реестр перехватываются драйвером UWF фильтра и помещаются в отдельное виртуально пространство (оверлей). После перезагрузки Windows все изменения на защищаемых дисках не сохраняются, т.е. Windows всегда возвращается к исходному состоянию на момент включения фильтра UWF.
Как работает фильтр UWF? Он защищает файловую систему выбранных разделов локальных дисков от изменений, прозрачно перенаправляя все операции записи на файловую систему в виртуальный оверлей в памяти, который хранит все изменения.
Как включить и настроить Unified Write Filter в Windows 10
Фильтр записи UWF представляет собой отдельный компонент Windows и включается через панель управления: Control Panel -> Programs and Features -> Turn Windows Features On or Off -> Device Lockdown -> Unified Write Filter.
Также можно установить компонент UWF с помощью PowerShell:
Enable-WindowsOptionalFeature -Online -FeatureName "Client-UnifiedWriteFilter" –All
Или DISM:
DISM.exe /Online /enable-Feature /FeatureName:client-UnifiedWriteFilter
Для управления настройками UWF используется консольная утилита uwfmgr.exe.
Чтобы включить UWF фильтр в Windows 10, выполните следующую команду и перезагрузите компьютер:
uwfmgr.exe filter enable
При включении фильтра, Windows автоматически перенастраивается так, чтобы исключить лишние операций записи на диск (отключаются файл подкачки, точки восстановления, индексирование файлов, дефрагментация).
Чтобы включить защиту от записи для конкретного диска, выполните команду:
uwfmgr.exe volume protect c:
Теперь нужно перезагрузить компьютер. После его загрузки все, что пользователь запишет на диск за время сессии будет доступно только до момента следующей перезагрузки компьютера. Любые изменения будут сброшены.
Проверить состояние UWF фильтра можно командой:
uwfmgr.exe get-config
В нашем примере видной, что системный диск находится в защищенном состоянии, UWF фильтр включен (Volume state: Protected).
Текущие настройки оверлея, в котором UWF хранит временные данные можно вывести с помощью команды:
uwfmgr overlay get-config
Вы можете настроить следующие параметры:
- Type – тип оверлея. Вы можете хранить данные на диск (DISK) или в оперативной памяти (RAM);
- Maximum size – максимальный размер оверлея;
- Warning Threshold – размер оверлея, при превышении которого нужно вывести предупреждение;
- Critical Threshold – размер оверлея, при превышении которого появится ошибка UWF;
- Freespace Passthrough – используется только для дискового оверлея. Позволяет разрешать писать данные в любое свободное место на диске, а не в выделенный файл.
По умолчанию используется RAM оверлей с размером 1 Гб.
Можно изменить эти настройки (если у вас достаточно свободной RAM):
uwfmgr overlay set-size 8192
uwfmgr overlay set-criticalthreshold 8192
uwfmgr overlay set-warningthreshold 7168
Если нужно использовать оверлей на диске, выполните команду:
uwfmgr overlay set-type Disk
Текущий размер данных в оверлее можно вывести так:
uwfmgr overlay get-consumption
Оставшееся место:
uwfmgr overlay get-availablespace
Обслуживание Windows 10 с включенным фильтром UWF
При выполнении обслуживания системы (установка обновлений, обновление антивирусных сигнатур, копирование новых файлов), нужно перевести компьютер в специальный сервисный режим UWF:
uwfmgr servicing enable
После перезагрузки Windows загрузится под локальной учетной записью UWF-Servicing и автоматически установит доступные обновления Windows (через Windows Update или одобренные обновления WSUS), обновит сигнатуры антивируса. При желании, вы сможете войти на компьютер под учетной записью UWF-Servicing (пароль этого пользователя неизвестен, но можно сменить его).
При автовходе пользователя запускается
uwfservicingshell.exe
и запускает скрипты обслуживания Windows 10. Что-то другое выполнить в сервисном режиме нельзя.
После завершения установки обновлений, компьютер автоматически перезагрузится в нормальном режиме с включенным фильтром UWF.
Вы можете установить обновления Windows и из обычного режима, без перехода в режим Servicing. Воспользуйтесь командой:
uwfmgr servicing update-windows
Unified Write Filter updated Windows result: REBOOT REQUIRED.
Добавление исключений в фильтр записи UWF
Если вам нужно принудительно сохранить на диск некий изменённый файл при включенном фильтре UWF, нужно выполнить команду:
uwfmgr file commit C:\Distr\TestFile.txt
Теперь файл не исчезнет, даже если вы перезагрузите Windows.
Чтобы удалить файл при включенном UWF, используйте команду:
uwfmgr file commit-delete C:\Distr\TestFile.txt
uwfmgr registry commit ...
uwfmgr registry commit-delete ...
Вы можете добавить определенные файлы, каталоги или ветки реестра в исключения фильтра UWF. Любые изменения по таким объектам будут записывать напрямую на диск, а не в оверлей.
Чтобы добавить в исключения конкретный файл или папку, выполните команду:
Uwfmgr.exe file add-exclusion c:\student
Или
Uwfmgr.exe file add-exclusion c:\student\report.docx
Чтобы разрешить запись изменений в ключ реестра:
Uwfmgr.exe registry add-exclusion “HKLM\Software\MyRegKey”
Для применения исключений нужно перезагрузить компьютер.
Чтобы вывести список исключений UWF фильтра, выполните команду:
uwfmgr file get-exclusions
Для удаления файла из исключений, выполните команду:
uwfmgr file remove-exclusion c:\student\report.docx
Некоторые системные каталоги и файлы нельзя добавить в исключения, например:
- Файлы реестра в каталоге \Windows\System32\config\;
- Корень диска;
- Каталоги \Windows, \Windows\System32, \Windows\System32\Drivers;
- Файлы подкачки
- И т.д.
Для корректной работы некоторых служб необходимо добавить в список исключений фильтра записи пути к их каталогам, файлам и веткам реестра. В следующем списке я собрал типовые исключения для некоторых подсистем Windows:
Исключения для BITS:
- % ALLUSERSPROFILE%\Microsoft\Network\Downloader
- HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\BITS\StateIndex
Исключения для корректной работы в беспроводных сетях (данные исключения позволят подключаться к Wi-Fi сетям и сохранять WLAN профили):
- HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\Wireless\GPTWirelessPolicy
- C:\Windows\wlansvc\Policies
- HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\wlansvc
- C:\ProgramData\Microsoft\wlansvc\Profiles\Interfaces\{<Interface GUID>}\{<Profile GUID>}.xml
- HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\Wlansvc
- HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\WwanSvc
Исключения для корректной работы в проводных сетях:
- HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\WiredL2\GP_Policy
- C:\Windows\dot2svc\Policies
- HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\dot3svc
- C:\ProgramData\Microsoft\dot3svc\Profiles\Interfaces\{<Interface GUID>}\{<Profile GUID>}.xml
- HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\dot3svc
Исключения для Windows Defender
- C:\Program Files\Windows Defender
- C:\ProgramData\Microsoft\Windows Defender
- C:\Windows\WindowsUpdate.log
- C:\Windows\Temp\MpCmdRun.log
- HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows Defender
Отключение фильтра UWF, сброс настроек
Вы можете сбросить настройки UWF фильтра к начальным (на момент включения фильтра):
uwfmgr filter reset-settings
Чтобы полностью отключить UWF фильтр (после перезагрузки все изменения на диске будут сохраняться):
uwfmgr.exe filter disable
Либо можно отключить защиту фильтра конкретного раздела:
uwfmgr.exe volume unprotect C:
- Отключить запуск UWF фильтра можно в ветке HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\uwfvol, задав значение параметра start равное 4.
- Затем отключите строку uwfvol в ключе реестра HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Class\{71a27cdd-812a-11d0-bec7-08002be2092f}\Lower Filters
Режим Hibernate Once/Resume Many (HORM) в UWF
Начиная с Windows 10 1709 появился еще один режим работы фильтра UWF – Hibernate Once/Resume Many (HORM). Этот режим позволяет быстро получить состояние Windows с запущенными программами. При каждой загрузке компьютера Windows сразу возвращается к этому состоянию.
Ограничения режима HORM:
- Фильтр UWF должен быть включен для всех локальных дисков;
- Исключения фильтра UWF не поддерживаются
- Оверлей работает в режиме RAM (disk-overlay не поддерживается);
- Режим гибернации и быстрого запуска отключен.
Для включения HORM нужно выполнить команду:
uwfmgr filter enable-horm
Unified Write Filter enabled HORM. Please hibernate the system to use HORM functionality. The system must be hibernated at least once after run enable-horm command, or it may bring the system into corrupted state.
Настройте рабочее окружение пользователя (запустите необходимые приложения, откройте файлы и т.д.). Затем переведите компьютер в режим гибернации командой:
shutdown /h
Разбудите компьютер и перезагрузите его. При следующей перезагрузке Windows 10 сразу запустится в состоянии, хранящемся в файле гибернации.
Для отключения HORM выполните команду:
uwfmgr filter disable-horm
Из интересных сценариев, возможность реализации которых предоставляет фильтр UWF:
- Ускорение работы Windows (на диск ничего не пишется, а все операции записи на диск производятся в оперативной памяти, а-ля RAM диск);
- При запуске Windows на твердотельных накопителях (SSD/CompactFlash) можно уменьшить износ ячеек накопителя за счет уменьшения количества операций записи;
- Проведение различных экспериментов, тестирование стороннего ПО и изучение зловредов (для этих целей также можно использовать режим песочницы Windows).
Довольно полезная фича! А случаем она на Win 10 Pro никак не портируется? Как я помню, была возможность запуска EFW фильтра из Win 7 Embedded в Pro редакции..
Если это как минимум Windows 10 Pro Anniversiary Update, то доступно под названием Объединенный фильтр записи.
Требует пароль при входе в учетную запись UWF-Servicing.
Где его взять?
По идее система не должна спрашивать пароль UWF-Servicing, а просто автоматически логинится под ним.
Какая версия Windows 10 используется? Насколько я помню, в 1607 был какой-то баг UWF, который даже патчился отдельной заплаткой.
Попробуйте обновиться как минимум до 1903
16299.
Переустановил начисто, думал, может какие настройки мешают.
После активации UWF-Servicing на экране входа две учетные записи: User и UWF-Servicing и обе хотят пароль.
Если с первой всё понятно, то со второй… Вопрос.
Хотя, по-моему, это не критично. Проще
uwfmgr.exe filter disable/enable
(Меньше времени на перезагрузку уходит).
Чувак спасибо тебе большое, отличная статья, статья косвенно помогла решить проблему с активированным UWF фильтром, отключили свет выдал синий экран, uwfs.sys error, пришлось вырубать жёстко через реестр.
Пытаюсь включить на 1909:
C:\Windows\system32>uwfmgr.exe filter enable
Ошибка: не удалось включить объединенный фильтр записи (В системе отображения конечных точек не осталось доступных конечных точек.)
Что это значит?
Телеметрию отключали? Служба dmwappushservice запушена? По какой-то причине Unified Write Filter без нее не работает.
Спасибо, разобрался.
Здравствуйте. В чем была проблема?
Если включен UWF фильтр, то антивирус устанавливать не обязательно?
Зависит от того, насколько вам нужно защитить хост Windows 10 с UWF, как часто вы перезагружаете хост (сбрасываете настройки), ваших исключений и насколько вам нужно обеспечить защиту других хостов в сети (если этот компьютер будет взломан, он может быть площадкой для переходна на другие хосты).
В принципе, антвирус можно установить и разово обновить антвирусные базы и включить UWF фильтр. Дальше с какой-т опериодичностьб нужно в любом случае обновлять образ Windows — ставить обновления, обновлять антвирус и после этого включать режим UWF.
Нужно добавить одно строчку в описание, как защитить все диски!
uwfmgr.exe volume protect all (все диски)
Кто-то в курсе, насколько может быть вредно для оперативки использование UWF? Сокращает ли это её ресурс? Использую много лет ежедневно, вот задаюсь вопросом…
Оперативка создана для постоянного ежедневного использования. Её ресурс исчисляется десятками лет.
Может кто знает, как заставить ее в win 10 pro работать?