Blokada zapisu w Windows

Bardzo łatwo uszkodzić Windows do tego stopnia, że stanie się bezużyteczny - szczególnie, gdy obce oprogramowanie dokona zmian w rejestrze. Zapobiegnij temu, wyposażając swój system w blokadę zapisu, którą włączysz na czas wypróbowywania niepewnych aplikacji.

Niekiedy nachodzi użytkownika ochota, aby wypróbować nowe rozwiązania i zainstalować w tym celu oprogramowanie pobrane z internetu. Tymczasem większość z nich ingeruje głęboko w struktury systemu operacyjnego i dokonuje w nim wielu zmian. A gdy zechcesz później przywrócić poprzedni stan, nie wystarczy samo odinstalowanie aplikacji. Wiele narzędzi wstawia do rejestru tuziny nowych wpisów i tworzy swoje foldery w różnych lokalizacjach dysku twardego. Elementy te w większości wypadków nie są objęte działaniem procedur deinstalacyjnych. Wprawdzie można skorzystać z wewnętrznego mechanizmu przywracania systemu, jednak upływa dużo czasu, zanim moduł ten upora się z powierzonym mu zadaniem.

Wyposaż swój Windows w blokadę zapisu

Alternatywę wspomnianego rozwiązania zapewnia sterownik EWF (Enhanced Write Filter). Ma za zadanie przekierowywać wszystkie próby zapisu na lokalnym dysku twardym do oddzielnego pliku, który odrzuca podczas zamykania systemu operacyjnego. Inaczej mówiąc, wszystkie zmiany, których dowolna aplikacja dokonuje w rejestrze lub w systemie plików, znikają wraz z ponownym uruchomieniem Windows. Możesz w każdej chwili zrezygnować z tego zabezpieczenia, aby jak zazwyczaj korzystać ze swojego systemu. Czynność ta nie jest pracochłonna.

Jednak sterownik EWF nie wchodzi domyślnie w skład systemu Windows. Ponadto nie jest udostępniany przez Microsoft do pobrania. Znajduje się za to w Windows Embedded – specjalnej odmianie środowiska Windows stosowanej m.in. w kasach i innych urządzeniach, które nie wymagają dysku twardego.

W poniższym warsztacie opisujemy sposób instalowania sterownika EWF w Windows 7. Zauważ, że do zainstalowania tego elementu jest potrzebna odmiana sterownika z tego samego systemu w wersji Embedded. Opisywaną sztuczkę można wykonać także w systemach Windows XP i Viście. Pamiętaj jednak, że opisane poniżej operacje wymagają sporego doświadczenia. Kierujemy je tylko do zaawansowanych użytkowników. Wszystkie czynności wykonujesz na własną odpowiedzialność!

Uwaga! W ramach testów przeprowadzonych przed zamknięciem numeru nie udało nam się uzyskać porównywalnego efektu w Windows 8. Nasze próby spowodowały wręcz uszkodzenie tego systemu. Dlatego stanowczo odradzamy użytkownikom Windows 8 wykonywania poniższych czynności. W oddzielnej ramce przedstawiamy różnice pomiędzy Windows 8 i jego poprzednikami.

Jednak także użytkownicy Windows XP, Visty i 7 powinni koniecznie zachować ostrożność. Zanim przejdą do czynów, niech utworzą na wszelki wypadek punkt przywracania, aby w razie potrzeby mogli odtworzyć pierwotny stan swojego systemu. W Windows 7 przywołaj w tym celu menu Start, kliknij prawym przyciskiem myszy pozycję Komputer i wskaż polecenie Właściwości. Teraz kliknij polecenie Ochrona systemu w lewej części okna i potwierdź ostrzeżenie modułu Kontrola konta użytkownika. W następnym oknie kliknij przycisk Utwórz i zaczekaj, aż system sporządzi punkt przywracania.

Sterownik EWF – problemy w Windows 8

