Lion Cipher Lab

Prove a program ran with Windows Prefetch

Why it matters

Half of every intrusion investigation comes down to one question: did this thing actually run on this machine, and when? A firewall log shows a connection, an email shows a lure, a dropped file shows intent — but none of them prove the payload executed. Windows Prefetch does. Prefetch is a performance feature: to make programs launch faster the operating system watches what an executable reads during its first ten seconds of startup and writes a small `.pf` file so it can pre-load those pages next time. As a side effect it records, per executable, that the program ran, how many times, the…

What you'll learn

Steps in this lab

  1. What Prefetch is, and why a speed feature is forensic gold
  2. Confirm prefetch is on, then look at your own Prefetch folder
  3. Manufacture ground truth: run a known program a known number of times
  4. Get PECmd, Eric Zimmerman's prefetch parser
  5. Parse a single .pf: read the run count, the eight times, the referenced files
  6. Parse the whole folder and build a mini execution timeline
  7. The payoff: 'did evil.exe ever run here?' and where did it run from
  8. Judgment: when prefetch is your friend, and how a pro uses it
  9. The honest negative: what prefetch CANNOT tell you

Open the full interactive lab →