Forside › macOS- og Linux-forensik · Gennemgået oktober 2026 · Af John Nielsen
macOS samler system- og programlogs i ét binært logsystem, unified logging. Loggen kan vise logins, oplåsning, USB-tilslutninger, netværksskift og programhændelser, men den rydder løbende op efter plads og logniveau, så ældre poster forsvinder i takt med, at maskinen bruges. Sikringen skal derfor ske tidligt, og den skal omfatte både logfilerne og de hjælpefiler, der skal til for at læse dem. Denne artikel uddyber afsnittet om unified logs i macOS-artiklen med fokus på selve sikringen og verifikationen. → macOS-artefakter
Haster det? Unified Logs rydder løbende op efter plads og logniveau, så ældre poster forsvinder, mens Mac’en bruges. Ved akut behov: akut forensisk sikring; hastesager koster ekstra.
Hvordan loggen er bygget op
Unified logging gemmer ikke færdige tekstlinjer. Hver post består af en kompakt binær struktur med tidsstempel, proces, kategori, logniveau og argumenter, mens selve formatstrengen ligger i separate filer. For at gengive en læsbar linje skal tre dele kombineres:
- Tracev3-filerne i diagnostics-mappen, opdelt i undermapper efter type, fx vedvarende poster, særlige poster og signpost-data.
- Uuidtext-filerne, der indeholder formatstrengene for de programmer og biblioteker, der har logget.
- Timesync-filerne, der gør det muligt at omregne de interne tællere til faktisk tid, også på tværs af genstarter.
På en Mac ligger tracev3- og timesync-filerne under /private/var/db/diagnostics og formatstrengene under /private/var/db/uuidtext. Undermappernes navne og filernes interne version kan ændre sig med macOS-versionen, så versionen noteres sammen med sikringen.
Mangler uuidtext eller timesync, kan posterne stadig delvist læses, men tekst og tid kan blive ufuldstændige eller forkerte. Det er den hyppigste tekniske fejl ved sikring af unified logs.
Hvor længe ligger posterne?
Opbevaringen styres af systemet og afhænger af logniveau, plads og aktivitet. Ifølge Apples dokumentation gemmes debug-poster som standard kun i hukommelsen, info-poster kun når de indsamles med logværktøjet, mens default-, error- og fault-poster skrives komprimeret til disken op til en fast størrelsesgrænse, hvorefter de ældste fjernes. Standarden kan ændres med logværktøjet eller konfigurationsprofiler. Apple angiver ingen fast opbevaringstid. I praksis kan de vedvarende poster dække fra få dage til nogle uger, men det varierer meget mellem maskiner.
Det betyder to ting. For det første er hver times fortsat brug et tab af gamle poster. For det andet kan man ikke på forhånd sige, hvor langt tilbage loggen rækker. Det skal konstateres i den sikrede kopi og skrives i rapporten.
Tre måder at sikre loggen
- Logarkiv fra den kørende Mac · Systemets eget logværktøj samler tracev3, uuidtext og timesync i en arkivpakke
- Kopi af mapperne fra en logisk eller fuld indsamling · De rå filer indgår i den samlede kopi og læses bagefter
- Diagnosepakke (
sysdiagnose) · Indeholder et logarkiv og meget andet, men tager tid og ændrer mere
Logarkivet er den mest udbredte metode på en kørende Mac. Det oprettes med kommandoen log collect med administratorrettigheder, gemmes som en pakke med endelsen .logarchive og kan afgrænses til et tidsrum med parametre for starttidspunkt eller seneste periode. Til bevisformål bør der som udgangspunkt sikres alt, hvad der findes, og afgrænsningen ske i analysen. Kontrollér parametrene i værktøjets egen hjælp på den aktuelle macOS-version.
Indgår mapperne i en fuld logisk indsamling, skal det kontrolleres, at indsamlingsværktøjet har haft adgang til dem. Beskyttede systemmapper kan blive sprunget over uden fejlmelding. Sikringen af selve maskinen er beskrevet her: → Sikring af moderne Mac
Rækkefølgen ved sikring
- Notér macOS-version, systemtid og tidszone og sammenlign uret med en pålidelig kilde.
- Opret logarkivet som noget af det første efter de mest flygtige data, fordi selve indsamlingen og efterfølgende arbejde genererer nye poster.
- Gem arkivet direkte på et eksternt medie, ikke på Macens egen disk, hvor det fylder og påvirker opbevaringen af ældre poster.
- Hash arkivet. Et logarkiv er en mappe, ikke en fil. Lav enten et hashmanifest over alle filer eller pak mappen i et arkivformat og hash arkivet. → Hashmanifest for filsamlinger
- Registrér handlingen i bevisloggen med tidspunkt, kommando, værktøj og hvem der udførte den.
Læsning og analyse
Logarkivet kan læses med Macens eget værktøj på en analysemaskine eller med forensiske værktøjer, der understøtter formatet. Uanset værktøj gælder:
- Arbejd på en kopi af arkivet, og bevar originalen uberørt.
- Eksportér relevante poster i et struktureret format med alle felter, ikke kun den viste tekst.
- Kontrollér tidszonen. Visningen sker ofte i analysemaskinens lokale tid. Angiv altid, om tidsstempler er i UTC eller lokal tid. → Tidsstempelformater og konvertering
- Sammenlign værktøjer ved afgørende poster. Parsere til unified logs er komplekse, og formatet ændrer sig med macOS-versionerne.
Typiske spørgsmål, loggen kan belyse
Unified logs er sjældent den eneste kilde, men de er ofte den, der binder andre spor sammen i tid. Typiske spørgsmål i civile sager og interne undersøgelser:
- Var maskinen i brug i et bestemt tidsrum? Oplåsning, skærmlås, dvale og opvågning registreres af systemprocesser og kan give et billede af aktive perioder.
- Blev et eksternt drev tilsluttet? Montering og afmontering af volumener registreres med tidspunkt og ofte volumenets navn.
- Hvilket netværk var maskinen på? Skift mellem Wi-Fi-netværk og VPN-forbindelser kan ses og sammenholdes med firewall- og VPN-logs.
- Blev et program startet eller installeret? Programstart, installationer og sikkerhedskontroller af nye programmer efterlader poster.
- Blev der ændret i sikkerhedsindstillinger? Ændringer i fx deling, fjernadgang eller privatlivsrettigheder kan fremgå.
De konkrete processer og meddelelser, der registrerer hændelserne, skifter mellem versioner. Søgningerne skal derfor tilpasses den aktuelle macOS-version og kontrolleres mod en testmaskine, hvis en bestemt meddelelse bærer en konklusion. Apple dokumenterer ikke, hvilke systemprocesser der logger hvilke hændelser, så søgeudtryk fra andre undersøgelser er et udgangspunkt, ikke en facitliste.
Private værdier
Unified logging skjuler som standard dynamiske værdier, som programmer markerer som private, fx brugernavne, adresser og filnavne. I loggen står de som en pladsholder. Det er en beskyttelse i systemet, ikke et tegn på manipulation, og værdierne kan ikke genskabes bagefter. En post kan derfor vise, at en handling skete, men ikke altid hvem eller hvad den omfattede.
Fejlkilder i fortolkningen
- Volumen er ikke vigtighed. Loggen er ekstremt detaljeret, og mange poster er rutine. En søgning på et ord giver ofte tusindvis af hit, hvor få er relevante.
- Proces er ikke bruger. At en systemproces har logget en hændelse, siger ikke, at en bruger har udført den.
- Huller. Manglende poster kan skyldes rotation, logniveau, at processen ikke logger, eller at maskinen var slukket. → Logfiler og logrotation
- Tid på tværs af genstarter. Uden timesync-data kan tidsstempler efter en genstart blive forskudt.
- Versionsforskelle. Beskeder, kategorier og processer skifter navn mellem macOS-versioner. En bestemt meddelelse fra én version kan ikke forventes i en anden.
Hvad loggen kan og ikke kan bevise
Unified logs kan give en tæt tidslinje over systemhændelser: hvornår skærmen blev låst op, hvornår et USB-drev blev monteret, hvornår maskinen skiftede netværk. De er stærke, fordi brugeren ikke har direkte adgang til at redigere dem. De kan ikke alene vise, hvem der sad ved maskinen, og de rækker sjældent langt tilbage. De bør kombineres med FSEvents, filsystemets tidsstempler og cloudlogs i en samlet tidslinje.
Dokumentation
Logarkivets tidsdækning bør konstateres straks efter sikringen, så det tidligt står klart, om den relevante periode overhovedet er dækket, og om andre kilder skal prioriteres.
Rapporten bør angive macOS-version, metode, værktøj og version, tidsrum, som arkivet dækker (ældste og nyeste post), hash eller hashmanifest, og hvilke filtre der er brugt i analysen. Forbehold om private værdier, rotation og versionsforskelle hører med, så læseren ved, hvad fraværet af en bestemt post betyder.
Kilder og versioner
- Apple Developer: Generating log messages from your code
- Apple Developer: Viewing log messages
- Apple Developer: Logging
Senest gennemgået: oktober 2026.
Næste skridt
Del af: macOS- og Linux-forensik
Læs også: Sikring af moderne Mac: Apple silicon, T2 og logisk sikring · APFS: snapshots, kloner og betydningen for sikringen
→ Forensisk undersøgelse af en computer · For IT-sikkerhed og SOC · Tlf. 70 13 63 23 · Digital bevissikring hos Nielco IT