W Windows 8 producent zastąpił sterownik EWF sterownikiem UWF (Unified Write Filter). Scala sterownik EWF z dwoma innymi sterownikami filtrującymi – z plikową blokadą zapisu FBWF (File Based Write Filter) i filtrem rejestru Windows. Oprócz tego nowy sterownik UWF został udoskonalony, uproszczony i wyposażony w przystawkę konfiguracyjną, którą przywołuje się z poziomu konsoli zarządzania komputerem (MMC). Można go zdobyć, pobierając demonstracyjną wersję Windows 8 Embedded udostępnianą bezpłatnie przez Microsoft.

Niemniej jednak stanowczo odradzamy stosowania wspomnianego sterownika w zwykłej odmianie Windows (nie Embedded). Wszelkie próby, które podejmowaliśmy w redakcji, zakończyły się fiaskiem. System operacyjny odmawiał ponownego rozruchu, zgłaszając, że w komputerze wystąpił problem i konieczne jest ponowne uruchomienie. Po restarcie powracał za każdym razem do tego samego stanu. Jako przyczynę system podawał błąd INACCESSIBLE_BOOT_DEVICE. Opisany problem można było rozwiązać tylko przy pomocy modułu Przywracanie systemu.

Jak zdobyć Windows Embedded

Poniżej demonstrujemy wymagane czynności na przykładzie Windows 7. Użytkownicy Visty i Windows XP zdobędą potrzebne pliki w analogiczny sposób. Najpierw należy pobrać bezpłatną wersję testową systemu Windows Embedded ze strony producenta. Znajdziesz ją pod adresem www.microsoft.com/windowsembedded/en-us/downloads.aspx.

Przewiń zawartość okna w górę, aż ujrzysz sekcję Windows Embedded Standard 7 (lub inną – zależnie od swojej wersji Windows). Kliknij okrągłą ikonę z plusem, która widnieje przed nazwą sekcji, po czym łącze prowadzące do ewaluacyjnej wersji systemu. Na następnej stronie trzeba zalogować się w usłudze Microsoftu za pomocą swojego identyfikatora Live-ID. W ten sposób dostaniesz się do formularza. Musisz w nim wypełnić tylko zaznaczone pola, a więc podać imię, nazwisko i adres. Zignoruj pytania dotyczące zastosowania systemu Windows Embedded. Potwierdź, klikając pole Continue. Usługa wyświetli klucz produktu. Nie zamierzasz jednak instalować wersji demonstracyjnej systemu, lecz potrzebujesz tylko sterownik. Dlatego nie przyda ci się klucz produktu. Kliknij link prowadzący do strony pobierania.

Na ekranie pojawi się długa lista plików do pobrania. Jeżeli używasz 32-bitowej wersji Windows 7, pobierz wszystkie osiem archiwów – od Standard_7SP1_Toolkit\Standard 7 SP1 Toolkit.part01.exe po Standard_7SP1_Toolkit\Standard 7 SP1 Toolkit.part08.rar. W wypadku 64-bitowej wersji Windows 7 należy pobrać zamiast tego siedem archiwów od Standard_7SP1_64bit\Standard 7 SP1 64bit IBW.part1.exe po Standard_7SP1_64bit\Standard 7 SP1 64bit IBW.part7.rar. Gdy pobieranie dobiegnie końca, kliknij dwukrotnie plik EXE. W ten sposób rozpakujesz archiwum, a na dysku znajdzie się pokaźnych rozmiarów plik ISO, który mieści obraz instalacyjny systemu Windows Embedded. Następnie musisz wyodrębnić z niego wymagane pliki i zapisać je na dysku twardym.

