WindowsCoreFile and folder access

Jump Lists

Per-application AutomaticDestinations (OLE compound file with DestList) and CustomDestinations files that list recent or frequent items as LNK data.

01Location

  • C:\Users\<user>\AppData\Roaming\Microsoft\Windows\Recent\AutomaticDestinations\*.automaticDestinations-ms
  • C:\Users\<user>\AppData\Roaming\Microsoft\Windows\Recent\CustomDestinations\*.customDestinations-ms
  • NTUSER.DAT: Software\Microsoft\Windows\CurrentVersion\Explorer\StartPage2 (ProgramsCacheSMP, ProgramsCacheTBP)

02Questions it answers

  • Which files did a user open with a specific application, in which recency order?
  • When was each item last updated in the DestList?
  • Was an item pinned?
  • On which host (NetBIOS name) and volume did the target reside?

03Format and versions

FormatAutomaticDestinations: OLE Compound File with a DestList stream (32-byte header plus entries) and hexadecimal-named streams, each holding an LNK. CustomDestinations: header, categories (custom, known KDC_FREQUENT/KDC_RECENT, user tasks) and shell object entries with embedded LNK data, each category closed by footer 0xbabffbab.
Applies toWindows 7 and later. DestList format version 1 is documented for Windows 7; versions 3 and 4 are reported for Windows 10.

04Key fields

FieldWhat it tells you
DestList headerFormat version, number of entries and number of pinned entries.
Entry numberLinks a DestList entry to the hexadecimal-named LNK stream.
Droid / birth droid identifiersNTFS object identifiers of volume and file.
HostnameNetBIOS name stored as a 16-byte ASCII field.
Pin status-1 (0xffffffff) = unpinned; 0 or greater = pinned.
PathUTF-16LE path of the item.

05Timestamps

FieldEncodingNote
DestList entry last modification timeFILETIME (UTC)Per-entry time kept by the jump list; distinct from the target times inside the LNK stream.
Embedded LNK header timesFILETIME (UTC)Creation, access and write times of the link target.

Decode raw values with the Timestamp decoder and convert local wall-clock times with the Local time to UTC.

06Examination workflow

  1. Collect both destination directories for every profile.
  2. Parse the OLE compound file, map DestList entry numbers to streams and parse each embedded LNK.
  3. Build a timeline from DestList times and LNK target times; flag pinned entries.
  4. Attribute each file to its application using embedded paths and correlate with Prefetch and UserAssist.

07Interpretation pitfalls

  • Several DestList fields (floating-point values, possible access count) are not understood; do not report them as facts.
  • A DestList stream can be 0 bytes when the file is empty.
  • CustomDestinations content is defined by the application (including user tasks) and does not necessarily represent files the user opened.

09Sources

  1. Jump lists format libyal / dtformats (J. Metz) · checked 2026-10-14
  2. Jump Lists ForensicArtifacts / artifacts-kb · checked 2026-10-14
  3. Windows Shortcut File (LNK) format libyal / liblnk (J. Metz) · checked 2026-10-14
  4. Windows artifact definitions (windows.yaml) ForensicArtifacts / artifacts · checked 2026-10-14