Внедрение Enhanced Write Filter (EWF) tutorial

Внедрение Enhanced Write Filter (EWF) tutorial

Расширенный фильтр записи (Enhanced Write Filter, EWF) — это дополнительный компонент, использующийся в Windows Embedded.

Автор: Константин Иванищев, ведущий специалист по ИБ Positive Technologies

Расширенный фильтр записи (Enhanced Write Filter, EWF) — это дополнительный компонент, использующийся в Windows Embedded. EWF делает дисковый том доступным только для чтения. При этом операции записи, которые выполняются с данными, хранящимися на этом дисковом томе, перенаправляются в его наложение, которое может находиться на другом диске или в памяти компьютера. Windows рассматривает наложение EWF и его дисковый том как единое устройство. При этом фактически на дисковом томе не происходит изменений. Все изменения сохраняются только в наложении EWF. Изменения можно сохранить на дисковый том в любой момент времени.

Enhanced Write Filter может применяться в различных целях.

  • Enhanced Write Filter позволяет создать загрузочную Flash-карту системы Windows и уменьшить количество циклов записи на карту, тем самым увеличив срок ее службы.
  • При использовании SSD защита от записи с помощью EWF также позволяет увеличить срок службы диска.
  • Также можно использовать EWF для защиты ПК от последствий воздействия вирусов, троянов и прочих опасностей при работе неопытного пользователя в Интернете.

Я использовал EWF в Windows XP, чтобы обеспечить устойчивую работу компьютера.

Основной идеей было получить безопасную ОС для серфинга в Интернете. EWF позволяет уберечь ПК от последствий посещения развлекательно-информационных ресурсов. Не секрет, что в последнее время участились случаи недобросовестной рекламы. Зайдя на ресурс, где размещена реклама, можно подвергнуться различным атакам. Однако, при использовании EWF все изменения, произошедшие на системном диске, после перезагрузки не сохраняются, и система, подвергнувшаяся атаке, снова готова к работе. Вторым приятным моментом является то, что при работе через EWF в ОС не накапливаются изменения, замедляющие ее работу, и через полгода Windows XP работает также шустро, как в день установки ОС.

При этом все необходимые изменяемые файлы (пользовательские документы и пр.) можно хранить на втором диске или разбить имеющийся на два раздела — системный и раздел для хранения файлов.

Установка EWF на Windows XP

1. Для установки EWF на Windows XP необходимо скачать архив EWF.zip.

В нем содержатся следующие файлы:

ewf.sys EWFMGR.EXE ewfntldr ewf.reg

Файл ewf.sys копируем в %systemroot%\system32\drivers EWFMGR.EXE в %systemroot%\system32.

2. Файл ewfntldr необходим для замены ntldr, находящегося в корневом каталоге системного диска. Не забудьте сделать копию оригинального файла, на случай если вы захотите отменить изменения.

3. Нам необходимо добавить информацию в раздел HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\Root\LEGACY_EWF.

Для этого надо дать пользователю, от имени которого вы работаете, доступ на запись в раздел HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\Root.

По умолчанию к этому разделу только System имеет доступ на запись.

4. В реестр добавляется следующая информация:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\Root\LEGACY_EWF]

"NextInstance"=dword:00000001

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\Root\LEGACY_EWF\0000]

"Service"="EWF"

"Legacy"=dword:00000001

"ConfigFlags"=dword:00000020

"Class"="LegacyDriver"

"ClassGUID"="{8ECC055D-047F-11D1-A537-0000F8753ED1}"

"DeviceDesc"="EWF"

"Capabilities"=dword:00000000

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\Root\LEGACY_EWF\0000\Control]

"ActiveService"="EWF"

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ewf]

"ErrorControl"=dword:00000001

"Group"="System Bus Extender"

"Start"=dword:00000000

"Type"=dword:00000001

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{71A27CDD-812A-11D0-BEC7-08002BE2092F}]

"UpperFilters"="Ewf"

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ewf\Parameters\Protected\Volume0] "Type"=dword:00000001

"ArcName"="multi(0)disk(0)rdisk(0)partition(1)"

5. Теперь необходимо максимально очистить системный диск от временных и ненужных файлов.

6. Также можно перенести профиль пользователя на другой диск. В Windows XP для этого необходимо от имени учетной записи администратора перенести все профили, кроме администраторского, и исправить информацию о расположении в HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList\SID\ProfileImagePath\.

7. Затем необходимо создать временного пользователя, дать ему права администратора, зайти в систему от его имени, перенести каталог администратора и заменить значение в реестре.

Плюсом переноса пользовательских профилей является то, что можно сохранять документы в рекомендованном системой месте.

Минусом является то, что подгружаемая информация и кэш браузера будут быстро накапливаться в профилях.

8. Остается только запустить EWF. Для этого используется команда ewfmgr c: -enable.

Cписок команд, с помощью которых можно управлять EWF:

  • ewfmgr c: -enable — включение EWF;
  • ewfmgr c: -commitanddisable — отключение EWF при следующей перезагрузке и сохранение всех изменений на диск при выключении/перезагрузке системы;
  • ewfmgr c: -commitanddisable -live — отключение EWF без перезагрузки системы (при этом информация на диск сохраняется непосредственно после выполнения команды);
  • ewfmgr c: -commit — сохранить все изменения на диск при перезагрузке или выключении ПК.

Последняя команда является очень важной при установке обновлений системы. Невыполнение этой команды ведет к безвозвратной потере всего, что вы сделали за сеанс работы Windows!

Если вы используете EWF только для защиты Flash-карты или SSD-диска от большого количества циклов записи/чтения, эту команду лучше всего поместить в автозагрузку.

Установка EWF на Windows 7

Установка EWF на Windows 7 возможна только в том случае, если вы используете EWF для SSD-диска.

Установка состоит из нижеперечисленных этапов.

1. Добавляем в реестр следующую информацию:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{71A27CDD-812A-11D0-BEC7-08002BE2092F}]

"UpperFilters"="Ewf"

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ewf]

"ErrorControl"=dword:00000001

"Start"=dword:00000000

"Type"=dword:00000001

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\Ewf\Parameters\Protected\Volume0]

"Type"=dword:00000001

"Enabled"=dword:00000001

"CompareBeforeAlloc"=dword:00000000

"DiskSignature"=dword:00000000

"PartitionOffset"=hex(b):00,00,00,00,00,00,00,00

2. Раскладываем файлы.

ewf.sys копируем в %systemroot%\system32\drivers

EWFMGR.EXE в %systemroot%\system32.

3. Теперь запускаем cmd, а в нем — утилиту diskpart.

4. Набираем «select disk nn», где nn — это номер диска (считается с 0).

6.png

Затем «detail disk»:

Нас интересует «Disk ID» (в русифицированной версии «ИД Диска»), запоминаем это значение.

5. Теперь набираем «select partition nn», где nn — номер.

Выводим информацию «detail partition»:

7.png

Нас интересует число, идущее после «Offset in Bytes» (в русифицированной версии «Смещение в байтах»).

6. Открываем в regedit раздел HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\servic es\Ewf\Parameters\Protected\Volume0 и редактируем значения:

DiskSignature — сюда вписываем «Disk ID»;

PartitionOffset — «Offset in Bytes».

7. Остается только включить EWF командой «ewfmgr c: -enable» и перезагрузить компьютер.

Подробно с EWF можно ознакомиться на сайте MSDN.


Ученые доказали: чтение нашего канала продлевает жизнь!

Ладно, не доказали. Но мы работаем над этим

Поучаствуйте в эксперименте — подпишитесь