Wprawdzie możesz nagrać obraz ISO na pusty nośnik DVD lub podłączyć go do systemu plików jako wirtualny napęd DVD za pomocą programu Virtual CloneDrive, jednak najwygodniej dopniesz swego bezpłatnym narzędziem kompresującym 7-Zip. Wczytaj w nim plik ISO. Jeśli masz obraz 32-bitowej wersji Windows Embedded, przeskocz do katalogu \DS\Packages\FeaturePack\x86~winemb-enhanced-write-filter~~~~6.1.7601.17514~1.0. W 64-bitowej edycji systemu nazwa folderu zaczyna się od znaków am64~. Znajdziesz w nim plik winemb-enhanced-write-•filter.cab. Wyodrębnij go i rozpakuj za pomocą Eksploratora Windows lub narzędzia 7-Zip. W pliku tym znajduje się podfolder z sześcioma plikami. Skopiuj sterownik EWF, a więc plik ewf.sys, do katalogu C:\Windows\System32\drivers, zaś menedżer EWF w pliku ewfmgr.exe do katalogu C:\Windows\System32. Tylko te pliki są ci potrzebne z zasobów instalacyjnych Windows Embedded. Teraz możesz usunąć pobrane archiwa i obraz ISO.

Windows nie do zdarcia

Przedstawiona w tym artykule blokada zapisu na partycji Windows to jedno z wielu rozwiązań mających na celu zabezpieczenie systemu przed niepożądanymi zmianami. Należą do nich tryb kioskowy, przywracanie systemu wewnętrznymi narzędziami, zapasowa kopia całej partycji w pliku obrazu, wirtualny komputer i aplikacje do usuwania problemów. Metody te opisaliśmy w materiale „Windows odporny na awarie” (PC World 11/2013). Wprawdzie efekt tych sposobów jest podobny, bo wszystkie mają za zadanie uniemożliwiać uszkodzenie systemu operacyjnego, lecz zastosowanie sterownika EWF wychodzi z odwrotnego założenia. Podczas gdy narzędzia z poprzedniego materiału przywracają idealny stan systemu tuż po jego uruchomieniu, odrzucając wszelkie modyfikacje, tu z góry uniemożliwiamy wprowadzania zmian. Podczas gdy opisywane we wspomnianym artykule rozwiązania są przeznaczone do stałego stosowania lub tylko w awaryjnych sytuacjach (gdy dojdzie do uszkodzenia systemu), tego należy używać prewencyjnie, a więc stojąc w obliczu jakiegoś zagrożenia. Jego zdecydowaną zaletą jest łatwość obsługi, możliwość szybkiego włączania blokady zapisu, a także opcja obejmowania zasięgiem innych partycji dysku lokalnego. Do wad należy duży nakład pracy, który trzeba włożyć, aby wyposażyć swój Windows w sterownik EWF i skonfigurować go we właściwy sposób. Wymaga to ponadto sporego doświadczenia w obsłudze Windows. Nie bez znaczenia jest także fakt, że metoda nie działa w Windows 8 – prowadzi wręcz do nieodwracalnego uszkodzenia systemu.

Wybór nośnika

W następnym etapie trzeba wybrać dysk twardy, w którym ma obowiązywać blokada zapisu. Zakładając, że chcesz chronić Windows przed niepożądanymi skutkami instalowania niepewnych aplikacji, wybór pada – rzecz jasna – na partycję systemową. W większości systemów jest oznaczona literą C:. Musisz ustalić identyfikator nośnika, który system przydzielił danej partycji. Pomoże ci w tym program DiskPart, który wchodzi w skład wewnętrznych narzędzi Windows. Przywołuje się je z poziomu okna konsoli tekstowej.

