Hvordan Malware huder og installeres som en Service

Innhold


    Innledning

    Tjeneste Configuration

    Listing og analysere tjenestene

    Ta en tjeneste

    Konklusjon

    Introduksjon

    En vanlig misforståelse når man jobber med å fjerne malware fra en datamaskin er at det eneste stedet en infeksjon vil starte fra er i en av oppføringene oppregnet av HijackThis. For det meste er disse oppføringene er mest vanlig, men det er ikke alltid tilfelle. I det siste er det flere infeksjoner installere en del av seg selv som en tjeneste. Noen eksempler er Ssearch.biz og Home Search Assistant.

    Når du rengjør en datamaskin standardmetoden er å rydde opp i Run oppføringer og de andre mer vanlige oppstart oppføringer først. For det meste vil det være nok til å fjerne infeksjonen. Problemet oppstår når loggen ser rent og likevel er det fortsatt problemer. Ett sted å fortsette å se etter infeksjonen er i operativsystemets tjenester for å se om det er en tjeneste som ikke hører hjemme der, og kan muligens være lasting infeksjonen. En tjeneste er et program som startes automatisk av Windows NT /XP /2000/2003 ved oppstart eller gjennom noen annen måte, og brukes vanligvis for programmer som kjører i bakgrunnen.

    Vær oppmerksom på, for å riktig bruk instruksjonene nedenfor må du enten kjøre programmer med administratorrettigheter.

    Tjeneste Configuration

    En tjeneste er lastet ved oppstart enten ved å bruke svchost.exe eller ved vinduer direkte å starte applikasjonen. Hvis en tjeneste er lastet direkte av vinduer, kan det tilknyttede filnavnet som lanserer tjenesten finnes i ImagePath under følgende registeroppføringen

    HKEY_LOCAL_MACHINE \\ SYSTEM \\ CurrentControlSet \\ Services \\ tjenesteAnmeldelser

    Når tjenesten blir lansert av svchost.exe, det vil bli plassert i en bestemt tjeneste gruppe, som deretter lansert av svchost.exe. En liste over disse gruppene og hvilke tjenester som er lansert under dem finner du her:

    HKEY_LOCAL_MACHINE \\ Software \\ Microsoft \\ Windows NT \\ Currentversion \\ Svchost

    Under denne tasten finner du ulike grupper (netsvcs, LocalServices, etc) som hver inneholder flere tjenester som vil bli lansert når gruppen er lastet med svchost.exe. Disse gruppene er lastet med følgende kommando:

    svchost.exe -k netsvcs

    Det vil laste alle tjenester som finnes under netsvcs gruppen i over nøkkelen og vises som en prosess under prosessen liste. Så hver gang en ny gruppe er lastet med svchost.exe, vil du finne en ny svchost.exe prosess oppført i minnet. Det er av denne grunnen til at det finnes flere svchost.exe prosesser som er oppført på en maskin. Hvis du bruker Windows XP, som denne kommandoen er ikke tilgjengelig på Windows 2000, kan du se hvilke tjenester hver svchost.exe prosess er å kontrollere ved å kjøre følgende kommando fra en ledetekst: Tasklist /SVC

    Når en Tjenesten lanseres på denne måten, kan den faktiske filnavnet for tjenesten finnes her:

    HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Services\\servicename
    \\Parameters\\\\ServiceDll

    Verdien av ServiceDLL er selve tjenesten fil som vi ønsker å være opptatt av.

    Listing og analysere tjenestene

    For å få en rapport over konfigurerte tjenester på datamaskinen satte jeg sammen en enkel batch-fil som bruker Bobbi Flekman sin swsc program program for å få en liste over de tjenester og åpne en notisblokk. Ikke noe fancy, men sparer tid ved diagnostisering

    Denne filen finner du her:. Getservices.zip

    For å bruke script, du bare pakke ut filen på C: stasjonen, og du vil nå finne en katalog som heter c: \\ getservice. Inni den katalogen er en batch-fil som heter getservice.bat og psservice.exe filen. Bare dobbeltklikk på getservice.bat filen og det vil skape en notisblokk som inneholder en liste over tjenester som er installert på maskinen du kjører den på. Merk: Du må kjøre som en bruker med administrator privaleges eller dette skriptet vil enten ikke fungere eller ikke gi nok informasjon

    Utgangen av skriptet vil inneholde informasjon om hver tjeneste installert på din datamaskin.. Viktig informasjon å se på i service oppføringene er ::
    SERVICE_NAME Dette er navnet på tjenesten går og er hva det er lagret i registeret etter. BINARY_PATH_NAME Dette er selve filen som blir brukt til å lansere tjenesten. DISPLAY_NAME Dette er navnet på tjenesten vises under i services.msc i kontrollpanelet. Navn start Dette forteller deg hvis tjenesten er deaktivert, startes manuelt, eller automatisk startet.

    Nedenfor er eksempler på hvordan en oppføring vil se på to ulike typer infeksjoner forklaringer på hvordan du skal tolke informasjonen gitt:
    SERVICE_NAME: O ?? 'Zrt ñ å È ² $ Ó? (null) TYPE: 20 WIN32_SHARE_PROCESS starttype: 2 AUTO_START ERROR_CONTROL: 0 IGNORE BINARY_PATH_NAME: C: \\ WINDOWS \\ system32 \\ d3xi.exe /s LOAD_ORDER_GROUP: TAG: 0 DISPLAY_NAME: Remote Procedure Call (RPC) Helper avhengig: SERVICE_START_NAME: Local Home Search Assistant Eksempel

    The Home Search Assistant bruker en tjeneste, blant standard Run oppføringer, som en del av sin infeksjon. De viktigste egenskapene vi kan samle fra ovenstående informasjon er som følger:


      er Remote Procedure Call (RPC) Helper

      Den har navn Det er visningsnavn i Services kontrollpanelet en tjeneste ?. av O ?? 'Zrt ñ å È ² $ jeg i registeret

      Det startes automatisk ved oppstart

      Filen som starter denne tjenesten er C: \\ WINDOWS \\ system32 \\ d3xi.exe

      Bevæpnet med denne informasjonen vi nå vet hva registeroppføringer tjenesten er lagret i, og filen som blir brukt som en del av Home Search Assistant infeksjon.
      < p> Det neste eksempelet er for Ssearch.biz kaprer, men den er lastet på en litt annen måte, forårsaker oss til å jobbe litt mer med å finne ut hva infeksjonen filen er.
      SERVICE_NAME: pnpsvc Gir Plug and Play SVC enheter støtte TYPE: 120 WIN32_SHARE_PROCESS INTERACTIVE_PROCESS starttype: 2 AUTO_START ERROR_CONTROL: 1 NORMAL BINARY_PATH_NAME: C: \\ WINNT \\ system32 \\ svchost.exe -k netsvcs LOAD_ORDER_GROUP: TAG: 0 DISPLAY_NAME: Plug and Spill SVC tjeneste avhengig: SERVICE_START_NAME: Local SSearch.biz Eksempel


      SSearch.biz kaprer bruker en tjeneste som en del av sin infeksjon i tillegg. De viktigste egenskapene vi kan samle fra ovenstående informasjon er som følger:


        Det er visningsnavn i Services kontrollpanelet er Plug and Play SVC tjeneste

        Den har et navn pnpsvc tjeneste i registeret

        Det startes automatisk ved oppstart

        Filen som starter denne tjenesten er C: \\ WINNT \\ system32 \\ svchost.exe -k netsvcs

        Nå er denne informasjonen, men nyttig, er noe ubrukelig uten å grave rundt videre i registeret. Vi vet at filen som starter tjenesten er svchost.exe, men det er et legitimt program, så vi ønsker ikke å slette den. Hvordan kan vi da finne den aktuelle filen til å fjerne? Husk hva vi diskuterte ovenfor om hvordan svchost.exe fungerer?

        Fra BINARY_PATH_NAME vi vet at filen er en del av netsvcs gruppen. Det betyr at når svchost laster som gruppe, som kan inneholde mange tjenester, det vil også laste ned filen knyttet til denne tjenesten. For å finne den faktiske filnavnet for denne tjenesten, må vi sjekke følgende registernøkkel:

        HKEY_LOCAL_MACHINE \\ SYSTEM \\ CurrentControlSet \\ Services \\ pnpsvc \\ Para \\\\ ServiceDLL

        Verdien av ServiceDLL Nøkkelen er selve filen som vi ønsker å bli kvitt.

        I neste avsnitt vil vi diskutere hvordan å fjerne tjenesten via slette oppføringer i registeret.

        Fjerne en tjeneste

        Ta en tjeneste manuelt krever fjerne oppføringer fra registeret. Dette kan være en farlig oppgave for helsen til datamaskinen. Hvis du ikke føler deg komfortabel med å gjøre dette, så kan du spørre noen andre til å hjelpe med dette trinnet i opprydding prosedyre som gjør en feil kan føre til at datamaskinen du arbeider på å ikke fungere skikkelig.

        Tjeneste oppføringer er lagret i registeret under en seksjon kalt ControlSet. En ControlSet er plassert under følgende nøkkel:

        HKEY_LOCAL_MACHINE \\ SYSTEM

        En ControlSet er en komplett kopi av konfigurasjonen som brukes til å kunne lansere tjenester og andre viktige filer og amp; drivere for Windows. Når du ser under ovenfor nøkkelen vil det alltid være minst to ControlSets og ett CurrentControlSet. For å få til denne opplæringen vil jeg bruke det jeg har på min maskin, som er ControlSet1 og ControlSet2 (det kan være mer opp til maksimalt 4). En av disse nummererte kontrollsett refererer til standardkonfigurasjonen som brukes når maskinene starter vanligvis opp. Den andre nummerert kontroll sett refererer til den som brukes når du velger å starte opp med den siste fungerende konfigurasjon. Den siste, CurrentControlSet, er en eksakt speilbilde av ControlSet vi hadde brukt til å starte opp i Windows, slik at hvis du gjør en endring CurrentControlSet vil det automatisk dukke opp i ControlSet det er speiling og vice-versa.

        Hvis du ønsket å vite sikkert hvilke ControlSet den CurrentControlSet peker på kan du undersøke følgende nøkkel:

        HKEY_LOCAL_MACHINE \\ SYSTEM \\ Velg

        Denne nøkkelen gir oss viktig informasjon om hvilke ControlSet ble brukt på den siste støvelen, som brukes som standard, og som er utpekt for LastKnownGoodConfiguration. Denne nøkkelen inneholder følgende verdier:
        Current Dette vil inneholde nummeret til ControlSet at vi bruker for øyeblikket og som CurrentControlSet peker til. Standard Dette vil inneholde nummeret til ControlSet som Windows bruker som standard ved oppstart. Mislyktes Dette vil indikere med ControlSet var den som feilet på siste boot. Hvis det er 0, så var det ingen feil. LastKnownGood Dette vil inneholde nummeret til ControlSet som Windows bruker når vi velger den siste fungerende konfigurasjon

        Hvis vi ønsket å fjerne en tjeneste fra registret vi ville bare trenger å fjerne det fra de nummererte ControlSets (husk manuelt CurrentControlSet er en speil av en av de nummererte de). For eksempel vil fjerne tjenesten for en SSearch.biz kaprer på maskinen min, ville vi bare slette fra registret følgende oppføringer:

        HKEY_LOCAL_MACHINE \\ SYSTEM \\ ControlSet001 \\ Services \\ pnpsvc \\ HKEY_LOCAL_MACHINE \\ SYSTEM \\ ControlSet002 \\ Services \\ pnpsvc \\

        Når vi starte på nytt, vil disse tjenestene ikke lenger bli oppført i tjenestene kontrollpanelet

        Til tider skjønt, vil malware også installere seg under disse tastene.

        HKEY_LOCAL_MACHINE \\ SYSTEM \\ ControlSet001 \\ Enum \\ Root HKEY_LOCAL_MACHINE \\ SYSTEM \\ ControlSet002 \\ Enum \\ Root

        som undernøkler kalt LEGACY_ svcname.
        Disse LEGACY_ svcname
        oppføringer skal slettes så godt, men vil vanligvis kreve at du endre rettighetene på dem for å slette dem. Bare endre sikkerhetstillatelsene på disse tastene for å Everyone (Full) og deretter slette dem.

        Konklusjon

        Å vite hvordan man skal diagnostisere en tjeneste som kjører som en malware er en viktig en del av kampene spyware. Ettersom mer og mer spyware og virus bruker denne teknikken, forståelsen av hvordan tjenestene fungerer og er konfigurert i registeret vil gjøre forskjellen mellom å fikse en datamaskin og ikke fikse det.

        Som alltid hvis du har noen kommentarer, spørsmål eller forslag om denne opplæringen ikke nøl med å fortelle oss i forumet.

        For ekspert malware fjerning hjelp, kan du be om hjelp i vår virus, trojaner, spyware og malware fjerning Logger. Anmeldelser

        - Lawrence Abrams piper Computer Advanced Spyware fjerning Tutorial BleepingComputer.com: Computer Support & Opplæringsprogrammer for begynnelsen datamaskin brukeren.