Replacer: podmiana plików systemowych Windows XP


Windows File Protection (WFP) to ochrona systemowych plików zapobiegająca ich skasowaniu lub modyfikacji. Podstawą jest folder C:WINDOWSsystem32dllcache (aby go zobaczyć musimy odkryć pliki ukryte i systemowe), który zawiera kopie ważnych plików. Funkcja działa w ten sposób, że w sytuacji, gdy coś się stanie z plikiem systemowym, system próbuje go przywrócić do oryginalnej postaci. Pliki są wyszukiwane w katalogu dllcache, potem ścieżka sieciowa, a na końcu płyta instalacyjna. Jeżeli plik zostanie znaleziony w dllcache to WFP podmienia go samoczynnie bez informowania użytkownika (użytkownik nawet nie wie, że pliki zostały samoczynnie przywrócone). Jeżeli plik nie zostanie znaleziony pojawia się prośba o włożenie płyty instalacyjnej. Funkcja bardzo przydatna, ponieważ chroni pliki przed modyfikacją przez szkodliwe oprogramowanie i nie zaleca się jej wyłączania, co też nie jest łatwe. Jedynie podmiana plików poprzez instalacje aktualizacji jest akceptowana: instalacja Service Packów, poprawek (hotfix-ów) i Windows Update.
Windows File Protection

Aby zobaczyć jak działa ochrona wystarczy usunąć jeden z plików systemowych np. c:windowsnotepad.exe. Po chwili plik magicznie powróci na swoje miejsce = zostanie przywrócony poprzez skopiowanie go z katalogu dllcache. Nie mamy również możliwości podmiany plików czy ich modyfikacji, ponieważ gdy system wykryje zmodyfikowany plik usunie go i przywróci oryginał z dllcache. Wychodzi na to, aby móc zachować zmodyfikowany plik musimy usunąć jego oryginalną kopię z dllcache, aby uniemożliwić jego przywrócenie oraz dodatkowo skopiować go do tego katalogu.
Sposobem na wyłączenie ochrony jest usunięcie zawartości folderu dllcache lub tylko poszczególnych plików. W przypadku wyświetlenia prośby o włożenie płyty CD klikamy Anuluj i akceptujemy pozostawienie zmodyfikowanej kopii pliku.

Z WFP łączy się narzędzie System File Checker (SFC) do weryfikacji plików. Uruchamiamy to narzędzie, gdy mamy problemy z plikami systemowymi np. błąd biblioteki .dll czy nie ładujący się program.

Menu Start >>> Uruchom >>> sfc /opcja
Opcje:
/SCANNOW – skanuje natychmiastowo pliki
/SCANONCE – skanuje pliki tylko przy następnym restarcie kompa
/SCANBOOT – skanuje pliki przy każdym restarcie kompa
/REVERT – przywraca skan do ustawienia domyślnego
/PURGECACHE – opróżnia cache i ponownie skanuje pliki
/CACHESIZE=x – ustala wielkość cache

Po uruchomieniu polecenie skanuje wszystkie chronione pliki i sprawdza ich integralność, zastępując wszystkie pliki, które odstają od normy. Zazwyczaj wymagana jest płyta instalacyjna w napędzie, z której skopiowane zostaną wszystkie pliki do dllcache, odtwarzając zawartość katalogu. Rozmiar na XP SP3 w moim przypadku po wykonaniu skanowania wyniósł 555MB. Najlepiej nie usuwać zawartości, ponieważ w razie potrzeby system będzie mógł podmienić pliki bez potrzeby wkładania płyty cd.
Po odtworzeniu zawartości dllcache ponowne uruchomienie skanowania nie powinno wymagać płyty instalacyjnej. Ale w praktyce wygląda to różnie. Aby uniknąć potrzeby wkładania płyty CD można pliki instalacyjne skopiować na dysk komputera. W tym celu z płyty kopiujemy folder I386 do głównego katalogu partycji systemowej. Najczęściej będzie to partycja c:, a docelowa lokalizacja c:I386.
Teraz edytujemy rejestr w kluczu HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionSetup. Zmieniamy literę napędu w SourcePath na c: (w moim przypadku musiałem zmienić literę także w ServicePackSourcePath na c:; można także ustawić C:WINDOWSServicePackFiles, jeżeli istnieje). Restartujemy komputer i wykonujemy skanowanie. Płyta nie jest już wymagana. W takim przypadku możemy także usunąć zawartość dllcache, a gdy jakiś plik zostanie zmodyfikowany system odzyska go z katalogu I386 na dysku, identycznie jak z płyty i skopiuje go do dllcache.

Wszystkie ustawienia są zapisane w rejestrze w kluczu HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersionWinlogon.
SFCQuota – wielkość folderu dllcache. Domyślną wartością jest 0xffffffff (300 MB).

SFCDisable – Włączenie/wyłączenie ochrony
0 – WFP jest aktywne (ustawienie domyślne)
1 – WFP jest zdeaktywowane, będzie się pojawiać pytanie o uaktywnienie
2 – WFP zostanie zdeaktywowane tylko do następnego restartu bez pytania się o uaktywnienie
4 – WFP jest aktywne, z popup-ami zdeaktywowane
ffffff9d – WFP jest całkowicie zdeaktywowane

