This guide continues our ongoing series exploring digital artifacts found on Windows computers and their practical meaning during an investigation. With each new topic, the puzzle becomes more complex because these traces rarely exist in isolation. Modern forensic best practices rely heavily on cross-checking different types of artifacts against one another. By connecting these dots, investigators do more than just establish isolated facts – they build a solid, reliable conclusion that can stand up in court.
Here, we turn our attention to the architectural core of the OS. We concentrate entirely on the non-user-specific system files generated natively by Windows 10 and Windows 11, primarily those located under the C:\Windows path. By analyzing these artifacts, investigators can uncover evidence showing exactly what programs were run, whether data was stolen, and even clues about a user’s physical presence at the keyboard.
We intentionally ignore several major components to maintain a targeted focus. Files representing Windows Registry hives and Windows Event Logs (.evtx) are out of scope; check out forensic analysis of Windows 10 and 11 Event Logs and investigating the Windows Registry. We also omit files created by third-party or non-system programs, including artifacts generated by native software like Microsoft Edge, unless stored under the system root. Finally, the C:\ProgramData\ directory – housing non-user-specific application configurations and data like the Windows Search Index – is excluded and will be covered in a separate blog post.
Note: This guide assumes a solid understanding of Windows internals, file system structures, and standard forensic collection methods. It is designed as a practical technical reference for experienced examiners and security researchers conducting deep-dive analysis. Keep in mind that artifact behavior and its evidentiary value can shift depending on the specific OS build, edition (client vs. server), audit policies, logging configurations, retention limits, and hardware support (like Modern Standby). Always validate these variables on your target system before drawing firm conclusions.
A practical rule in this field is that hardcoded paths are not always what they look like. Relying on the absolute path C:\Windows\ during live triage or automated collection is a common source of errors if investigating a dual-boot setup or a complex deployment.
When investigating a live system, it’s best to start with Windows environment variables such as %windir% or %SystemRoot% instead of assuming C:\Windows. They resolve to the active system directory, even if Windows is installed in an unusual location. Windows also uses a number of hidden, system-managed special folders like %AppData% and %LocalAppData%, plus user root paths under %UserProfile% (or %HomeDrive%%HomePath%). Those folders contain lots of traces left by a specific Windows user. We’ll return to them in another article; for now, we’ll focus on system-wide artifacts under the Windows directory.
“Noise” is high-volume, constantly changing data that usually adds little value in broad triage. Digging through it can slow you down, clutter timelines, and create avoidable false positives. A good default is to exclude the items below – then keep or sample them when your case specifically involves that subsystem:
%WinDir%\Temp\*): A catch-all for installer leftovers and app debris. It changes constantly, and timestamps here are often messy, which makes clean timeline work harder.%WinDir%\Prefetch\ReadyBoot\*.etl): Circular ETL files used to optimize boot via SuperFetch/SysMain. They roll over quickly and mostly contain performance-focused data, so they’re rarely the first place to look for execution attribution.%SystemDrive%\PerfLogs\*and %WinDir%\System32\LogFiles\WMI\*): These directories hold continuous, real-time hardware and software performance traces. They are generally low priority unless your case specifically involves resource abuse, performance tampering, or related instrumentation.%WinDir%\ServiceProfiles\LocalService\AppData\Local\Microsoft\Windows Defender\*): Defender updates and transient inspection files can generate thousands of artifacts. Useful for Defender-focused cases, but otherwise they tend to drown out higher-signal entries.System Resource Utilization Monitor (SRUM) Database
SRUM is one of the more useful system artifacts for understanding application and network activity over time. Depending on the tables you parse, it can help tie activity back to executables (including names/paths) and user SIDs, and it provides timeframe-based telemetry for usage and network behavior. Windows 10 and Windows 11 use SRUM as part of ongoing background diagnostics for things like network usage, battery, and application health. Telemetry is recorded at short intervals and written to an Extensible Storage Engine (ESE) database named srudb.dat. For a deeper dive, see Analyzing the Windows SRUM Database.
%WinDir%\System32\sru\SRUDB.datSOFTWARE Registry hive for global network profile context.Windows Prefetch Files
Windows Prefetch files are cache artifacts created by the Windows prefetching mechanism (Prefetcher/SysMain) to speed up application launches. During the early phase of execution (often described as roughly the first ten seconds), Windows tracks the files and memory pages an executable touches and writes a summary to disk.
%WinDir%\Prefetch\*.pf.pf file is strong evidence that a specific binary ran on the system (with the usual artifact caveats)..pf file may still remain, preserving useful historical traces until it is overwritten or removed.Program Compatibility Assistant (PCA) Databases
The PCA service (PcaSvc) monitors legacy applications and applies compatibility shims to keep older software working on newer Windows builds. In Windows 11 22H2 and later, researchers have documented text-based PCA telemetry files (for example, PcaAppLaunchDic.txt and PcaGeneralDb*.txt) within the appcompat area.
%WinDir%\appcompat\pca\PcaAppLaunchDic.txt and %WinDir%\appcompat\pca\PcaGeneralDb*.txtNTUSER.DAT Registry hive (especially UserAssist) and line them up with Security.evtx Event ID 4624 (Successful Logon), where available, to support user attribution.Windows Diagnostic Infrastructure (WDI) StartupInfo
The Windows Diagnostic Infrastructure (WDI) monitors system performance and diagnostics during the boot sequence. As part of this process, the StartupInfo mechanism records resource consumption data for applications launching at startup. These records are saved as XML files mapped to individual user Security Identifiers (SIDs) – typically found under %WinDir%\System32\WDI\LogFiles\StartupInfo\. The metrics captured in these logs include precise measurements of CPU time and disk input/output (I/O). These metrics affect values displayed in Task Manager – Startup apps – Startup impact. High impact apps are those consuming >1s CPU time or >3 MB disk I/O.
%WinDir%\System32\WDI\LogFiles\StartupInfo\<SID>_StartupInfo<index>.xmlNTUSER.DAT and SOFTWARE, and use Security.evtx Event ID 4624 to anchor the logon window.Modern Standby and SleepStudy Traces
On systems that support Modern Standby (or where SleepStudy data is present), Windows produces SleepStudy-related ETLs and reports to track power state transitions and battery drain. Depending on the device and build, this can include files like UserNotPresentSession.etl.
%WinDir%\System32\SleepStudy\*.etlWindows Management Instrumentation (WMI) Repository
WMI is a core administrative framework that stores class definitions, instances, and event subscription components in proprietary binary repository files (including OBJECTS.DATA, INDEX.BTR, and MAPPING.MAP).
%WinDir%\System32\wbem\Repository\ (and %WinDir%\System32\wbem\AutoRecover\)wbem\AutoRecover and can help re-establish persistence after repository rebuilds.Microsoft-Windows-WMI-Activity/Operational and Microsoft-Windows-PowerShell/Operational. PowerShell Event ID 4104 (Script Block Logging) is especially helpful when enabled and when relevant script blocks were captured.SetupAPI Device and Application Logs
SetupAPI manages device and driver installation and writes chronological entries to logs such as setupapi.dev.log and setupapi.app.log.
%WinDir%\inf\setupapi.dev.log and %WinDir%\inf\setupapi.app.logUSBSTOR and MountedDevices in the SYSTEM hive to connect physical hardware to drive letters, and compare with ShellBags to support file-browsing activity.Wi-Fi Event Trace Logs (WLAN AutoConfig)
Windows can keep circular ETL traces for wireless diagnostics (for example, Wifi.etl) tied to WLAN AutoConfig and related ETW providers.
%WinDir%\System32\LogFiles\WMI\Wifi.etlSOFTWARE hive (for example, Microsoft\Windows NT\CurrentVersion\NetworkList) to add longer-term context about saved and previously observed networks.Software Usage Metrics (SUM) and User Access Logging (UAL) (Windows Server only)
UAL tracks incoming client requests to Windows Server roles and stores data in ESE databases under System32\LogFiles\Sum. It’s primarily a server artifact, but it’s worth calling out if you work in mixed client/server investigations.
%WinDir%\System32\LogFiles\Sum\The following artifacts are usually less critical for common cases like data theft or standard unauthorized access. They’re still worth knowing about, but they tend to offer lower return on time unless your hypothesis points directly to them.
Windows Setup and Panther Logs
The Panther engine generates logs (such as setupact.log and setuperr.log) that document Windows installation and upgrade activity.
%WinDir%\Panther\setupact.log and %WinDir%\Panther\setuperr.logSYSTEM Registry hive.Windows System Crash Dumps (Minidumps)
When the kernel hits a fatal exception, Windows can write crash data to disk, including small dump files in the Minidump directory.
%WinDir%\Minidump\*.dmp (and the full dump at %WinDir%\MEMORY.DMP)AutoLogger Event Trace Logs
Some diagnostic subsystems skip Event Viewer and write directly to binary .etl files, such as AutoLogger-Diagtrack-Listener.etl.
%WinDir%\System32\LogFiles\WMI\AutoLogger-Diagtrack-Listener.etlWindows Font Cache
Windows caches font metrics in binary files (such as FNTCACHE.DAT) to speed up rendering.
%WinDir%\System32\FNTCACHE.DATNTUSER.DAT).File system artifacts give you the raw material to reconstruct an incident, but the real value comes from connecting the dots across multiple sources. A Prefetch file may suggest execution; tying it to SRUM network telemetry and SetupAPI USB installation evidence can support a much stronger narrative around a potential exfiltration event.
Even the best forensic tools won’t make investigative decisions for you. Parsers can organize data, but interpreting intent, building a clean timeline, and supporting attribution still takes an investigator applying informed judgment. To streamline collection and save time for analysis, consider using Elcomsoft Quick Triage. We developed this utility to quickly collect a wide range of system artifacts from live systems, disk images, or mounted volumes – so you can spend more time on interpretation and case strategy.
We are grateful to the members of the forensic community whose research continues to drive the industry forward:
Elcomsoft Quick Triage is a tool designed to rapidly extract and analyze the most important evidence from a target computer or disk. It is equally effective during on-site operations and in laboratory environments, helping investigators make informed decisions at the earliest stages of an investigation.