DaRT - Diagnostics and Recovery Toolkit

DaRT - Diagnostics and Recovery Toolkit

  • Comments 5
  • Likes

Generalnie rzecz ujmując, system Windows sam z siebie się psuje dość rzadko. Problem jednak w tym, że ma on zazwyczaj styczność z żywym człowiekiem i (niezależnie od tego, czy człowiek ten siedzi przed klawiaturą czy wysyła pakiety przez sieć) może się zdarzyć, że twórcy nie przewidzieli wszystkich scenariuszy. Kreatywność (użyję tu przez grzeczność tylko tego słowa) ludzka nie zna granic.

Efekt zazwyczaj jest smutny: system jest popsuty. I obojętne czy mamy do czynienia z malware, poprawką, która powoduje bluescreeny, czy po prostu coś namieszamy i sami nie wiemy co, trzeba sobie jakoś radzić. Lepszych i gorszych narzędzi jest sporo i każdy doświadczony administrator ma swoją "skrzynkę", w której trzyma zestaw ulubionych instrumentów na każdą okazję. Można długo się spierać o wyższość rozwiązania X nad rozwiązaniem Y, ale na pewno istnieją pewne kategorie, których pominąć nie wolno. Prosta analogia z realną skrzynką majsterkowicza (jakie to ładne a ostatnio jakoś rzadko słyszane słowo) pozwala napisać, że o markę wiertarki można się pokłócić, ale samego faktu posiadania wiertarki raczej nikt nie neguje. Dla administratora taką wiertarką będzie narzędzie pozwalające na dostęp offline do systemu.

Administratorom mniej wprawnym przypomnę, że z dostępem offline chodzi o to, że jeżeli system robi coś naprawdę utrudniającego działania naprawcze (nie startuje, resetuje się, zawiesza, nie pozwala zalogować, broni się przed grzebaniem itp.), to najlepiej wcale go nie uruchamiać i dobrać się do niego jak spokojnie leży niewłączony na dysku. Można przełożyć dysk do innego komputera, ale może lepiej po prostu uruchomić system z płyty CD, PXE czy pendrive i wtedy naprawić to, co jest do naprawienia. Nawet, jeżeli na dysku zapisany jest wyjątkowo paskudny malware, to nie ma on okazji, żeby zacząć działać, więc walka z nim (albo choćby skopiowanie/odratowanie najważniejszych plików z takiego dysku) jest znacząco prostsza. Trzeba tylko wiedzieć jak to zrobić, żeby na przykład odczytać listę poprawek systemowych a potem usunąć tę sprawiającą kłopoty.

Żeby nie przedłużać wstępu, od razu zdradzę, że spróbuję opisać jedno z takich narzędzi. Konkretnie, tytułowy DaRT w wersji 7.0. W chwili obecnej nie jest on jeszcze dostępny, ale wersje testowe istnieją, więc połączę przyjemne z pożytecznym i opiszę, czego się w nim spodziewać. Wersja beta jest w pełni funkcjonalna i poza problemami ze Standalone System Sweeper nie zauważyłem poważniejszych usterek, więc jako narzędzie w skrzynce administratora powinna się zupełnie dobrze sprawdzić.

DaRT jest oprogramowaniem, które instaluje się w normalnym, działającym systemie. Po zainstalowaniu dopiero tworzy się plik ISO, który jest obrazem startowym dla dysku CD albo innego dogodnego nośnika. Oznacza to, że DaRT należy przygotować do pracy zanim padnie nam ostatni sprawny komputer, bo później nie będzie gdzie wygenerować potrzebnych plików. Instalacja jest skrajnie prosta. Jeden niewielki (poniżej 10MB) plik MSI (inny dla wersji x86, inny dla x64) trzeba wgrać na komputer z Windows 7 i uruchomić. W zasadzie, poza wyborem instalowanych komponentów (i tak wszyscy chcą instalować wszystkie) i zgodą na warunki licencji, instalka DaRT nie zadaje pytań.

