小言_互联网的博客

Windows取证——ShellBags

437人阅读  评论(0)

目录

一、概念

二、用途和取证中的价值

三、存储位置

(一)文件位置

(二)注册表位置:


一、概念

        ShellBags是一组用来记录文件夹(包括挂载网络驱动器文件夹和挂载设备的文件夹)的名称、大小、图标、视图、位置的注册表项,或称为BagMRU。每次对文件夹的操作,ShellBags的信息都会更新,而且包含时间戳信息。是Windows系统改善用户体验的功能之一。即使删除文件夹后,ShellBags仍然会保留文件夹的信息。因此可以用来揭示用户的活动。

        volatility下解析并打印从注册表中获取的Shellbag信息。其中shellbag是一组注册表项,被windows用来维护使用资源管理器时文件夹的大小、视图、图表和位置;即使在删除目录以后,Shellbags仍会保留目录的信息,可以用来枚举过去装入的卷,删除的文件和用户操作,重建用户活动。


二、用途和取证中的价值

        微软从Windows 7开始引入ShellBags,虽然在Windows xp中也存在,但是其文件格式发生了很大的改变。并在后续的系统上一直使用。ShellBags用来保存用户浏览文件夹时的偏好信息,比如文件夹的排列方式,文件夹显示图标的大小等,比如将文件夹的显示方式从"大图标"模式改为"详细信息模式",ShellBags会立即创建或更新记录,当你打开、关闭或者右键单击、或者重命名文件夹时,也会创建或更新ShellBags记录。这意味着:

  • 如果在Windows ShellBags记录了某个文件夹,那么表示它一定在某个时间出现过在该系统中,包括压缩文件在内的本地文件系统、网络位置和外接设备(如U盘、移动硬盘等)上的文件夹,即使它现在已经不存在了。
  • 由于这些对文件夹的操作和查看首选项与该用户的注册表配置单元(registry hives)相关联。所以我们可以将特定用户和特定的文件夹相关联,甚至,还可以从ShellBags包含的MAC时间戳中获取文件夹的访问时间信息。

三、存储位置

(一)文件位置

在Windows XP中,存储在NTUSER.dat文件中,在系统注册表中的位置分别是:

  1. - 记录网络路径文件夹访问的记录在:\Software\Microsoft\Windows\Shell
  2. - 记录本地文件夹访问的记录在:\Software\Microsoft\Windows\ShellNoRoam
  3. - 可移动存储器文件夹访问的记录在:\Software\Microsoft\Windows\StreamMRU

但是从Windows 7开始,已经发生了很大的变化,Windows 7新增了一个用户特定的注册表配置单元:USRCLASS.dat。这个配置单元支持新的用户访问控制(UAC)和强制访问控制完整性级别。它用于记录来自无权写入标准注册表配置单元的用户进程的配置信息。所以如果要获取完整的ShellBags信息,需要为每个用户解析NTUSER.dat 和 USRCLASS.dat这两个文件。这些文件可以在%userprofile%、%userprofile%\AppData\Local\Microsoft\Windows路径中找到。

(二)注册表位置:

记录最近通过资源管理器访问的文件夹的信息:

  • USRCLASS.DAT:HKCU\Software\Classes\Local Settings\Software\Microsoft\Windows\Shell\BagMRU
  • USRCLASS.DAT:HKCU\Software\Classes\Local Settings\Software\Microsoft\Windows\Shell\Bags

转载:https://blog.csdn.net/xiaofengdada/article/details/128570328
查看评论
* 以上用户言论只代表其个人观点,不代表本网站的观点或立场