Trzeba je uruchomić z uprawnieniami administratora. Kliknij więc menu Start, a w nim polecenia Wszystkie programy | Akcesoria. Następnie kliknij Wiersz poleceń prawym przyciskiem myszy i wskaż polecenie Uruchom jako administrator. Potwierdź ostrzeżenie Kontroli konta użytkownika. Na ekranie pojawi się okno konsoli tekstowej Windows. Wprowadź polecenie DiskPart. Napis DiskPart> w wierszu zachęty sygnalizuje, że wpisywane od tej pory polecenia dotyczą narzędzia o tej nazwie. Wpisz list disk, aby uzyskać spis zainstalowanych dysków twardych wraz z ich numerami. Znajdź dysk zawierający partycję, którą chcesz zabezpieczyć przed zapisem za pomocą sterownika EMF. Wybierz ją poleceniem select disk x, zastępując zmienną x numerem dysku. Na koniec wprowadź polecenie detail disk. Teraz DiskPart wyświetli szczegółowe informacje na temat dysku. W drugim wierszu widnieje identyfikator nośnika. Zanotuj go.

Następnie poszukaj kodu partycji, na której ma obowiązywać blokada zapisu. Poleceniem list partition przywołasz listę partycji, które są dostępne na wybranym uprzednio dysku. Wprowadź select partition x, aby wybrać żądaną partycję (x oznacza jej numer). Za pomocą polecenia detail partition uzyskasz szczegółowe dane partycji. Zanotuj liczbę podaną w wierszu Przesunięcie w bajtach. Gdy wykonasz powyższe czynności, możesz zakończyć działanie programu DiskPart poleceniem exit i zamknąć okno konsoli tekstowej.

Konieczne zmiany w rejestrze Windows

Oba zanotowane kody należy wpisać w rejestrze Windows, aby ustawić zakres działania sterownika EWF. Utwórz plik tekstowy z zawartością podaną na ilustracji. Zapisując go, nadaj mu koniecznie rozszerzenie REG. Alternatywnie możesz skorzystać z gotowego pliku Ewf.REG (patrz ramka). Następnie kliknij dwukrotnie tenże plik, a jego zawartość zostanie wprowadzona do rejestru. W ten sposób wykluczysz ewentualne błędy, które możesz popełnić podczas ręcznego edytowania rejestru. Po przywołaniu pliku pojawią się na ekranie dwa ostrzeżenia, które należy potwierdzić przyciskiem Tak. System wyświetli komunikat informujący o wprowadzeniu zmian w rejestrze. Teraz musisz jeszcze wprowadzić zanotowane uprzednio kody. Wprawdzie możesz to zrobić bezpośrednio w tworzonym lub pobranym pliku REG przed jego wczytaniem do rejestru Windows, jednak zmiany wygodniej wykonać w Edytorze rejestru aniżeli w zwyczajnym edytorze tekstowym, a kolejność wykonania tych czynności nie wpływa na funkcjonowanie sterownika.

Plik Ewf.REG

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Dfrg\BootOptimizeFunction]

"Enable"="N"

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\OptimalLayout]

"EnableAutoLayout"=dword:00000000

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem]

"NtfsDisableLastAccessUpdate"=dword:00000001

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory

Management\PrefetchParameters]

"EnablePrefetcher"=dword:00000000

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager]

BootExecute=""

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

"NextInstance"=dword:00000001

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

"Service"="EWF"

"Legacy"=dword:00000001

"ConfigFlags"=dword:00000020

"Class"="LegacyDriver"

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

"Capabilities"=dword:00000000

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\Root\LEGACY_EWF000\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\Services\ewf\Enum]

"0"="Root\\LEGACY_EWF\000"

"Count"=dword:00000001

"NextInstance"=dword:00000001

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

"UpperFilters"="Ewf"

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ewf\Parameters]

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ewf\Parameters\Protected]

;ustawianie partycji, na której ma obowiązywać blokada zapisu

;w wierszu ArcName trzeba podać nazwę nośnika, pod jaką partycja jest wyszczególniona w pliku BOOT.INI

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ewf\Parameters\Protected\Volume0]

"VolumeID"="{1EA414D1-6760-4625-8CBE-4F9F85A48E15}"

"Type"=dword:00000001

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