Zainstalowany DaRT składa się z trzech elementów:

  • Współpracującego z WinDBG analizatora plików *.dmp generowanych podczas bluescreenów
  • Narzędzia do tworzenia pliku ISO, o który tak naprawdę chodzi (dla jasności, dysk utworzony z tego pliku oficjalnie nazywa się ERD, czyli Emergency Repair Disc)
  • Zdalnej konsoli, dzięki której można korzystać z DaRT zdalnie, bez konieczności biegania/dojazdu przed uszkodzony komputer.

installed01

Pierwsze narzędzie, Crash Analyzer Wizard wymaga podania ścieżki do zainstalowanych Debugging Tools (podpowiada na ekranie link, skąd można to pobrać), sam proponuje skonfigurowanie symboli i przy pomocy starożytnych okienek dialogowych (mam nadzieję, że to urok wersji beta) sięga po plik DMP. Należy pamiętać, że pierwsze uruchomienie musi być powolne, ponieważ aplikacja (a właściwie, zmuszony przez aplikację do pracy WinDBG) musi pobrać z sieci symbole, co zwykle chwilę trwa. Na końcu pokazuje się wynik analizy wskazujący winnego. Oczywiście diagnozowanie nie zawsze jest takie proste (WinDBG też może źle odczytać informacje, jeżeli coś je zamazało przed wystąpieniem BSOD), ale w większości przypadków sprawdza się zupełnie przyzwoicie.

crashanalyzer01

Zainteresowanych bardziej ambitnym diagnozowaniem bluescreenów nieskromnie odsyłam do nagrania mojej sesji na ten temat.

Drugie narzędzie, DaRT Recovery Image Wizard, jest prostym kreatorem, który po zadaniu pytań o:

  • nośnik z Windows 7,
  • dostępne dla lokalnego użytkownika komponenty (a nuż nie zechcemy dać userom dostępu na przykład do narzędzia wymazującego dyski),
  • możliwość podłączania zdalnej konsoli,
  • lokalizację Debugging Tools (możemy jej nie wskazywać, wtedy w razie potrzeby, DaRT spróbuje znaleźć potrzebne pliki na naprawianym komputerze),
  • aktualizację sygnatur wirusów i malware,
  • dodatkowe sterowniki, potrzebne na przykład, gdy mamy karty sieciowe albo kontrolery dysków, których "goły" system Windows nie zrozumie,
  • ręczne uzupełnienie (na przykład innymi ulubionymi narzędziami administratora) plików, które trafią na płytę ERD,
  • lokalizację docelowego pliku ISO,

utworzy plik, który można sobie schować na czarną godzinę albo od razu nagrać na płytę. Bez dodatkowych narzędzi i sterowników plik ma ponad 250MB.

Całe piękno DaRT widoczne staje się, gdy z przygotowanej płyty uruchomimy komputer. Startuje Windows PE, inicjowana jest sieć (można ten etap pominąć), mapowane są dyski sieciowe (też nie jest to niezbędne) i po wybraniu naprawianego systemu (na dysku może być ich więcej niż jeden), pojawia się znajome okno, uzupełnione jednak o nową pozycję na samym końcu.

select01

Po uruchomieniu, pojawia się właściwe okno DaRT z wyborem narzędzi do zastosowania:

select02

Jak widać, mamy do dyspozycji kilkanaście różnych mniej lub bardziej złożonych narzędzi. Każde wydaje się dość interesujące. Kolejno są to:

Edytor rejestru – niby daje to samo, co standardowy regedit uruchomiony w trybie offline, ale od razu po uruchomieniu ma załadowane odpowiednie gałęzie rejestru (wszystkie systemowe, włącznie z SAM i wszystkich użytkowników) i sam potrafi zrozumieć, o co chodzi z ControlSet001 i 002. Niby żadna filozofia dla kogoś, kto choć raz spróbował, ale skoro można sobie uprościć życie, to zdecydowanie wybieram edytor z DaRT zamiast standardowego.

Locksmith – proste do bólu narzędzie pozwalające kilkoma kliknięciami zrobić to, co do tej pory wymagało sztuczek: zresetować zapomniane hasło i odblokować konto.

locksmith01

