Hjemmeside » skole » Forstå prosessovervåking

    Forstå prosessovervåking

    I dag i denne utgaven av Geek School skal vi lære deg hvordan Process Monitor-verktøyet lar deg kikke under hetten og se hva dine favorittprogrammer virkelig gjør bak kulissene - hvilke filer de får tilgang til, registernøklene de bruk, og mer.

    SCHOOL NAVIGASJON
    1. Hva er SysInternals Tools og hvordan bruker du dem?
    2. Forstå Process Explorer
    3. Bruk Prosess Explorer til Feilsøking og diagnostisering
    4. Forstå prosessovervåking
    5. Bruk Prosess Monitor til Feilsøking og Finn Register Hacks
    6. Ved hjelp av Autoruns å håndtere oppstartsprosesser og malware
    7. Bruke BgInfo til å vise systeminformasjon på skrivebordet
    8. Bruke PsTools til å kontrollere andre PCer fra kommandolinjen
    9. Analysere og administrere filer, mapper og stasjoner
    10. Pakke opp og bruke verktøyene sammen

    I motsetning til Process Explorer-verktøyet som vi har brukt noen dager på, er Process Monitor ment å være et passivt blikk på alt som skjer på datamaskinen, ikke et aktivt verktøy for å drepe prosesser eller lukkehåndtak. Dette er som å ta en titt på en global loggfil for hver eneste hendelse som skjer på din Windows PC.

    Vil du forstå hvilke registernøkler ditt favorittprogram faktisk lagrer innstillingene i? Vil du finne ut hvilke filer en tjeneste berører og hvor ofte? Vil du se når et program kobler til nettverket eller åpner en ny prosess? Det er Process Monitor til redning.

    Vi gjør ikke mye registerhackartikler lenger, men tilbake da vi først startet, ville vi bruke Process Monitor for å finne ut hvilke registertastene som ble åpnet, og deretter gå til de registernøklene for å se hva som ville skje. Hvis du noen gang har lurt på hvordan noen nekter fant ut et registerhakk som ingen noensinne har sett, var det sannsynligvis gjennom Process Monitor.

    Prosessovervåkingsverktøyet ble opprettet ved å kombinere to forskjellige eldre skoleverktøy sammen, Filemon og Regmon, som ble brukt til å overvåke filer og registeraktivitet som deres navn innebærer. Mens disse verktøyene fremdeles er tilgjengelige der ute, og mens de passer etter dine spesifikke behov, vil du være mye bedre med Process Monitor, fordi det kan håndtere et stort antall hendelser bedre på grunn av det faktum at det var designet for å gjøre det.

    Det er også verdt å merke seg at Process Monitor alltid krever administratormodus fordi den laster en kjernedriver under hetten for å fange alle disse hendelsene. I Windows Vista og senere blir du bedt om å ha en UAC-dialog, men for XP eller 2003 må du kontrollere at kontoen du bruker, har administratorrettigheter.

    Hendelsene som prosessovervåker fanger

    Process Monitor fanger opp massevis av data, men det tar ikke opp alt som skjer på PCen. For eksempel bryr Process Monitor seg ikke om du flytter musen rundt, og det vet ikke om driverne jobber optimalt. Det kommer ikke til å spore hvilke prosesser som er åpne og kaste bort CPU på datamaskinen din - det er jobben til Process Explorer, tross alt.

    Det som gjør det er å fange opp bestemte typer I / O-operasjoner (Input / Output), enten de skjer via filsystemet, registret eller nettverket. Det vil i tillegg spore noen andre hendelser på en begrenset måte. Denne listen dekker hendelsene som den tar opp:

    • Registry - Dette kan skape nøkler, lese dem, slette dem eller spørre dem. Du blir overrasket hvor ofte dette skjer.
    • Filsystem - Dette kan være filoppretting, skriving, sletting, etc, og det kan være for både lokale harddisker og nettverksstasjoner.
    • Network - Dette vil vise kilden og destinasjonen for TCP / UDP-trafikk, men dessverre viser den ikke dataene, noe som gjør det litt mindre nyttig.
    • Prosess - Dette er hendelser for prosesser og tråder der en prosess er startet, en tråd starter eller utganger, etc. Dette kan være nyttig informasjon i visse tilfeller, men er ofte noe du vil se på i Process Explorer istedet.
    • profilering - Disse hendelsene er fanget av Process Monitor for å sjekke hvor mye prosessortid som brukes av hver prosess, og minnesbruken. Igjen vil du sannsynligvis bruke Process Explorer til å spore disse tingene mesteparten av tiden, men det er nyttig her hvis du trenger det.

    Så Process Monitor kan fange hvilken som helst type I / O-operasjon, enten det skjer via registeret, filsystemet eller nettverket - selv om de faktiske dataene som skrives ikke er fanget. Vi ser bare på at en prosess skriver til en av disse strømmene, slik at vi senere kan finne ut mer om hva som skjer.

    Prosessovervåkingsgrensesnittet

    Når du først laster opp grensesnittet Process Monitor, blir du presentert med et enormt antall rader med data, med flere data som flyr raskt, og det kan være overveldende. Nøkkelen er å ha en ide om minst hva du ser på, så vel som det du leter etter. Dette er ikke den typen verktøy du bruker en avslappende dag på å bla gjennom, for innen en veldig kort tidsperiode ser du på millioner av rader.

    Det første du vil gjøre er å filtrere de millioner av rader ned til den mye mindre delmengden med data du vil se, og vi skal lære deg hvordan du lager filtre og null på akkurat det du vil finne . Men først bør du forstå grensesnittet og hvilke data som faktisk er tilgjengelige.

    Ser på standard kolonnene

    Standard kolonnene viser massevis av nyttig informasjon, men du vil definitivt trenge litt kontekst for å forstå hvilke data hver faktisk inneholder, fordi noen av dem kan se ut som noe dårlig skjedde når de er virkelig uskyldige hendelser som skjer hele tiden under hette. Her er hva hver standard kolonne brukes til:

    • Tid - Denne kolonnen er ganske selvforklarende, den viser nøyaktig tidspunktet for at en hendelse oppstod.
    • Prosessnavn - navnet på prosessen som genererte arrangementet. Dette viser ikke hele banen til filen som standard, men hvis du svinger over feltet, kan du se nøyaktig hvilken prosess det var.
    • PID - prosess-IDen til prosessen som genererte hendelsen. Dette er veldig nyttig hvis du prøver å forstå hvilken svchost.exe-prosess som genererte hendelsen. Det er også en fin måte å isolere en enkelt prosess for overvåking, forutsatt at prosessen ikke gjenoppretter seg selv.
    • Operasjon - Dette er navnet på operasjonen som blir logget, og det er et ikon som samsvarer med en av hendelsestyper (register, fil, nettverk, prosess). Disse kan være litt forvirrende, for eksempel RegQueryKey eller WriteFile, men vi prøver å hjelpe deg gjennom forvirringen.
    • Sti - Dette er ikke banen i prosessen, det er veien til det som ble jobbet på av denne hendelsen. For eksempel, hvis det var en WriteFile-hendelse, vil dette feltet vise navnet på filen eller mappen som berøres. Hvis dette var en registreringshendelse, ville det vise full nøkkel tilgang.
    • Resultat - Dette viser resultatet av operasjonen, som koder som SUCCESS eller ACCESS DENIED. Mens du kanskje er fristet til å automatisk anta at en BUFFER FOR SMALL betyr noe virkelig dårlig skjedde, er det egentlig ikke tilfelle det meste av tiden.
    • Detalj - tilleggsinformasjon som ofte ikke oversettes til den vanlige nøkternes feilsøkingsverden.

    Du kan også legge til flere ekstra kolonner i standardvisningen ved å gå til Valg -> Velg kolonner. Dette ville ikke være vår anbefaling for ditt første stopp når du begynner å teste, men siden vi forklarer kolonner, er det verdt å nevne allerede.

    En av grunnene til å legge til flere kolonner på skjermen, er at du raskt kan filtrere etter hendelsene uten å bli overveldet med data. Her er noen av de ekstra kolonnene vi bruker, men du kan finne bruk for noen andre i listen, avhengig av situasjonen.

    • Kommandolinje - mens du kan dobbeltklikke på noe arrangement for å se kommandolinjeargumentene for prosessen som genererte hver hendelse, kan det være nyttig å raskt se alle alternativene.
    • selskapsnavn - Hovedårsaken til at denne kolonnen er nyttig, er at du enkelt kan ekskludere alle Microsoft-hendelser raskt og begrense overvåkingen til alt annet som ikke er en del av Windows. (Du vil være sikker på at du ikke har noen rare rundll32.exe prosesser som kjører ved hjelp av Process Explorer, siden de kan skjule skadelig programvare).
    • Foreldre PID - Dette kan være svært nyttig når du feilsøker en prosess som inneholder mange barnprosesser, som en nettleser eller et program som fortsetter å lansere sketchy ting som en annen prosess. Du kan da filtrere etter foreldre PID for å sikre at du fanger alt.

    Det er verdt å merke seg at du kan filtrere etter kolonnedata selv om kolonnen ikke vises, men det er mye lettere å høyreklikke og filtrere enn å gjøre det manuelt. Og ja, vi nevnte filtre igjen, selv om vi ikke har forklart dem enda.

    Undersøkelse av en enkelt hendelse

    Å se ting på en liste er en fin måte å raskt se mange forskjellige datapunkter på, men det er definitivt ikke den enkleste måten å undersøke et enkelt data, og det er bare så mye informasjon du kan se i liste. Heldigvis kan du dobbeltklikke på noe arrangement for å få tilgang til en skattekiste med ekstra informasjon.

    Standardhendelse-fanen gir deg informasjon som stort sett ligner på det du så i listen, men vil legge til litt mer informasjon til festen. Hvis du ser på en filsystemhendelse, kan du se visse opplysninger som attributter, filopprett tid, tilgangen som ble forsøkt under en skriveoperasjon, antall byte som ble skrevet og varigheten.

    Bytter til Prosess-fanen gir deg masse god informasjon om prosessen som genererte hendelsen. Mens du vanligvis vil bruke Process Explorer til å håndtere prosesser, kan det være veldig nyttig å ha mye informasjon om den spesifikke prosessen som genererte en bestemt hendelse, spesielt hvis det er noe som skjedde veldig raskt og deretter forsvant fra prosessliste. På denne måten blir dataene tatt.

    Stack-kategorien er noe som noen ganger vil være ekstremt nyttig, men ofte vil det ikke være nyttig i det hele tatt. Grunnen til at du vil se på stakken, er at du kan feilsøke ved å undersøke modulens kolonne for alt som ikke ser helt riktig ut.

    For eksempel, tenk at en prosess hele tiden forsøkte å spørre eller få tilgang til en fil som ikke eksisterer, men du var ikke sikker på hvorfor. Du kan se gjennom Stack-kategorien og se om det var noen moduler som ikke så riktig ut, og deretter undersøke dem. Du kan finne en utdatert komponent, eller til og med skadelig programvare, forårsaker problemet.

    Eller kanskje du finner ut at det ikke er noe nyttig her for deg, og det er bare bra også. Det er mange andre data å se på.

    Notater om bufferoverflyt

    Før vi går videre, vil vi legge merke til en resultatkode som du skal begynne å se mye på listen, og basert på all din geek kunnskap så langt, kan du freak out litt om. Så hvis du begynner å se BUFFER OVERFLOW i listen, må du ikke anta at noen prøver å hacke datamaskinen din.

    Neste side: Filtrering av dataene som behandler skjermbilder