Otwórz menu Start i wpisz polecenie regedit w polu wyszukiwania. Gdy potwierdzisz ostrzeżenie, ujrzysz okno Edytora rejestru. Przeskocz do klucza „HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\ewf\Parameters\Protected\Volume0” w obrębie drzewa po lewej stronie. Kliknij dwukrotnie wartość DWORD o nazwie DiskSignature i wprowadź ośmioznakowy kod dysku w polu Dane wartości. Upewnij się, że w rubryce System jest zaznaczona opcja Szesnastkowy. Następnie otwórz dwukrotnym kliknięciem wartość PartitionOffset, przypisz jej kod z wiersza Przesunięcie w bajtach programu DiskPart. Uwaga! Koniecznie zamień opcję Szesnastkowy na Dziesiątkowy w rubryce System, zanim potwierdzisz przyciskiem OK. Możesz zamknąć okno Edytora rejestru. Na tym zakończyły się czynności instalacyjne sterownika EWF.

Uaktywnianie i konfigurowanie sterownika

Aby uaktywnić sterownik EWF, przywołaj okno konsoli tekstowej z uprawnieniami administratora (sposób wykonania tej czynności opisaliśmy powyżej), wpisz polecenie ewfmgr c: -enable, po czym zrestartuj Windows. Od tej pory blokada zapisu na partycji systemowej jest włączona. Przekonasz się o tym, raz jeszcze uruchamiając system operacyjny. Windows już nie może zapisać informacji, czy ostatni rozruch przebiegł pomyślnie, więc przy następnym zakłada, że wystąpiły jakieś problemy, i proponuje naprawę. Tymczasem wcale nie potrzebujesz pomocy. Wybierz więc opcję Uruchom system Windows normalnie w menu rozruchowym. Bieżący stan blokady (włączona lub wyłączona) możesz także ustalać z poziomu okna konsoli tekstowej. Wystarczy wpisać w nim polecenie ewfmgr c:. Stan zabezpieczenia przed zapisem widnieje wierszu STATE. Ujrzysz tu napis ENABLED (włączone) lub DISABLED (wyłączone).

Jak wspomnieliśmy na początku artykułu, sterownik EWF przekierowuje wszystkie operacje zapisu do oddzielnego pliku. Jednak blokada uniemożliwia zapisanie go na partycji systemowej dysku twardego. Dlatego umieszcza wszystkie zmiany na dysku wirtualnym w pamięci RAM. Modyfikacje systemu i dokumentów przechowywanych na wspomnianej partycji ulegają utracie wraz z zamknięciem i ponownym uruchomieniem Windows. Możesz więc do woli instalować obce oprogramowanie lub np. wykonywać odważne eksperymenty z rejestrem. Niezależnie od tego, jak duże zmiany wprowadzisz w systemie, i tak zostaną odrzucone, a po zrestartowaniu systemu wszystko powróci do poprzedniego stanu. Gdy więc zechcesz, aby zmiany zostały zapisane na dysku twardym (a więc przeniesione z dysku wirtualnego), przed zamknięciem systemu wpisz polecenie ewfmgr c: -commit w oknie konsoli tekstowej.

Możliwe jest także wyłączenie sterownika EWF. Służy do tego polecenie ewfmgr c: -disnable. Jednak po jego wprowadzeniu i zrestartowaniu Windows zauważysz, że nic nie uległo zmianie. Nadal obowiązuje blokada zapisu na partycji systemowej. Przyczyna jest prozaiczna. Wykonując powyższe czynności, zablokowałeś partycję systemową do zapisu, więc sterownik EWF nie dopuszcza nawet zmian w swojej konfiguracji. Parametr -disable okazuje się bezskuteczny. Możesz go zastosować np. wtedy, gdy wyposażyłeś inną partycję w blokadę zapisu – np. partycję danych D: poleceniem ewfmgr d: -enable. W tym wypadku można przywrócić pierwotny stan, wprowadzając polecenie ewfmgr d: -disable i restartując system. Chcąc odblokować partycję systemową, trzeba wpisać polecenie ewfmgr c: -commitanddisable -live, po czym ponownie uruchomić Windows. W ten sposób za jednym zamachem zgodzisz się na wprowadzenie zmian wykonanych w trakcie bieżącej sesji i wyłączysz zabezpieczenie przed zapisem. Pełny spis parametrów menedżera EWF przywołasz na ekran poleceniem ewfmgr -help.

