1.HKEY_LOCAL_MACHINE
该子树存放包括有关本地机器的所有配置信息及硬件、操作系统的数据等,如系统内存、驱动程序、安全数据库、系统配置等信息,这个子树不管哪个用户登录以及使用什么软件而保留机器的信息。在这个子树中的信息由应用程序、设备驱动程序和Windows 2000操作系统使用,以确定本地机器的配置数据。其中部分信息用于引导Windows 2000操作系统。
HKEY_LOCAL_MACHINE关键字有5个子关键字,它们分别是:
(1) HARDWARE:该子关键字是注册表的一个动态分支,每当计算机引导时,就要对它重新计算。其包含的信息又可进一步地分为3个分支:DESCRIPTION,DEVICEMAP,RESOURCEMAP。这些分支包含了Windows 2000将用户计算机引导到登录屏幕所需要的信息,它们描述了用户计算机中的所有硬件、有关每个设备的辅助信息以及每个设备需要的资源等。
(2) Security Acccount Manager(SAM):该分支包含了用户与用户组账户的数据,这些数据统称为SAM数据库,如图2-6所示。此处所包含的数据与HKEY_LOCAL_ MACHINE\Security\SAM中的相同。
(3) SECCURITY:该分支包含与完全性相关的信息,如用户的访问权、口令原则和本机用户组的成员等
(4) SOFTWARE:该分支包含了计算机中安装的软件信息,这些信息属于一般性的配置信息。它又可进一步地分为Classes,Program Groups,Secure,Description等分支。Classes包含数据与HKEY_CLASSES_ROOT中的相同。Program Group包含了计算机中安装的软件名称和版本号等信息。
(5) SYSTEM:该分支包含了计算机启动时需要的各种计算机信息,如图2-9所示。
其中后4个子关键字都可以看作是配置元。因为它们在\winnt\SYSTEM32\CONFIG目录中都有相应的文件。应用程序可以查询所有这5个关键字,但只可以对Software和System关键字增加配置信息。
2.HKEY_USERS
该子树容纳了当前登录用户的配置设置和缺省的用户配置文件。因此HKEY_USERS关键字包括DEFAULT子关键字和一个或者多个以用户的SIDs(这是Windows 2000用以识别用户的安全身份号码)为名称的子关键字。
DEFAULT关键字分配信息给本地机器上的新用户,它对应的文件为\winnt \SYSTEM32\CONFIG目录下的USERDEF文件。注册表中的每个用户信息分别保存在\winnt\SYSTEM32\CONFIG目录下的USERxxx和USERxxx.LOG文件中。当一个用户登录时,用户的配置信息将被拷贝到HKEY_CURRENT_USER子树中,直到用户退出登录为止。在这期间,用户改变的任何设置都将记录在HKEY_CURRENT_USER和HKEY_USERS子树的相应的键值项数据中。
在缺省情况下,用户的配置文件保存在\winnt\SYSTEM32\CONFIG目录中,但对于Windows 2000 Advanced Server(高级服务器版本)的域管理,它们可以放在本地机器上或者存储在远程主机上。
3.HKEY_CURRENT_USER
该子树记录了当前登录到机器上用户的有关信息。
这些信息以前是存储在Win.ini初始化文件中的。这个子树有一份拷贝作为单个文件或者配置元存储在机器上。当一个用户登录时,用户的安全身份号码(SID)与注册表中的已知的SIDs进行比较。如果系统识别了用户登录的SID,则系统就装载这个用户的配置数据,否则系统将使用在HKEY_USERS\.DEFAULT配置元中的配置信息。
HKEY_CURRENT_USER关键字由以下子关键字组成:
(1) AppEvents; (2) Console; (3) Control Panel ;(4) Environment ; (5) EUDC ; (6) Keyboard Layout ;(7) Software ; (8) UNICODE Program Groups ; (9) Volatile Environment ;.
4.HKEY_CLASSES_ROOT
此子键提供了入口来定义资源类型以及与这些类相关的特殊信息,主要包括软件配置信息,特别是对象链接与嵌入(OLE)和Windows 2000外壳应用程序使用的信息等
在此子树中,每个扩展名与能使用这种类型文件的应用程序相关联,如HKEY_CLASSES_ROOT关键字中包括.avi、.bmp和.DOC等许多子关键字。这个子树的目的是提供与Windows 3.x注册数据库Reg.dat的兼容性.
=========================================================
1.windows 本地账户存在
C:\WINDOWS\system32\config\SAM 的数据库中
sam数据库
SAM数据库保存的文件sam中,可没有注册表中的这么简明的内容,而主要是通过偏移量、长度来定位内容。并
且单个帐号的信息都是集中在一块的,而不是象注册表形式这样分隔开(名字的一个键而内容在另外一个键)。
sam文件中,可根据这些下面这些分隔符来定位数据含义:
nk (6E 6B) 键或者子键名
vk (76 6B) 相应的值
if (6C 66) 子键列表
sk (73 6B) 权限
注册表是对系统一些核心文件的操作软件,比如对sam文件的操作
sid号详解
whoami /user 查看当前用户的sid号
/group 查看当前用户所在组的sid号
/all 查看那当前用户的所有信息
(xp 下没有此命令,当时可以重2003中复制过来)
2.注册表对sam数据库中的sid号进行配置
注册表键值位于
HKEY_LOCAL_MACHINE\SAM\SAM
SAM默认在管理员下是没有权限的,管理员和管理员组是它的所有者可以取的权限
system组默认拥有完全控制权限,权限完全满足windwos的权限策略
阅读(1579) | 评论(0) | 转发(0) |