Glossary
Shell item (ShellItem / PIDL)
A binary structure identifying one element of the Windows Shell namespace, chained into ID lists inside ShellBags, LNK files and Jump Lists.
A shell item is a small binary record that identifies one element of the Windows Shell namespace: a drive, a folder, a file, a network share, a Control Panel item or a device such as a phone. Explorer does not describe locations with plain paths; it chains shell items into an item ID list, and programs handle that list through a pointer called a PIDL (pointer to an ID list). Walking the list from the Desktop downwards rebuilds the full location.
Shell items appear across many user-activity artifacts: ShellBags in UsrClass.dat, the target ID list of LNK files, the shortcuts embedded in Jump Lists, and several MRU keys such as OpenSaveMRU and LastVisitedMRU.
Their forensic value comes from the metadata captured at the time the item was recorded. A file-entry shell item typically stores the short name and a modification date in the coarse FAT date/time format (two-second resolution). On modern Windows, extension blocks add the long Unicode name, creation and last-access dates and, on NTFS, the MFT file reference — entry number plus sequence number — of the folder or file.
Because this data is a snapshot, shell items can prove knowledge of folders that were later deleted, lived on removable media or sat on a network share. The embedded dates reflect the object when the shell item was created, not necessarily its current state, so compare them with the $MFT before drawing conclusions.
Related artifacts
- Jump ListsJump Lists cheat sheet: AutomaticDestinations and CustomDestinations, AppIDs, DestList entries with last access, access count and pin status, and JLECmd.
- LNK shortcut filesLNK cheat sheet: Recent folder shortcuts, first and last open times, embedded target timestamps, volume serial, network share and TrackerDataBlock MAC.
- OpenSaveMRU and LastVisitedMRUOpenSavePidlMRU and LastVisitedPidlMRU cheat sheet: ComDlg32 keys per Windows version, what the open/save dialog records, timestamps and upload tips.
- RecentDocsRecentDocs cheat sheet: NTUSER.DAT key and per-extension subkeys, MRUListEx order, what the LastWrite time means and how to link entries to LNK files.
- ShellBagsShellBags cheat sheet: BagMRU and Bags keys in UsrClass.dat and NTUSER.DAT, shell items, folder timestamps, deleted and USB folders, and parsing with SBECmd.