Menedżer zadań pokazuje uruchomione programy - jak mogę zobaczyć te, które zostały zakończone?

16

Jak dowiedzieć się, jakie programy działały na moim komputerze, nawet jeśli zostały zatrzymane do tego stopnia, że Menedżer zadań nie może nic pokazać?

Nie używam komputera sam i czasami jestem podejrzliwy.

MrSeas
źródło
4
Jeśli proces został zakończony, nie będzie pokazywany w menedżerze zadań, ale może pojawić się w logu zdarzeń systemowych, patrz Podgląd zdarzeń.
Moab
7
Jeśli naprawdę nie można ufać ludziom, którzy mają wspólne komputera, a następnie dowiedzieć się, co one zostały uruchomione jest prawdopodobnie zbyt mało, zbyt późno.
Cody Gray
1
Ironia tego pytania jest pyszna. Mówisz, że jesteś podejrzliwy w stosunku do tego, co robią inni na współużytkowanym komputerze, którego używasz, ale to ty próbujesz węszyć, co wszyscy inni zrobili ze swoim kontem !!
Lekkość ściga się z Moniką

Odpowiedzi:

36

Jak dowiedzieć się, jakie programy działały, gdy zostały zatrzymane

Domyślnie nie ma dzienników programów, które zostały uruchomione.

Można jednak włączyć zdarzenia śledzenia procesu w dzienniku zdarzeń zabezpieczeń systemu Windows (instrukcje znajdują się poniżej), a informacje te będą dostępne w przyszłości.

Po włączeniu zdarzeń śledzenia procesu można użyć następujących poleceń programu PowerShell do zbadania zdarzeń:

Rozpoczęcie procesu:

Get-EventLog Security | Where-Object {$_.EventID -eq 4688} | Format-List

Zatrzymanie procesu:

Get-EventLog Security | Where-Object {$_.EventID -eq 4689} | Format-List

Powyższe polecenia zrzucają informacje o zdarzeniu na ekran.


Jak korzystać ze zdarzeń śledzenia procesów w dzienniku zabezpieczeń systemu Windows

W Windows 2003 / XP zdarzenia te uzyskuje się po prostu włączając zasady inspekcji Śledzenie procesów.

W systemie Windows 7/2008 + musisz włączyć tworzenie procesu kontroli i opcjonalnie podkategorie Zakończenie procesu kontroli, które znajdziesz w sekcji Zaawansowana konfiguracja zasad kontroli w obiektach zasad grupy.

Te zdarzenia są niezwykle cenne, ponieważ zapewniają kompleksową ścieżkę audytu za każdym razem, gdy dowolny plik wykonywalny w systemie jest uruchamiany jako proces . Możesz nawet określić czas trwania procesu, łącząc zdarzenie tworzenia procesu ze zdarzeniem zakończenia procesu, używając identyfikatora procesu znalezionego w obu zdarzeniach. Przykłady obu zdarzeń pokazano poniżej.

wprowadź opis zdjęcia tutaj

Źródło Jak korzystać ze zdarzeń śledzenia procesów w dzienniku zabezpieczeń systemu Windows


Jak włączyć tworzenie procesu kontroli

  1. Uruchom gpedit.msc

  2. Wybierz „Ustawienia systemu Windows”> „Ustawienia zabezpieczeń”> „Zasady lokalne”> „Zasady inspekcji”

    wprowadź opis zdjęcia tutaj

  3. Kliknij prawym przyciskiem myszy „Śledź proces śledzenia” i wybierz „Właściwości”

  4. Zaznacz „Sukces” i kliknij „OK”

    wprowadź opis zdjęcia tutaj


Co to jest śledzenie procesu audytu

To ustawienie zabezpieczeń określa, czy system operacyjny kontroluje zdarzenia związane z procesem, takie jak tworzenie procesu, zakończenie procesu, obsługa duplikacji i pośredni dostęp do obiektów.

Jeśli to ustawienie zasad jest zdefiniowane, administrator może określić, czy należy kontrolować tylko sukcesy, tylko niepowodzenia, zarówno sukcesy, jak i niepowodzenia, czy też nie w ogóle kontrolować te zdarzenia (tj. Ani sukcesy, ani niepowodzenia).

Jeśli włączona jest kontrola sukcesu, pozycja kontroli jest generowana za każdym razem, gdy system operacyjny wykonuje jedno z tych działań związanych z procesem.

