1.如何打开注册表?
答:运行中输入regedit.exe 无权限限制
2.注册表数据库文件的存放位置?
答:2000/XP注册表文件按功能来分,由系统注册表文件和用户注册表文件两类组成的
系统设置和缺省用户配置数据存放在系统/系统文件夹/SYSTEM32/CONFIG文件夹下的6个文件,
DEFAULT、SAM、SECURITY、SOFTWARE、USERDIFF和SYSTEM中,
而用户的配置信息存放在系统所在磁盘的/Documents and Setting/文件夹,
包括ntuser.dat ntuser.ini ntuser.dat.log
3.上面说了SMA文件:那么SMA是什么?
答:C:\WINDOWS\system32\config文件夹下时,五个文件:sam,default,security,software,system.在windows系统环境下无法打开。并且其中sam,security,default均为256k
SAM最初是跟随第一代NT来到世界的,它在微软总部的特工代号叫做“安全账户管理器”(Security Accounts Manager),sam文件是windows的门卫。SAM记录的数据很多,包括所有组、账户信息、密码HASH、账户SID等,应该说是一个考虑得比较周全的门卫。
SAM不仅仅是一个文件那么简单,它不但有文件数据,在注册表里面还有一个数据库,位于HKEY_LOCAL_MACHINE\\SAM下,这是一个比较复杂的结构。SAM在系统启动后就处于锁定状态,我们没法擅自更改这个文件内容!
1.在HKEY_LOCAL_MACHINE\\SAM\\SAM\\ Domains下就是SAM的内容,其下有两个分支“Account”和“Builtin”。
1.1.Domains\\Account\\Users下存放的就是各个账号的信息,当然,这里是加密过的二进制数据,每个账号下面有两个子项,F和V。项目V中保存的是账户的基本资料,用户名、所属组、描述、密码、注释、是否可以更改密码、账户启用、密码设置时间等。项目F中保存的是一些登录记录,比如上次登录时间、错误登录次数等。SAM靠这些齐全的备忘录来保存与用户账号相关的各种信息。 1.2.Domains\\Builtin存放着不同用户分组信息,SAM就是根据这个来划分NT中固有的6个不同的工作组的,它们分别是:管理员(Administrators)、备份操作员Backup Operators)、客人(Guests)、高权限用户(Power Users)、修复员(Replicator)和普通用户(Users)。
在Windows系统中,虽然SAM如此尽力,但是他不听从你的指挥。它只听本地安全认证(Local Security Authority)程序——LSASS.EXE的差遣,就连进门时的审查也是LSASS的指示。如果你把LSASS杀了,你就等着被赶出门吧——当然,对于普通用户来说,如果你试图用普通的进程管理工具或者Windows系统的进程管理杀掉“LSASS.EXE”进程的话,只会得到“该进程为关键系统进程,任务管理器无法结束进程。”的提示,本地安全认证(Local Security Authority)在Windows系统中主要负责以下任务:1.重新找回本地组的SID和用户权限;2.创建用户的访问令牌;3.管理本地安装的服务所使用的服务账号;4. 存储和映射用户权限;5.管理审核的策略和设置;6.管理信任关系。
俗话说,“人无完人”。尽管SAM(萨姆)是这么尽心尽责,可是在这里,我们还是必须用那句话——“萨姆也是人”来形容它。由于一些设计上的失误,在WinNT/2000里,如果你忘记了密码,那么你要做的不是呼天喊地,只需要在非NT环境里把SAM驱逐出硬盘就可以了。但是在XP以后的Windows操作系统里,这个情况得以改善,如果你把萨姆大叔踢了,NT也躲着死活不肯出来了。特别提醒:不要以为sam文件记录了密码信息你就可以删除该文件使得系统用户密码为空,虽然在早期的win2k时代你可以在dos环境下这样做以求达到置空密码的目的,在xp时代,这样可没有用哦
4.那什么叫NT?
答:NT即新技术(New Technology),
Microsoft Windows NT 3.1
Microsoft Windows NT 3.5
Microsoft Windows NT 3.51
Microsoft Windows NT 4.0
从5.0版开始,Windows NT只是简单地称为Windows了,下面的版本是后来的版本:
Microsoft Windows 2000 (Windows NT 5.0)
Microsoft Windows XP (Windows NT 5.1)
Microsoft Windows Server 2003 (Windows NT 5.2)
Microsoft Windows Vista (6.0)
....
5.注册表的作用?
答:注册表是为Windows NT和Windows95中所有32位硬件/驱动和32位应用程序设计的数据文件
16位驱动在Winnt下无法工作,所以所有设备都通过注册表来控制,一般这些是通过BIOS来控制的。在没有注册表的情况下,操作系统不会获得必须的信息,从而去运行和控制附属的设备,和控制应用程序及正确响应用户的输入。在系统中注册表是一个记录32位驱动的设置和位置的数据库。当操作系统需要存取硬件设备,它使用驱动程序,甚至设备是一个BIOS支持的设备。无BIOS支持设备安装时必须需要驱动,这个驱动是独立于操作系统的,但是操作系统需要知道从哪里找到它们,文件名、版本号、其他设置和信息,没有注册表对设备的记录,它们就不能被使用。
当一个用户准备运行一个应用程序,注册表提供应用程序信息给操作系统,这样应用程序可以被找到,正确数据文件的位置被规定,其他设置也都可以被使用。
注册表保存关于缺省数据和辅助文件的位置信息、菜单、按钮条、窗口状态和其他可选项。它同样也保存了安装信息(比如说日期),安装软件的用户,软件版本号和日期,序列号等。根据安装软件的不同,它包括的信息也不同。
然而,一般来说,注册表控制所有32位应用程序和驱动,控制的方法是基于用户和计算机的,而不依赖于应用程序或驱动,每个注册表的参数项控制了一个用户的功能或者计算机功能。用户功能可能包括了桌面外观和用户目录。所以,计算机功能和安装的硬件和软件有关,对所有用户来说项都是公用的。
有些程序功能对用户有影响,有些是作用于计算机而不是为个人设置的,同样的,驱动可能是用户指定的,但在很多时候,它们在计算机中是通用的。
注册表控制用户模式的例子有:
控制面板功能;
桌面外观和图标;
网络参数;
浏览器功能性和特征;
那些功能中的某些是和用户无关的,有些是针对用户的。
计算机相关控制项基于计算机名,和登陆用户无关。控制类型的例子是安装一个应用程序,不管是哪个用户,程序的可用性和存取是不变的,然而,运行程序图标依赖于网络上登陆的用户。网络协议可用性和优先权基于计算机,但是当前连接和用户信息相关。
这里是在注册表中基与计算机控制条目的一些例子:
存取控制;
登陆确认;
文件和打印机共享;
网卡设置和协议;
系统性能和虚拟内存设置;
在系统中注册表控制所有32位应用程序和它们的功能及多个应用程序的交互,比如复制和粘贴,它也控制所有的硬件和驱动程序。虽然多数可以通过控制面板来安装和设置
6.注册表有关的术语?
1、HKEY :“根键”或“主键”,它的图标与资源管理器中文件夹的图标有点儿相像。Windows98将注册表分为六个部分,并称之为 HKEY_name,它意味着某一键的句柄。
2、key(键):它包含了附加的文件夹和一个或多个值。
3、subkey(子键):在某一个键(父键)下面出现的键(子键)。
4、branch(分支):代表一个特定的子键及其所包含的一切。一个分支可以从每个注册表的顶端开始,但通常用以说明一个键和其所有内容。
5、value entry(值项):带有一个名称和一个值的有序值。每个键都可包含任何数量的值项。每个值项均由三部分组成:名称,数据类型,数据。
6、 字符串(REG_SZ):顾名思义,一串ASCII码字符。如“Hello World”,是一串文字或词组。在注册表中,字符串值一般用来表示文件的描述、硬件的标识等。通常它由字母和数字组成。注册表总是在引号内显示字符串。
7、二进制(REG_BINARY):如 F03D990000BC ,是没有长度限制的二进制数值,在注册表编辑器中,二进制数据以十六进制的方式显示出来。
8、双 字(REG_DWORD):从字面上理解应该是Double Word ,双字节值。由1-8个十六进制数据组成,我们可用以十六进制或十进制的方式来编辑。如 D1234567 。
9、 Default(缺省值):每一个键至少包括一个值项,称为缺省值(Default),它总是一个字串