Przy najbliższym zalogowaniu system wymusi zmianę hasła w standardowy sposób. Czy to jest bezpieczne? Jest dokładnie tak samo jak było do tej pory... Mając dostęp offline zawsze dało się hasła zmienić a fakt, że teraz dostajemy do ręki wyjątkowo proste w użyciu narzędzie, w żaden sposób nie osłabia ochrony. Jeżeli ktoś ma obawy, odpowiedź na takie zagrożenie może być tylko jedna: zaszyfrowanie całego dysku. Na przykład BitLockerem.

Crash Analyzer – dokładnie taki sam, jak uruchamiany na "żywym" systemie i opisany już powyżej. Warto tylko zwrócić uwagę, że proponowana domyślnie lokalizacja folderu z symbolami na dysku C: nie jest najszczęśliwsza. W Windows PE, dysk C: to zwykle ukryta partycja startowa a nie dysk systemowy. Przy odrobinie pecha może na niej braknąć miejsca, bo jest ona stosunkowo niewielka. Mogę zdradzić, że staram się, żeby w finalnej wersji DaRT zostało to poprawione.

File Restore – proste narzędzie wyszukujące na dysku skasowane pliki i foldery. Czasem może uratować administratora...

restore01

Warto zwrócić uwagę, że domyślnie narzędzie otwiera się z ustawionym dyskiem C:, który wcale nie musi oznaczać tego samego dysku, co C: na działającym komputerze. Warto zmienić przeszukiwany dysk, zanim stwierdzimy, że plików nie da się odratować.

Disk Commander – proste narzędzie do backupu/restore tablicy partycji, odtwarzania MBR i poszukiwania skasowanych partycji.

DiskCommander01

Disk Wipe – "zamazywacz" dysków oferujący szybkie albo bezpieczne zamazanie wszystkich danych na dysku.

diskwipe01

Ostrzeżenie na górze okna mówiące, że litery dysków mogą być przypisane inaczej niż w działającym systemie jest dość istotne. One naprawdę mogą być przypisane inaczej a zamazanie sobie nie tego dysku, co trzeba jest zwykle dość przykre. W razie wątpliwości można sprawdzić zawartość dysku opisanym dalej narzędziem Explorer.

Computer Management – prostsze niż w działającym systemie, ale i tak bardzo wygodne narzędzie do szybkiego przeglądania właściwości komputera. W tym logów systemowych.

compmgmt01

Wbudowana funkcjonalność "Autoruns" jest znacznie uboższa niż w analogicznym narzędziu Sysinternals, ale nic nie stoi na przeszkodzie, żeby w razie potrzeby użyć bardziej rozbudowanego, zgodnie z przepisem sprzed kilku tygodni.

Explorer – uboższy krewniak explorer.exe wbudowanego w system, ale skoro ma wyszukiwanie, kopiowanie, usuwanie, tworzenie folderów, zarządzanie uprawnieniami, kompresowanie i mapowanie dysków sieciowych, to czego chcieć więcej do ratowania popsutych systemów?

explorer01

Solution Wizard – narzędzie dla tych, którzy sami nie wiedzą, czego chcą. Na podstawie odpowiedzi na kilka prostych pytań określa, którym narzędziem najlepiej się posłużyć do rozwiązania problemu. Czy system startuje poprawnie? Czy masz problem z zalogowaniem się, bo zapomniałeś hasła? Podejrzewasz, że masz w systemie jakieś złośliwe oprogramowanie?

TCP/IP Config – pozwala na ręczną konfigurację IPv4 oraz IPv6 tam, gdzie DHCP okazuje się niewystarczający a konieczna będzie łączność sieciowa.

Hotfix Uninstall – jak sama nazwa wskazuje, narzędzie służące do usuwania poprawek, których instalacja okazała się zabójcza dla systemu.

HUW01

Microsoft zaleca użycie tego narzędzia tylko, gdy nie da się odinstalować poprawek w standardowy sposób, z panelu sterowania. Najlepiej usuwać po jednej poprawce na raz, począwszy od najnowszych i sprawdzać czy problem został rozwiązany.

SFC Scan – skanuje pliki systemowe w poszukiwaniu zmian w stosunku do oryginalnej instalacji. Choć można zrobić to na wiele sposobów, to użycie tego narzędzia znacząco przyspiesza cały proces.