Jeśli włączono inspekcję błędów, pozycja kontroli jest generowana za każdym razem, gdy system operacyjny nie wykona jednego z tych działań.

Domyślnie: brak kontroli

Ważne: Aby uzyskać większą kontrolę nad zasadami inspekcji, użyj ustawień w węźle Zaawansowana konfiguracja zasad inspekcji. Aby uzyskać więcej informacji na temat zaawansowanej konfiguracji zasad inspekcji, zobacz http://go.microsoft.com/fwlink/?LinkId=140969 .


Co z ExecutionProgramList od Nirsoft? Czy mogę tego użyć?

Program ExecutedProgramList nie zawiera pełnej listy programów, które zostały wykonane.

Na przykład nie zawiera żadnego z przenośnych programów, które aktualnie uruchamiam z napędu thumbdrive, np. Agent, Notepad ++, GSNotes, a także prawie każdego programu Cygwin, który uruchomiłem od ostatniego restartu.

Nie będzie zawierał żadnego programu, który niczego nie zapisuje w lokalizacjach wymienionych w linku:

Lista wcześniej wykonanych programów jest gromadzona z następujących źródeł danych:

  • Klucz rejestru: HKEY_CURRENT_USER\Classes\Local Settings\Software\Microsoft\Windows\Shell\MuiCache
  • Klucz rejestru: HKEY_CURRENT_USER\Microsoft\Windows\ShellNoRoam\MUICache
  • Klucz rejestru: HKEY_CURRENT_USER\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Compatibility Assistant\Persisted
  • Klucz rejestru: HKEY_CURRENT_USER\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Compatibility Assistant\Store
  • Folder pobierania wstępnego systemu Windows (C: \ Windows \ Prefetch)

Źródło ExecutedProgramList


Dalsza lektura

DavidPostill
źródło
Sprytny fragment programu PowerShell do wyodrębniania uzyskanych informacji byłby dobrym dodatkiem do tej doskonałej odpowiedzi.
Peter Mortensen
@PeterMortensen Thanks. Rzeczywiście tak. Niestety nie znam PowerShell wystarczająco dobrze, aby napisać jedną.
DavidPostill
Kontrola duplikacji uchwytu brzmi niezwykle spamowo.
user253751
@PeterMortensen Udało mi się napisać jedno-linijkę, która podaje informacje;)
DavidPostill
@ user20574 Co masz na myśli?
DavidPostill
3

Nirsoft ma małą, bezpłatną aplikację, ExecutionProgramList , która pokazuje listę programów i plików wsadowych wykonanych w twoim systemie. Pamiętaj, że nie zawsze jest w stanie pokazać czas ostatniego uruchomienia aplikacji, ze względu na ograniczenia związane z systemem Windows i, jak wspomniano w @DavidPostill, może brakować aplikacji przenośnych.

Pobiera informacje z systemu Windows, więc nie musi być uruchomiony, aby skompilować swoją listę.

DrMoishe Pippik
źródło
1
ExecutedProgramListnie podaje pełnej listy uruchomionych programów. Na przykład, nie wymienia żadnej z przenośnych programów Jestem aktualnie uruchomionych z mojego thumbdrive, np Agent, Notepad++, GSNotesjak prawie każdy Cygwinprogram, Mam biegać od mojego ostatniego restartu. Nie jest to więc zbyt obszerne .
DavidPostill
Nie będzie zawierał żadnego programu, który niczego nie zapisuje w lokalizacjach wymienionych w łączu.
DavidPostill
Jak to działa? Czy stale pobiera próbki aktualnie uruchomionych procesów? Czy może system Windows powiadamia go o uruchomieniu i zatrzymaniu procesów?
Peter Mortensen
@PeterMortensen Zobacz na końcu mojej odpowiedzi, jak to działa. I wymaga ręcznego odświeżenia.
DavidPostill
1

Dzieje się to również dzięki historii procesów . To darmowa i przenośna baza danych procesów.

Jest to prosty przenośny plik .zip do pobrania. Na stronie pobierania znajduje się instrukcja obsługi tego wideo.

Tak długo, jak działa Historia procesów, można wyszukiwać procesy zakończone za pomocą osobnego interfejsu graficznego.

Będzie działał na dowolnej wersji systemu Windows od XP.

(Jestem autorem tego oprogramowania typu open source.)

Historia procesu
źródło