środa, 10 marca 2010

Autostart i Autorun

System Windows jest jednym z najbardziej rozbudowanych i zaawansowanych technologicznie systemów operacyjnych. Otwiera wiele możliwości dla programistów, użytkowników jak i niestety dla złodziejów, hackerów czy choćby wirusów (których autorzy pochodzą ze wszelkich kręgów). Często więc spotykamy się z koniecznością ustalenia co system uruchamia przy swoim starcie. Informacja ta może pomóc nam w odnalezieniu szkodników czy choćby w optymalizacji komputera. Czy zastanawialiście ile takich miejsc jest w systemie? Oj, dużo. Czas więc wyliczyć je. Zrobię to w oparciu o Windows 7

  1. Klucz RUN w drzewie Machine: HKLM\Software\Microsoft\Windows\CurrentVersion\Run
  2. Klucz RUN w drzewie User: HKCU\Software\Microsoft\Windows\CurrentVersion\Run lub HKCU\Software\Microsoft\Windows NT\CurrentVersion\Windows\Run
  3. Load Value (załadowywane przy logowaniu użytkownika): HKCU\Software\Microsoft\Windows NT\CurrentVersion\Windows
  4. Scheduled Tasks (charmonogram zadań) – czyli wszystko to co zostało skonfigurowane w charmonogramie zadań (znajdziemy w Narzędzia Administracyjne) – obecnie bardzo rozubodawane narzędzie!
  5. Win.ini – Tak! Nadal ten plik może być źródłem uruchamiania programów 16-bitowych (Klucz LOAD w sekcji [Windows])
  6. Klucz RunOnce oraz RunOnceEx – klucze, z których programy uruchamiane są teoretycznie tylko raz, ale wirusy wpisują się tam ustawicznie, tak aby wraz ze startem systemu „powrócić do łask”. Oto lista lokalizacji kluczy:
    1. HKLM\Software\Microsoft\Windows\CurrentVersion\RunOnce
    2. HKLM\Software\Microsoft\Windows\CurrentVersion\RunOnceEx
    3. HKCU\Software\Microsoft\Windows\CurrentVersion\RunOnce
    4. HKCU\Software\Microsoft\Windows\CurrentVersion\RunOnceEx
  7. Klucze RunServices oraz RunServicesOnce: tu należy ostrożnie postępować, bo wiele z serwisów mogą być systemowymi i do tego newralgicznymi. Mogą być przypisane do konkretnego użytkownika lub maszyny
  8. Klucz Winlogon: Wszystko to co się dzieje po zalogowaniu użytkownika. Najważniejszymi kluczami są: HKLM\Software\Microsoft\Windows NT\CurrentVersion\Winlogon\Userinit oraz HKLM\Software\Microsoft\Windows NT\CurrentVersion\Winlogon\Shell
  9. Polisy systemowe: Można tu ustawić aby w sekcji [Logon] >> [Run These Programs At User Logn] uruchamiane były stosowne programy (niezależnie od woli użytkownika!).
  10. Polisy systemowe poprzez rejestry: podobnie jak wyżej, tyle, że dostęp do tych ustawień mamy także przez rejestr: HKLM\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer\Run oraz HKCU\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer\Run.
  11. Wartość BootExecute w rejestrze: W kluczu HKLM\System\CurrentControlSet\Control\Session Manager standardowo ustawiona jest komenda „autocheck autochk *”, która odpala sprawdzanie dysków twardych po niewłaściwie zamkniętym systemie operacyjnym. Oznacza to, że tu także może pojawić się niechciany program. Microsoft jednak przestrzega przed kasowaniem tego klucza!
  12. Shell service objects: Windows ładuje do systemu szereg bibliotek DLL, aby dodać stosowne funkcjonalności do windows’owego shell’a. Tu interpretacja wyników należy pozostawić tylko biegłym.
  13. Skrypty logowania: Sytuacja klasyczna dla środowisk z domeną, gdzie każdemu użytkownikowi możemy przypisać skrypt logowania. Zdarzały się już ataki wirusowe na skrypty logowania(!).
W systemie Windows Vista (jedno z niewielu miejsc, gdzie Vista była lepsza od Windows 7!) Windows Defender potrafił wyświetlić nam startujące programy i aplikacje i w razie potrzeby zablokować je. W Windows 7 tego już nie ma – musimy nadal (lub znowu) polegać na MSCONFIG. Tu znajdziemy większość wymienionych wyżej miejsc.

Brak komentarzy:

Publikowanie komentarza