Bezpieczne serfowanie bez sterownika EWF

Jeżeli wolisz nie instalować sterownika EWF w swoim systemie, a mimo to chcesz bezpiecznie serfować w internecie, możesz skorzystać z niezależnych systemów Live, które nie wymagają instalowania. Poniżej przedstawiamy cztery z nich.

Sposób korzystania z takich systemów jest dość prosty. Najpierw trzeba pobrać obraz systemu i nagrać go na płytę CD/DVD. Możesz to zrobić np. za pomocą bezpłatnego programu CDBurnerXP. W Windows 7/8 nie trzeba nawet korzystać z zewnętrznego narzędzia. Wystarczy kliknąć prawym przyciskiem myszy plik ISO w Eksploratorze i wskazać polecenie Nagraj obraz dysku. Gdy czynność ta dobiegnie końca, można uruchomić system z gotowej płyty. Jeżeli komputer uparcie wczytuje Windows z dysku twardego, musisz przywołać ustawienia BIOS-u (przeważnie trzeba nacisnąć klawisz [F2], [F8], [F12] lub [Esc] tuż po włączeniu peceta) i zmienić kolejność sprawdzania napędów. W trakcie rozruchu wybierz opcję wypróbowania systemu z płyty. W przeciwnym razie ryzykujesz zainstalowanie go na dysku twardym, wskutek czego utracisz dane i możliwość korzystania z Windows.

Ubuntu. To bardzo solidna i funkcjonalna dystrybucja środowiska Linux. Obsługuje bardzo wiele podzespołów sprzętowych. Za jej pomocą można nie tylko bezpiecznie przeglądać zasoby internetu, lecz wykorzystać ją do ratowania utraconych danych lub naprawiania uszkodzonego środowiska Windows. Ubuntu jest wyposażone w pełny zakres oprogramowania użytkowego – od pakietu biurowego LibreOffice przez edytor grafiki po aplikacje multimedialne. (http://ubuntu.pl, rozmiar pliku: ok. 940 MB)

Lightweight Portable Security. Ta dystrybucja Linuksa powstała w armii Stanów Zjednoczonych. Za jej pomocą żołnierze mogą w prosty sposób szyfrować pliki, wysyłać je i rozszyfrowywać otrzymaną korespondencję. Odbiorca musi także korzystać z tego systemu. (www.spi.dod.mil/lipose.htm, rozmiar pliku: ok. 280 / 433 MB)

F-Secure Rescue CD. Ten system pozwala sprawdzać lokalne dyski pod kątem ewentualnych wirusów i wykonywać czynności naprawcze. Po uruchomieniu systemu wystarczy nacisnąć klawisz [Enter] i wybrać opcję Start Scan klawiszami strzałek. (www.f-secure.com/en/web/labs_global/removal-tools/-/carousel/view/142, rozmiar pliku: ok. 140 MB)

Kaspersky Rescue CD. Także płyta ratunkowa z Kaspersky Labs przydaje się w razie podejrzeń, że system padł ofiarą wirusa. (http://support.kaspersky.com/pl/viruses/rescuediskdownloads, rozmiar pliku: ok. 324 MB)

dyne:bolic. Ta dystrybucja Linuksa specjalizuje się przede wszystkim w zastosowaniach multimedialnych. Możesz jej używać m.in. do strumieniowego przesyłania filmów. (www.dynebolic.org, rozmiar pliku: ok. 1,65 GB)


Zobacz również