Homepage » scuola » Comprensione del monitor di processo

    Comprensione del monitor di processo

    Oggi in questa edizione di Geek School ti insegneremo come l'utility Process Monitor ti permette di sbirciare dietro le quinte e vedere quali sono le tue applicazioni preferite dietro le quinte: quali file stanno accedendo, le chiavi di registro che hanno usare e altro.

    NAVIGAZIONE SCOLASTICA
    1. Quali sono gli strumenti di SysInternals e come li usi?
    2. Capire Process Explorer
    3. Utilizzo di Process Explorer per la risoluzione dei problemi e la diagnosi
    4. Comprensione del monitor di processo
    5. Utilizzo di Process Monitor per la risoluzione dei problemi e la ricerca di blocchi di registro
    6. Utilizzare Autoruns per gestire i processi di avvio e il malware
    7. Utilizzo di BgInfo per visualizzare le informazioni di sistema sul desktop
    8. Usare PsTools per controllare altri PC dalla riga di comando
    9. Analisi e gestione di file, cartelle e unità
    10. Avvolgimento e utilizzo degli strumenti insieme

    A differenza dell'utilità Process Explorer che abbiamo trascorso alcuni giorni a coprire, Process Monitor è pensato per essere un passivo di tutto ciò che accade sul tuo computer, non uno strumento attivo per i processi di uccisione o per la chiusura degli handle. Questo è come dare un'occhiata a un file di log globale per ogni singolo evento che accade sul tuo PC Windows.

    Vuoi capire quali chiavi del registro la tua applicazione preferita sta effettivamente memorizzando le loro impostazioni? Vuoi capire quali file un servizio è toccante e quanto spesso? Vuoi vedere quando un'applicazione si connette alla rete o apre una nuova procedura? È Process Monitor in soccorso.

    Non facciamo più molti articoli di registro, ma quando abbiamo iniziato usavamo Process Monitor per capire a quali chiavi del registro si stava accedendo, e poi prendiamo le chiavi del registro per vedere cosa succederebbe. Se vi siete mai chiesti come mai un geek ha scoperto una modifica del registro che nessuno ha mai visto, probabilmente era attraverso Process Monitor.

    L'utilità Process Monitor è stata creata combinando insieme due diverse utility della vecchia scuola, Filemon e Regmon, che sono state utilizzate per monitorare i file e le attività di registro come implicano i loro nomi. Anche se queste utility sono ancora disponibili e potrebbero soddisfare le tue particolari esigenze, con Process Monitor starai molto meglio, perché è in grado di gestire un grande volume di eventi grazie al fatto che è stato progettato per farlo.

    Vale anche la pena notare che Process Monitor richiede sempre la modalità amministratore perché carica un driver del kernel sotto la cappa per catturare tutti quegli eventi. In Windows Vista e versioni successive verrà visualizzata una finestra di dialogo UAC, ma per XP o 2003 è necessario assicurarsi che l'account utilizzato disponga dei privilegi di amministratore.

    Gli eventi che Process Monitor cattura

    Process Monitor cattura una tonnellata di dati, ma non cattura ogni singola cosa che accade sul tuo PC. Ad esempio, Process Monitor non si preoccupa se si sposta il mouse e non sa se i driver funzionano in modo ottimale. Dopo tutto, non è in grado di tenere traccia di quali processi sono aperti e di sprecare CPU sul tuo computer, questo è il lavoro di Process Explorer.

    Ciò che fa è catturare specifici tipi di operazioni I / O (Input / Output), sia che si verifichino attraverso il file system, il registro o persino la rete. Troverà inoltre alcuni altri eventi in modo limitato. Questo elenco copre gli eventi che cattura:

    • Registro - questo potrebbe essere la creazione di chiavi, la lettura, la cancellazione o l'interrogazione. Sarai sorpreso di quanto spesso ciò accada.
    • File System - questo potrebbe essere la creazione di file, la scrittura, l'eliminazione, ecc. e può essere sia per dischi rigidi locali che per unità di rete.
    • Rete - questo mostrerà l'origine e la destinazione del traffico TCP / UDP, ma purtroppo non mostra i dati, rendendolo un po 'meno utile.
    • Processi - Si tratta di eventi per processi e thread in cui un processo viene avviato, un thread inizia o termina, ecc. Questa può essere un'informazione utile in alcuni casi, ma è spesso qualcosa che si vorrebbe vedere in Process Explorer invece.
    • profiling - Questi eventi vengono acquisiti da Process Monitor per verificare la quantità di tempo del processore utilizzata da ciascun processo e l'utilizzo della memoria. Di nuovo, probabilmente vorrai usare Process Explorer per tenere traccia di queste cose la maggior parte del tempo, ma è utile qui se ne hai bisogno.

    In questo modo Process Monitor è in grado di acquisire qualsiasi tipo di operazione di I / O, indipendentemente dal fatto che avvenga tramite il registro, il file system o persino la rete, anche se i dati effettivi scritti non vengono acquisiti. Stiamo solo osservando il fatto che un processo sta scrivendo su uno di questi stream, quindi in seguito potremo scoprire di più su cosa sta accadendo.

    L'interfaccia di Process Monitor

    Quando carichi l'interfaccia di Process Monitor per la prima volta, ti verrà presentato un numero enorme di righe di dati, con un numero maggiore di dati che volano rapidamente, e può essere travolgente. La chiave è avere un'idea, almeno, su ciò che stai guardando, così come quello che stai cercando. Questo non è il tipo di strumento con cui trascorri una giornata di relax, perché entro un periodo di tempo molto breve, guarderai milioni di righe.

    La prima cosa che vorrai fare è filtrare quei milioni di righe fino al sottoinsieme di dati molto più piccolo che vuoi vedere, e ti insegneremo come creare filtri e inserire esattamente esattamente ciò che vuoi trovare . Ma prima, dovresti capire l'interfaccia e quali dati sono effettivamente disponibili.

    Guardando le colonne di default

    Le colonne di default mostrano un sacco di informazioni utili, ma avrai sicuramente bisogno di un contesto per capire quali dati contengono effettivamente ciascuno, perché alcuni di essi potrebbero sembrare qualcosa di brutto accaduto quando sono eventi davvero innocenti che accadono tutto il tempo sotto cappuccio. Ecco a cosa serve ciascuna delle colonne predefinite:

    • Tempo - questa colonna è abbastanza auto-esplicativa, mostra l'ora esatta in cui si è verificato un evento.
    • Nome del processo - il nome del processo che ha generato l'evento. Per impostazione predefinita, questo non mostra il percorso completo del file, ma se passi il mouse sopra il campo puoi vedere esattamente quale processo è stato.
    • PID - l'ID di processo del processo che ha generato l'evento. Questo è molto utile se stai cercando di capire quale processo svchost.exe ha generato l'evento. È anche un ottimo modo per isolare un singolo processo per il monitoraggio, assumendo che il processo non si rilanci da solo.
    • operazione - questo è il nome dell'operazione che viene registrata e c'è un'icona che corrisponde a uno dei tipi di evento (registro, file, rete, processo). Questi possono essere un po 'di confusione, come RegQueryKey o WriteFile, ma cercheremo di aiutarti attraverso la confusione.
    • Sentiero - questo non è il percorso del processo, è il percorso verso ciò che è stato elaborato da questo evento. Ad esempio, se c'è stato un evento WriteFile, questo campo mostrerà il nome del file o della cartella che viene toccata. Se si trattava di un evento di registro, mostrava l'accesso alla chiave completa.
    • Risultato - Questo mostra il risultato dell'operazione, che codifica come SUCCESSO o ACCESSO NEGATO. Mentre si potrebbe essere tentati di assumere automaticamente che un BUFFER TROPPO PICCOLO significa che qualcosa di veramente brutto è successo, che in realtà non è il caso per la maggior parte del tempo.
    • Dettaglio - informazioni aggiuntive che spesso non si traducono nel normale mondo di risoluzione dei problemi di geek.

    Puoi anche aggiungere alcune colonne aggiuntive alla visualizzazione predefinita andando su Opzioni -> Seleziona colonne. Questo non sarebbe il nostro consiglio per il tuo primo stop quando inizi a testare, ma dal momento che stiamo spiegando le colonne, è già da menzionare.

    Uno dei motivi per l'aggiunta di ulteriori colonne allo schermo è che puoi filtrare molto rapidamente da quegli eventi senza essere sommerso dai dati. Ecco alcune delle colonne aggiuntive che utilizziamo, ma potresti trovarne l'uso per altre nell'elenco, a seconda della situazione.

    • Riga di comando - mentre puoi fare doppio clic su qualsiasi evento per vedere gli argomenti della riga di comando per il processo che ha generato ciascun evento, può essere utile vedere tutte le opzioni a colpo d'occhio.
    • Nome della ditta - il motivo principale per cui questa colonna è utile è che puoi semplicemente escludere rapidamente tutti gli eventi Microsoft e restringere il tuo monitoraggio a tutto ciò che non fa parte di Windows. (Dovrai assicurarti di non avere strani processi rundll32.exe in esecuzione utilizzando Process Explorer, dato che potrebbero nascondersi malware).
    • PID padre - questo può essere molto utile quando si sta risolvendo un processo che contiene molti processi figli, come un browser Web o un'applicazione che continua a lanciare cose imprecise come un altro processo. Puoi quindi filtrare dal PID padre per assicurarti di catturare tutto.

    Vale la pena notare che è possibile filtrare i dati delle colonne anche se la colonna non viene visualizzata, ma è molto più semplice fare clic con il pulsante destro del mouse e filtrare rispetto a farlo manualmente. E sì, abbiamo menzionato di nuovo i filtri anche se non li abbiamo ancora spiegati.

    Esaminando un singolo evento

    Visualizzare le cose in una lista è un ottimo modo per vedere rapidamente molti dati diversi contemporaneamente, ma non è sicuramente il modo più semplice per esaminare una singola porzione di dati, e ci sono solo tante informazioni che puoi vedere nel elenco. Per fortuna puoi fare doppio clic su qualsiasi evento per accedere a un tesoro di informazioni extra.

    La scheda Evento predefinita ti dà informazioni che sono in gran parte simili a ciò che hai visto nella lista, ma aggiungeranno un po 'più di informazioni alla festa. Se stai guardando un evento del file system, sarai in grado di vedere alcune informazioni come gli attributi, il tempo di creazione del file, l'accesso che è stato tentato durante un'operazione di scrittura, il numero di byte che sono stati scritti e la durata.

    Passare alla scheda Processo ti dà un sacco di grandi informazioni sul processo che ha generato l'evento. Mentre generalmente si desidera utilizzare Process Explorer per gestire i processi, può essere molto utile avere molte informazioni sul processo specifico che ha generato un evento specifico, specialmente se si tratta di qualcosa che è accaduto molto rapidamente e quindi è scomparso dal lista dei processi. In questo modo i dati vengono catturati.

    La scheda Stack è qualcosa che a volte può essere estremamente utile, ma spesso i tempi non saranno affatto utili. Il motivo per cui vorresti esaminare lo stack è che puoi risolvere i problemi esaminando la colonna Module per qualsiasi cosa che non sembra abbastanza corretta.

    Ad esempio, immagina che un processo stia costantemente cercando di interrogare o accedere a un file che non esiste, ma non eri sicuro del perché. Puoi guardare attraverso la scheda Stack e vedere se ci sono dei moduli che non sembrano giusti, e poi cercarli. Potresti trovare un componente obsoleto o addirittura malware che causa il problema.

    Oppure potresti scoprire che non c'è niente di utile qui per te, e va bene anche così. Ci sono molti altri dati da guardare.

    Note sui buffer overflow

    Prima ancora di procedere, vorremmo annotare un codice di risultato che inizierete a vedere molto nella lista e, basandomi su tutta la tua conoscenza di geek fino ad ora, potresti dare un po 'di matto. Quindi se inizi a vedere BUFFER OVERFLOW nell'elenco, per favore non dare per scontato che qualcuno stia tentando di hackerare il tuo computer.

    Pagina successiva: filtraggio dei dati acquisiti da Process Monitor