Forside › Windows-forensik · Gennemgået oktober 2026 · Af John Nielsen
Spørgsmålet “blev programmet kørt?” besvares på Windows typisk med tre artefakter: Prefetch, Amcache og Shimcache. Kun Prefetch er et direkte spor efter kørsel, med antal kørsler og de seneste kørselstidspunkter. Amcache og Shimcache viser først og fremmest, at en programfil har været til stede og er registreret af systemet, og deres tidsstempler betyder noget andet end kørselstid. Den hyppigste fejl i rapporter er at sætte lighedstegn mellem de tre.
Artefakterne er nævnt kort i Windows-artefakter. Her gennemgås de i dybden med fokus på, hvad de kan bære.
Prefetch
Prefetch er en ydelsesfunktion. Når et program startes, registrerer Windows, hvilke filer og mapper programmet indlæser i de første sekunder, så næste opstart kan gå hurtigere. Resultatet gemmes som en pf-fil i Prefetch-mappen under Windows-mappen. Filnavnet består af programmets navn og en hashværdi beregnet ud fra stien, så samme program kørt fra to forskellige placeringer giver to pf-filer.
En pf-fil indeholder typisk:
- programmets navn,
- antal kørsler,
- tidspunkterne for de seneste kørsler, i nyere Windows-versioner op til otte,
- en liste over filer og mapper, programmet indlæste ved opstart,
- oplysninger om volumen, herunder serienummer og oprettelsestid.
Listen over indlæste filer er ofte overset. Den kan vise, at et program indlæste en bestemt fil eller en fil fra et bestemt drev, fx et USB-drev med et kendt volumenserienummer. Det kobler programkørslen til et medie.
Pf-filens oprettelsestid ligger typisk tæt på første kørsel, og ændringstiden tæt på seneste kørsel, men forskydninger på nogle sekunder er normale, fordi filen skrives, efter programmet er startet.
Begrænsninger. Prefetch er ofte slået fra på servere og kan være slået fra via registreringsdatabasen. Antallet af pf-filer er begrænset, og grænsen afhænger af versionen, så de ældste fjernes, når den nås. Formatet er komprimeret fra Windows 10 og kræver værktøjer, der kan dekomprimere det. Microsoft har ikke offentliggjort formatet; beskrivelserne bygger på uafhængig analyse, og fortolkningen bør derfor støttes af flere kilder.
Amcache
Amcache.hve er en hive i registreringsformat, der bruges af Windows’ kompatibilitetsfunktioner. Den registrerer programfiler og installerede programmer med oplysninger som:
- fuld sti og filnavn,
- SHA-1-hashværdi af filen (for store filer kun af den første del),
- filstørrelse, version, udgiver og kompileringstidspunkt,
- installationsoplysninger for programmer.
SHA-1-værdien er Amcaches største styrke. Den gør det muligt at identificere præcis den fil, der lå på systemet, også selvom den senere er slettet eller omdøbt, og at slå den op i lister over kendte filer; se Hashlister og kendte filer.
Amcache er i nyere Windows-versioner ikke et pålideligt bevis for kørsel. Filer kan blive registreret ved en scanning, ved installation eller blot ved tilstedeværelse i bestemte mapper. Nøglens LastWrite-tid viser, hvornår posten blev skrevet, ikke hvornår programmet kørte. Hvornår og hvordan Amcache opdateres, har skiftet mellem Windows-versioner, så en post bør behandles som bevis for, at filen fandtes, og kun som tegn på kørsel, hvis andre kilder peger samme vej.
Shimcache (AppCompatCache)
Shimcache ligger i SYSTEM-hiven og bruges til at afgøre, om et program kræver kompatibilitetstilpasninger. Den indeholder en liste over programfiler med sti og et tidsstempel.
To forhold skal forstås:
- Tidsstemplet er filens ændringstid fra filsystemet, ikke tidspunktet for registrering eller kørsel.
- Listen skrives til registreringsdatabasen ved nedlukning. Poster fra den aktuelle opstart ligger kun i hukommelsen, indtil systemet lukkes ned korrekt. En hukommelsessikring kan derfor indeholde nyere poster end registreringsdatabasen.
I ældre Windows-versioner havde posterne et felt, der antydede kørsel. I nyere versioner findes det ikke, og Shimcache viser derfor kun, at systemet har registreret filen. Rækkefølgen i listen afspejler, hvornår posterne er tilføjet eller opdateret, og kan bruges til en relativ ordning, men ikke til præcise tidspunkter.
Sammenligning
- Prefetch · Viser kørsel: Ja, når funktionen er aktiv · Tidsstempel betyder: Første og seneste kørsler · Særlig styrke: Antal kørsler, indlæste filer
- Amcache · Viser kørsel: Ikke pålideligt · Tidsstempel betyder: Hvornår posten blev skrevet · Særlig styrke: SHA-1 af filen
- Shimcache · Viser kørsel: Nej i nyere versioner · Tidsstempel betyder: Filens ændringstid · Særlig styrke: Spor af filer, der er slettet
Andre kilder supplerer: BAM og UserAssist i registreringsdatabasen kan vise kørsel pr. bruger, hændelse 4688 viser procesoprettelse, hvis revisionen er slået til, og antivirus- og EDR-logs kan vise både kørsel og blokering. Se fx Defender-logs og karantæne.
Typiske fejlslutninger
- Shimcaches tidsstempel angives som kørselstidspunkt. Det er filens ændringstid, som kan ligge år før.
- En Amcache-post tolkes som bevis for, at brugeren startede programmet. Posten viser tilstedeværelse.
- Fravær af en pf-fil tolkes som bevis for, at programmet aldrig kørte. Prefetch kan være slået fra, filen kan være udskiftet, eller grænsen for antal filer kan være nået.
- Kørsler af systemets egne processer, opdateringer eller antivirus tolkes som brugeraktivitet.
- Kørsel tilskrives en bestemt bruger alene ud fra Prefetch, som er systembred og ikke angiver konto.
Den sidste fejl er vigtig. Prefetch siger, at programmet kørte på computeren, ikke under hvilken konto. Koblingen til en bruger skal komme fra BAM, UserAssist, procesoprettelse i hændelsesloggen eller tilsvarende.
Brug i en sag
I sager om sletteprogrammer, fjernadgangsværktøjer eller kopiering af data kan kombinationen være stærk: Amcache identificerer filen med en hashværdi, Prefetch viser første og seneste kørsel og antal kørsler, og BAM eller UserAssist knytter kørslen til en konto. Placeret i en tidslinje sammen med logon, filaktivitet og netværk kan det give et sammenhængende billede. Hvordan sletteværktøjer i øvrigt efterlader spor, er beskrevet i Anti-forensics.
Omdøbte programmer og programmer på flytbare medier
Et program kan være omdøbt for at ligne noget harmløst. Prefetch registrerer det navn, filen havde ved kørsel, og stiens hashværdi, så et omdøbt program får sin egen pf-fil. Amcaches SHA-1-værdi afslører derimod, om to filer med forskellige navne er den samme fil. Kombinationen gør det muligt at vise, at fx et kendt fjernadgangsværktøj har ligget under et andet navn.
Programmer kørt direkte fra et USB-drev eller et netværksdrev efterlader også spor. Stien i Prefetch og Shimcache viser drevbogstav eller netværkssti, og listen over indlæste filer i pf-filen kan indeholde volumenserienummeret. Det kan sammenholdes med USB-sporene i registreringsdatabasen og med selve mediet, hvis det er sikret.
Hvad artefakterne kan og ikke kan bevise
Prefetch kan vise, at et program kørte på computeren, hvor mange gange og hvornår de seneste gange var. Amcache kan identificere filen entydigt. Shimcache kan vise, at en fil har været til stede, også efter sletning. Ingen af dem viser, hvad programmet gjorde, fx hvilke filer et sletteprogram faktisk slettede, eller hvilke data et synkroniseringsprogram sendte. Det kræver programmets egne logs eller konfiguration, filsystemets journal og netværksspor.
Sikring og verifikation
Alle tre artefakter udtrækkes fra en forensisk kopi. Prefetch-mappen ændres, hver gang et program startes, også et analyseværktøj startet direkte på den undersøgte maskine. Amcache og SYSTEM-hiven skal tages med transaktionslogs; se Registreringsdatabasen i en undersøgelse. Er maskinen tændt, og er Shimcache vigtig, bør hukommelsen overvejes sikret før nedlukning.
Afgørende værdier bør parses med to værktøjer, fordi formaterne har skiftet mellem Windows-versioner og ikke er officielt dokumenteret.
Dokumentation
Angiv for hvert fund: artefakt og kildefil, Windows-version, værktøj og version, rå værdi og fortolkning. Skriv eksplicit, om fundet viser kørsel, tilstedeværelse eller ændring af filen, og hvilken anden kilde der knytter handlingen til en bruger.
Kilder og versioner
Senest gennemgået: oktober 2026.
Næste skridt
- RDP-spor: fjernskrivebord i logs, register og bitmap-cache
- Active Directory og domænecontroller-logs: konti, grupper og nulstillinger
- Filserverrevision: hvem åbnede filen?
Del af: Windows-forensik
Læs også: Registreringsdatabasen i en undersøgelse: hives, NTUSER.DAT og transaktionslogs · NTFS i dybden: MFT, $UsnJrnl, $LogFile og tidsstemplerne $SI og $FN
→ Forensisk undersøgelse af en computer · For IT-sikkerhed og SOC · Tlf. 70 13 63 23 · Digital bevissikring hos Nielco IT