sfc01

Search – proste narzędzie do wyszukiwania na dysku plików, dla których znamy nazwę i/lub czas modyfikacji i/lub rozmiar. Pamiętać trzeba tylko, że pod Windows PE, dysk C: wcale nie musi być (i zwykle nie jest) tym samym C:, które widać w systemie.

Standalone System Sweeper – najcenniejsze w mojej opinii narzędzie, którego w dostępnej mi wersji DaRT (trzeba pamiętać, że to wersja beta) nie udało się zmusić do działania. Z drugiej jednak strony, kilka mądrych osób jasno mówi, że u nich działa. Zamiast wnikać w szczegóły usterki, obiecuję jeszcze powalczyć i napisać jak tylko się uda.

Remote Connection – serwer współpracujący z zainstalowanym na działającym systemie (u administratora) klientem zdalnego dostępu. Wyświetla przygotowany przez administratora komunikat (na przykład numer telefonu do helpdesku) po czym podaje parametry połączenia.

rc01

Ticket Number jest losowo wygenerowanym hasłem, dzięki czemu do sesji DaRT nie połączy się nikt nieupoważniony. Port również wybierany jest losowo. Po połączeniu, wszystkie opisane powyżej działania można przeprowadzić zdalnie. Użytkownik widzi swój ekran, widzi działania administratora, ale jest to tylko podgląd. Dopóki administrator nie rozłączy sesji, użytkownik nic nie może zrobić. Jeżeli administrator tworząc plik ISO nie dał użytkownikowi wszystkich narzędzi DaRT, to na ekranie użytkownika część opcji jest wyłączona a przez zdalną konsolę są one aktywne. Pozwala to obronić użytkownika przed nim samym, jednak należy pamiętać, że zawsze ktoś może przynieść swoją płytę z DaRT z domu albo od kolegi, więc nadmierne poleganie na tym zabezpieczeniu może się nie sprawdzić.

Podsumowując, można jeszcze dodać jedną techniczną uwagę: fakt, że działania naprawcze wykonywane są z poziomu Windows PE, nie oznacza, że komputer można wyłączyć przez wyciągnięcie kabla zasilającego. Wiele zapisywanych przez narzędzia DaRT zmian jest buforowane i tak samo jak w normalnym systemie, tylko bezpieczne wyłączenie systemu pozwoli na uniknięcie problemów. Standardowe okno, które pojawia się jeszcze przed uruchomieniem DaRT ma przyciski "Shutdown" i "Restart" i warto z nich korzystać.

Na koniec jeszcze tylko parę słów o licencjonowaniu. DaRT jest częścią MDOP i nie jest to produkt, który po prostu kupuje się w pudełku w sklepie. Z drugiej jednak strony, warto wiedzieć, że MDOP teraz kosztuje tylko 1EUR miesięcznie dla posiadaczy InTune (który z kolei kosztuje 12EUR) więc nie jest to jakiś wielki majątek. Wystarczy pomyśleć jak ta kwota wypada w porównaniu z czasem, który dzięki DaRT można zaoszczędzić, żeby decyzja o zakupie stała się znacząco prostsza. Oczywiście istnieją również zupełnie bezpłatne narzędzia, które potrafią zrobić podobne rzeczy. Pytanie tylko czy warto.

Autor: Grzegorz Tworek [MVP]

Comments
  • Ja tam pobrałem sobie z TechNet-u MDOP-a i z tamtąd mam DaRT-a :)

  • Też mam z Technetu, a wersję Beta - z Connecta.

    Ale pamiętaj, że technetowa licencja nie pozwala na produkcyjne użycie.

  • Grzegorz, czy da się zrobić tak, aby obraz ISO, który wygeneruje dla nas DaRT zawierał od razu symbole np. do Windows 7?

  • Nie próbowałem, ale i nie widzę przeciwwskazań. Trzeba doświadczalnie sprawdzić :)

  • A właśnie to mnie zastanowiło.

    A nuż się przyda i będzie trzeba przebadać system, który nie ma symboli i brak dostępu do sieci.

Your comment has been posted.   Close
Thank you, your comment requires moderation so it may take a while to appear.   Close
Leave a Comment