Windows系统注册表

目录

  1. 如何查看和修改注册表
  2. 注册表用法
  3. 数据类型和逻辑结构
  4. 内部机理
  5. 注册表重定向
  6. 注册表回调和通知

什么是注册表

  • 系统数据库
    • 系统全局设置的存储仓库
    • 每个用户的设置信息的存储仓库
  • 引导和配置系统所必要的信息、系统范围的控制Windows操作的软件设置、安全数据库,以及针对每个用户的配置信息(比如使用哪个屏幕保护程序)。

查看和修改注册表

  • 注册表编辑器
    • 图形界面:Regedit.exe
      这里写图片描述
    • 命令行:Reg.exe
      这里写图片描述
  • 如何判断修改注册表是否成功?
    • 如果修改注册表失败了—–原因
      SUCCESS
      NAME NOT FOUND
      NO MORE ENTRIES
      BUFFER TOO SMALL
      ACCESS DENIED

注册表用法

  • 引导过程
  • 登录过程
  • 应用程序启动过程
  • 应用安装工具创建了默认的应用设置,以及一些可反映出安装配置选项的设置信息
  • 设备驱动程序的安装过程中,即插即用系统在注册表中创建了一些设置,告诉I/O管理器如何启动此驱动程序、用于配置该驱动程序操作的设置
  • 通过用户界面改变了应用程序或者系统设置时,这些改变通常会被保存在注册表中

注册表数据类型

  • Rootkey、key、value、data
  • 注册表值的类型
    这里写图片描述
  • 不太常见的注册表值的类型
    这里写图片描述
    \ROOT1\Link->\ROOT2\RegKey
    \ROOT1\Link[RegValue] == \ROOT2\RegKey [RegValue]

注册表逻辑结构

  • 6个根键
    • 不能新增也不能删除
      这里写图片描述
  • 根键说明
    这里写图片描述
  • 根键–链接
    这里写图片描述
  • 应用层和内核层的表示方法
    这里写图片描述
  • HKCU这里写图片描述
  • HKLM这里写图片描述
  • 工作中常见的注册表位置–启动项
    • Run
    • Runonce
    • RunOnceEx
  • 工作中常见的注册表位置—安装和卸载路径
    • APP PATHS
    • Uninstall
  • 工作中常见的注册表位置–服务/驱动
    • type
      这里写图片描述
  • 工作中常见的注册表位置—pending项
    1、pending项的作用
    2、pending项的应用场景
  • 工作中常见的注册表位置—默认浏览器
    1、协议关联位置
    2、文件关联位置
  • 常见的注册表位置—COM组件
    – IEComLauncher.vbs
    这个脚本会调用{0002DF01-0000-0000-C000-000000000046} 这个COM接口,来以-Embedding参数启动浏览器。
  • 工作中常见的注册表位置—IE主页
    – Start Page
  • 常见的注册表位置—IE默认搜索引擎
    – HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\SearchScopes[DefaultScope]
    – HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\SearchScopes{AFF46933-E993-4D12-B571-792FF66C1BBE}[URL]

注册表重定向

1、系统为什么要有注册表重定向机制
2、如何重定向的
Wow64.dll

注册表内部机理

  • 储巢(HIVE)
    • 磁盘文件对应注册表路径
      这里写图片描述
      这里写图片描述
      这里写图片描述

注册表通知

  • RegNotifyChangeKeyValue
    • dwNotifyFilter参数通常有以下几种
      REG_NOTIFY_CHANGE_NAME 侦测注册表项名称的变化,以及侦测注册表的创建和删除事件
      REG_NOTIFY_CHANGE_ATTRIBUTES 侦测属性的变化
      REG_NOTIFY_CHANGE_LAST_SET 侦测上一次修改时间的变化
      REG_NOTIFY_CHANGE_SECURITY 侦测对安全特性的改动

注册表回调

  • CmRegisterCallback
    • 驱动使用,例如x64系统RD驱动,实现注册表防护。360qpesv64.sys实现注册表bypass,hijack功能。
      这里写图片描述

猜你喜欢

转载自blog.csdn.net/langhailove_2008/article/details/79566980