SFCScan – Skan i podmiana chronionych plików w trakcie startowania systemu.
0 – skanowanie zdeaktywowane (ustawienie domyślne)
1 – skanowanie uruchamiane przy każdym starcie systemu
2 – skanowanie uruchomione tylko raz

SFCShowProgress – Wyświetlanie postępu skanu w trakcie sprawdzania plików.
0 – wyłączone
1 – włączone

Czasami ustawienia mogą być zapisane w kluczu HKEY_LOCAL_MACHINESoftwarePoliciesMicrosoftWindows NTWindows File Protection, które maja pierwszeństwo nad HKEY_LOCAL_MACHINESoftwareMicrosoftWindows NTCurrentVersionWinlogon.

Replacer

Licencja: Public domain
Platforma: Windows 2000/XP

narzędzie służy do łatwej podmiany systemowych plików Windows XP chronionych poprzez Windows File Protection. Pomocny również gdy pliki zmodyfikują wirusy – można przywrócić zdrowe. Wykorzystuje kombinację skryptów (Clear_WFP_Message.vbs w folderze .ReplacerTemp), które usuwają wiadomości dotyczące ochrony plików systemu Windows.

Narzędzie nie jest przeznaczone dla Windows Vista/7, gdzie ochrona działa na zasadzie uprawnień: wymiana systemowych plików w Windows 7

Download: Replacer-2.63.zip
(archiwum zawiera także dodatkowe składniki Components; prawidłowe ich załadowanie objawia się gwiazdką (*) na pasku tytułu >>> „Replacer *”.

Po pobraniu aplikacji uruchamiamy plik replacer.cmd
Przeciągamy na okno linii komend oryginalny plik Windows, który chcemy zastąpić innym i ENTER.
replacer1.jpg

Następnie przeciągamy plik, którym będziemy podmieniać plik oryginalny i ENTER.
replacer2.jpg

Potwierdzamy wykonanie operacji wpisując Y aby kontynuować i ENTER.
replacer3.jpg

Zostanie wykonana kopia zapasowa oryginalnego pliku, która jest przechowywana w tym samym folderze co plik systemowy, z rozszerzeniem „backup” (np. „notepad.backup”). Plik, którym będziemy podmieniać zostanie skopiowany także do katalogu dllcache. Po podstawieniu pliku wciskamy dowolny klawisz by zamknąć okno aplikacji oraz zrestartować komputer. Nie reagujemy na komunikat o włożenie płyty instalacyjnej.
replacer4.jpg

Jeśli po zamianie plików Windows nie startuje Replacer ma funkcję odwrócenia najnowszej z dokonanych modyfikacji. Służy temu plik C:WINDOWSReplacerUndo.txt.
By odwrócić zmiany startujemy do Konsoli odzyskiwania i wpisujemy komendy:
BATCH ReplacerUndo.txt
EXIT

Alternatywą jest start z płyty LiveCD (opis poniżej) i odzyskanie w ten sposób pliku. Po prostu usuwamy aktualny plik, a następnie zmieniamy rozszerzenie pliku z kopii (.backup) na prawidłowe np. (.exe).

Wymiana plików za pomocą OTL
Aplikacja OTL by OldTimer umożliwia także wymianę plików dyrektywą :Files wraz z przełącznikiem /replace.

Czyste pliki Windows XP do przywracania
Źródłem plików systemowych może być inny komputer z systemem Windows XP czy płyta instalacyjna. Ważne jest, aby plik był zgodny z wersją naszego systemu >>> pliki z Windows SP2 nie można wykorzystywać na SP3.
Pliki można także łatwo uzyskać pobierając pełną paczkę Service Pack. Wersja pobieranego SP powinna być zgodna z wersją SP zainstalowaną w danym systemie.
Dla Windows XP najnowszy jest SP3: Sieciowy pakiet instalacyjny dodatku Service Pack 3

Po pobraniu pliku wystarczy go wyekstraktować za pomocą aplikacji 7-zip. W środku jest katalog i386, a w nim skompresowane pliki o rozszerzeniu *.EX_, *.SY_ , które również wystarczy rozpakować w 7-zip, by uzyskać plik wynikowy. To samo robimy z plikami z płyty instalacyjnej, które są identycznie skompresowane.

Podmiana plików przy niestartującym systemie
W przypadku, gdy Windows nie startuje mamy możliwość podmiany plików poprzez użycie jednej z płyt ratunkowych LiveCD:

  • pełna płyta instalacyjna systemu – podmieniamy pliki na dysku tymi z płyty CD. Po uruchomieniu z płyty wybieramy naprawę istniejącej instalacji za pomocą Konsoli odzyskiwania (klawisz R) i wykorzystując polecenie „expand” ekstraktujemy pliki. Jeżeli korzystamy z mini płyty z sama konsolą wówczas pliki wymieniamy komenda „copy” kopiując z jednej lokalizacji do drugiej.
  • środowisko WinRe Vista/7 – wykorzystujemy metodę z Notatnikiem do przeglądanie i kopiowanie plików na dysku.
  • LiveCD Windows czy LiveCD Linux

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *