一、注册表的由来
PC机及其操作系统的一个特点就是允许用户按照自己的要求对计算机系统的硬件和软件进行各种各样的配置。早期的图形操作系统,如Win3.x中,对软硬件工作环境的配置是通过对扩展名为.ini的文件进行修改来完成的,但INI文件管理起来很不方便,因为每种设备或应用程序都得有自己的INI文件,并且在网络上难以实现远程访问。
为了克服上述这些问题,在Windows 95及其后继版本中,采用了一种叫做“注册表”的数据库来统一进行管理,将各种信息资源集中起来并存储各种配置信息。按照这一原则,Windows各版本中都采用了将应用程序和计算机系统全部配置信息容纳在一起的注册表,用来管理应用程序和文件的关联、硬件设备说明、状态属性以及各种状态信息和数据等。
与INI文件不同的是:
1.注册表采用了二进制形式登录数据;
2.注册表支持子键,各级子关键字都有自己的“键值”;
3.注册表中的键值项可以包含可执行代码,而不是简单的字串;
4.在同一台计算机上,注册表可以存储多个用户的特性。
注册表的特点有:
1.注册表允许对硬件、系统参数、应用程序和设备驱动程序进行跟踪配置,这使得修改某些设置后不用重新启动成为可能。
2.注册表中登录的硬件部分数据可以支持高版本Windows的即插即用特性。当Windows检测到机器上的新设备时,就把有关数据保存到注册表中,另外,还可以避免新设备与原有设备之间的资源冲突。
3.管理人员和用户通过注册表可以在网络上检查系统的配置和设置,使得远程管理得以实现。
二、使用注册表
1.大家可以在开始菜单中的运行里输入regedit、regedit.exe、regedt32、regedt32.exe。
2.也可以在DOS下输入regedit
三、注册表根键说明
hkey_classes_root 包含注册的所有OLE信息和文档类型,是从 hkey_local_machine\software\classes复制的。
hkey_current_user 包含登录的用户配置信息,是从hkey_users\当前用户子树复制的。
hkey_local_machine 包含本机的配置信息。其中config子树是显示器打印机信息; enum子树是即插即用设备信息;system子树是设备驱动程序和服务参数的控制集合;software子树是应用程序专用设置。
hkey_users 所有登录用户信息。
hkey_current_config 包含常被用户改变的部分硬件软件配置,如字体设置、显示器类型、打印机设置等。是从hkey_local_machine\config复制的。
hkey_dyn_data 包含现在计算机内存中保存的系统信息。
在注册表中,所有的数据都是通过一种树状结构以键和子键的方式组织起来的,十分类似于目录结构。
1.HKEY_CLASSES_ROOT
管理文件系统。根据在Windows 98中安装的应用程序的扩展名,该根键指明其文件类型的名称,相应打开该文件所要调用的程序等等信息。
2.HKEY_CURRENT_USER
管理系统当前的用户信息。在这个根键中保存了本地计算机中存放的当前登录的用户信息,包括用户登录用户名和暂存的密码。在用户登录Windows 98时,其信息从HKEY_USERS中相应的项拷贝到HKEY_CURRENT_USER中。
3.HKEY_LOCAL_MACHINE
管理当前系统硬件配置。在这个根键中保存了本地计算机硬件配置数据,此根键下的子关键字包括在SYSTEM.DAT中,用来提供HKEY_LOCAL_MACHINE所需的信息,或者在远程计算机中可访问的一组键中。
这个根键里面的许多子键与System.ini文件中设置项类似。
4.HKEY_USERS
管理系统的用户信息。在这个根键中保存了存放在本地计算机口令列表中的用户标识和密码列表。同时每个用户的预配置信息都存储在HKEY_USERS根键中。HKEY_USERS是远程计算机中访问的根键之一。
5.HKEY_CURRENT_CONFIG
管理当前用户的系统配置。在这个根键中保存着定义当前用户桌面配置(如显示器等等)的数据,该用户使用过的文档列表(MRU),应用程序配置和其他有关当前用户的Windows 98中文版的安装的信息。
一、注册表被修改的原因及解决办法
篡改IE的默认页
有些IE被改了起始页后,即使设置了“使用默认页”仍然无效,这是因为IE
起始页的默认页也被篡改啦。具体说来就是以下注册表项被修改:
HKEY_ LOCAL MACHINE \Software \Microsoft \Internet
Explorer \Main\Default Page_ URL “Default Page_ URL"这个子键的键值即起
始页的默认页。
解决办法:
A.运行注册表编辑器,然后展开上述子键,将“Default Page_ UR”子键的键
值中的那些篡改网站的网址改掉就好了,或者设置为IE的默认值。
B. msconfig有的还是将程序写入硬盘中,重启计算机后首页设置又被改了回去,
这时可使用“系统配置实用程序”来解决。开始-运行,键入msconfig点击“确
定”,在弹出的窗口中切换到“启动”选项卡,禁用可疑程序启动项。
IE默认搜索引擎被修改
在IE浏览器的工具栏中有一个搜索引擎的工具按钮,可以实现网络搜索,被篡.
改后只要点击那个搜索工具按钮就会链接到那个篡改网站。出现这种现象的原因
是以下注册表被修改:
HKEY_ L0CAL_ MACHINE \Sof tware \Microsoft \Internet
Explorer \Search \CustomizeSearch
HKEY_ LOCAL_ MACHINE\Sof tware \Microsoft \Internet
Explorer’ Search \SearchAssistant
解决办法:
运行注册表编辑器,依次展开上述子键,将“CustomizeSearch”和
“SearchAssis tant” 的键值改为某个搜索引擎的网址即可。
系统启动时弹出对话框
受到更改的注册表项目为:
HKEY_ L0CAL_ MACHINE\Sof tware \Microsoft \Windows \CurrentVersion Winlogon
在其下被建立 了字符串“LegalNoticeCaption” 和“LegalNoticeText”,
其中“LegalNoticeCaption”是提示框的标题,“LegalNoticeText” 是提示框
的文本内容。由于它们的存在,就使得我们每次登陆到Windwos桌面前都出现一
个提示窗口,显示那些网页的广告信息!你瞧,多讨厌啊!
解决办法:
打开注册表编辑器,找到
HKEY_ L0CAL_ MACHINE\Sof tware \Microsoft \Windows \CurrentVersion Winlogon
这一个主键,然后在右边窗口中找到“LegalNoticeCaption"和
“LegalNoticeText”这两个字符串,删除这两个字符串就可以解决在登陆时出
现提示框的现象了。
二、预防办法
1、要避免中招,关键是不要轻易去- 一些自己并不了解的站点,特别是那些看上
去美丽诱人的网址更不要贸然前往,否则吃亏的往往是你。.
2、由于该类网页是含有有害代码的ActiveX网页文件,因此在IE设置中将
ActiveX插件和控件、Java脚本等全部禁止就可以避免中招。
具体方法是:在IE窗口中点击“工具→Internet选项,在弹出的对话框中选择
“安全”标签,再点击“自定义级别”按钮,就会弹出“安全设置”对话框,把
其中所有ActiveX插件和控件以及Java相关全部选择“禁用”即可。不过,这
样做在以后的网页浏览过程中可能会造成一-些正常使用ActiveX的网站无法浏
览。
3、既然这类网页是通过修改注册表来破坏我们的系统,那么我们可以事先把注
册表加锁:禁止修改注册表,这样就可以达到预防的目的。不过,自己要使用注
册表编辑器regedit. exe该怎么办呢?因此我们还要在此前事先准备- -把“钥
匙”,以便打开这把“锁”!
加锁方法如下:
(1)运行注册表编辑器regedit. exe;
(2)展开注册表到
HKEY_ CURRENT_ USER \Software \Microsoft \Windows \CurrentVersion\Policies
System下,新建- -个名为DisableRegistryTools的DWORD值,并将其值改为
“1”,即可禁止使用注册表编辑器regedit. exe。
解锁方法如下:
用记事本编辑-一个任意名字的.reg文件,比如unlock. reg,内容如下:
REGEDIT4[HKEY CURRENT _USER\Sof tware \Microsoft \Windows \CurrentVersion
Policies\System]“DisableRegi stryTools”=dword0000000存盘,你就有了
一把解锁的钥匙了如果要使用注册表编辑器,则双击unlock. reg即可。
映像劫持
例如有一个程序文件名为"xiaojin.exe",由于使用了旧的堆管理机制,它在新系统里无法正常运行甚至出现非法操作,为了让系统为其提供旧的堆管理机制,需要IFEO来介入,则需执行以下步骤:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WindowsNT\CurrentVersion\Image File ExecutionOptions
在"Image File Execution Options"下建立一个子键,名为"xiaojin.exe",不区分大小写。现在确保位于HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WindowsNT\CurrentVersion\Image File ExecutionOptions\xiaojin.exe\下,建立一个字符串类型的注册表项,名为"DisableHeapLookAside",值为"1"
再次运行xiaojin.exe查看运行情况,如果真的是由于堆管理机制引发的问题,则程序得以正常运行,否则该程序问题不属于IFEO能够干涉的范围,或者需要尝试搭配其他的参数使用。
注册表自启动项
1、计算机\HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run
这是用户中设置的启动项(也可能不是你自己设置的),删除不影响系统的运行。
删除方法是在右边寻找要删除的项目,右键单击,“删除”即可。
2、计算机\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run
这是系统设置的启动项,酌情删除,通常是第三方软件的驱动程序,如笔者的”罗技鼠标游戏驱动“,删除后对系统影响不大。
3、计算机\HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Run
【注意】这个地方就需要慎重处理了,通常这些启动项关乎着操作系统的正常运行
Logon Script
注册表路径:HKCREnvironment
创建字符串键值: UserInitMprLogonScript
键值设置为bat的绝对路径:c:test11.bat
bat内容如下:
start calc.exe
注销,登录
执行脚本11.bat,弹出计算器
屏幕保护程序
操作子键:[HKEY_CURRENT_USER\Control Panel\Desktop]
|键值项(数据类型) | 键值(说明)|
|- ScreenSaveTimeOut(DWORD值)-|-2000(以毫秒计)-|
备注:设置ScreenSaveTimeOut的值为一个很低的值,可以弥补这个安全漏洞(但是不能低到用户无法登录)。
影子用户
1.打开Windows
2.首先在Windows中创建一个普通帐号zhangsan,密码也是123
3.在命令行中输入"regedit"打开注册表,打开:HKEY_LOACL_MACHINESAMSAM。
4.首先大家发现无法打开SAM子项目,要把权限给予并刷新
5.打开一下键值
6.查看ADMINISTRATO帐号所对应的键值和"USERS"子项里的相对应,"USERS"里包含的就是该帐户的权限的键值.打开ADMINISTRATOR所对应的"F"键值并复制里面的16进制
7.在同理打开USERA的F键值,并把ADMINISTRATOR的F键值的内容替换掉zhangsan$的F键值
8.分别把zhangsan 和 z h a n g s a n 和zhangsan 和zhangsan在USERS所对应的键值000003EC"导出注册表
9.把zhangsan$帐号删除
10.在把事前导出的2个注册表再导入到注册表中
11.再次查看注册表,发现zhangsan$的帐号又回来了,可使用命令或"本地用户和组"都无法发现此用户的存在
12.注销再使用zhangsan$还是可以登录系统并具有管理员的权限
拓展
1、自启动项
Run HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer\Run
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer\Run
2、RunOnce
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\RunOnce
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunOnce
3、RunServicesOnce
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\RunServicesOnce
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\RunServicesOnce
4、RunServices
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\RunServices
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunServices
5、RunOnceEx
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\RunOnceEx
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunOnceEx
(该键是Windows XP/2003特有的自启动注册表项)
6、UserInit
HKEY_LOCAL_MACHINE\Software\Microsoft\WindowsNT\CurrentVersion\Winlogon\UserInit
(合法值为:c:\windows\system32\userinit.exe)
7、load
HKEY_CURRENT_USER\Software\Microsoft\WindowsNT\CurrentVersion\Windows\load
8、镜像劫持
HKEY_LOCAL_MACHINE\Software\Microsoft\WindowsNT\CurrentVersion\Image File Execution Options
9、禁止任务栏、文件夹选项、注册表等
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\System\DisableTaskMgr
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\System\DisableRegedit
10、禁止修改IE浏览器主页
HKEY_CURRENT_USER\Software\policies\Microsoft\internet explorer\control panel\homepage
值为1 表示禁止修改
HKEY_CURRENT_USER\Software\policies\Microsoft\internet explorer\main\Startpage
(以上适合win200 2003 xp)
vista 、win7 设置如下:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\MAIN\Start Page
11、隐藏磁盘分区
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer\NoDrivers
12、修改文件关联
HKEY_CLASSES_ROOT\textfile\shell\open\command
HKEY_LOCAL_MACHINE\Software\CLASSES\textfile\shell\open\command
13、SPI
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\WinSock2\Parameters\Protocol_Catalog9\Catalog_Entries
14、BHO
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Explorer\Browser Helper Objects
此键下是系统注册的所有BHO的CLSID
GUID(Global Unique Identifier) 也成为Class ID 简称CLSID
15、CLSID
HKEY_CLASSES_ROOT\CLSID
在此键下的ID 对应着系统里面的不同程序、组件
16、IE默认前缀
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\URL\DefaultPrefix
17、
HKEY_CURRENT_USER\Software\policies\Microsoft\internet explorer\MenuExt
IE网页右键菜单
HKEY_LOCAL_MACHINE\Software\policies\Microsoft\internet explorer\Extension registry key
对应于IE工具栏上的按钮或者在IE的工具菜单中非默认安装的项目
18、IE高级选项?
HKEY_LOCAL_MACHINE\Software\policies\Microsoft\internet explorer\AdvancedOptions
对应于IE选项高级选项卡下面的项目
19、IE扩展
HKEY_LOCAL_MACHINE\Software\policies\Microsoft\internet explorer\Plugins
20、IE默认设置
c:\windows\inf\iereset.inf(IE默认配置信息)
21、IE可信区域
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\InternetSettings\ZoneMap\Domains
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\InternetSettings\ZoneMap\Domain
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\InternetSettings\ZoneMap\Ranges
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\InternetSettings\ZoneMap\Ranges
IE授权区域与识别码对应关系
区域 区域映射
My Computer 0
Intranet 1
Trusted 2Internet 3
Restricted 4
=======================================================================
协议与授权区域的对应关系
HTTP 3
HTTPS 3
FTP 3
@vit 1
shell 0
=========================================================================
对应的注册表键值:
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\InternetSettings\ZoneMap\ProtocolDefaults
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\InternetSettings\ZoneMap\ProtocolDefaults
22、域名劫持
HKEY_LOCAL_MACHINE\System\CurrentControlSet\services\tcpip\Parameters\Interfaces{0F3EE3DD-D14D-4925-8671-87F4D7244B91}\NameServer
HKEY_LOCAL_MACHINE\Software\Class\PROTOCOLS
额外的协议和协议劫持,黑客通过将我们计算机使用的标准的协议驱动更改为劫持程序所提供的驱动来实现
23、用户样式表劫持
键值: HKEY_CURRENT_USER\Software\Microsoft\internet explorer\Style\User Stylesheets
24、AppInit_DLLs注册表值自启动载入
HKEY_LOCAL_MACHINE\Software\Microsoft\WindowsNT\CurrentVersion\Windows\AppInit_DLLs
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\IniFileMapping\win.ini\Windows\AppInit_DLLs
user32.dll能够被许多进程或是程序使用,也包括一些自启动进程,AppInit_DLLs注册表值包含了当user32.dll被载入时将会被载入的一连串动态链接库
25、Winlogon Notify
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\Notify
26、自动载入
ShellServiceObjectDelayLoad
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\ShellServiceObjectDelayLoad
ShellServiceObjectDelayLoad键值下面的文件会被计算机外壳程序Explorer.exe自动载入
ShellServiceObjectDelayLoad下面的键值指向的是CLSID
SharedTaskScheduler
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\SharedTaskScheduler
随windows启动而被载入
服务
服务时windows启动的时候自动载入的程序,这些服务程序无论是否有使用者登录到计算机都会被载入,而且常用于处理系统任务
删除服务
(1)命令行命令sc dete servername
(2)注册表删除
Windows Registry Editor Version 5.00
[- …] 保存为reg文件,导入注册表即可删除该项
删除键值
[…]
“键值名”=-
导入即可
(3)相关的服务删除工具
27、IE收藏夹、IE浏览历史、cookies
HKEY_USERS.DEFAULT\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders
28、禁止C 、 D 、D 、D、ADMIN$一类的缺省共享
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\lanmanserver\parameters,在右边的 窗口中新建Dword值,名称设为
AutoShareServer值设为0
新建Dword值AutoShareWks 0(xp win7 vista)
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\lanmanserver\parameters] “AutoShareServer”=dword:00000000 “AutoShareWks”=dword:00000000 // AutoShareWks 对pro版本// AutoShareServer 对server版本// 0
禁止管理共享admin , c ,c ,c,d$之类默认共享
[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\LSA] “restrictanonymous”=dword:00000001 //0x1 匿名用户无法列举本机用户列表//0x2 匿名用户无法连接本机IPC$共享(可能sql server不能够启动
29、隐藏重要文件/目录
可以修改注册表实现完全隐藏: “HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced\Fol der\Hi-ddenSHOWALL”,鼠标右击“CheckedValue”,选择修改,把数值由1改为0
30、防止SYN洪水攻击
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters 新建DWORD 值,名为SynAttackProtect,值为2
31、禁止响应ICMP路由通告报文
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfacesinterface 新建DWORD值,名为PerformRouterDiscovery 值为0
32、防止ICMP重定向报文的攻击
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters 将EnableICMPRedirects 值设为0
33、不支持IGMP协议
HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesTcpipParameters 新建DWORD 值,名为IGMPLevel 值为0
34、终端服务的默认端口为3389,可考虑修改为别的端口。
修改方法为: 服务器端:打开注册表,在 “HKLM\SYSTEM\Current ControlSet\Control\Terminal Server\Win Stations” 处找到类似RDP-TCP的子键,修改PortNumber值。 客户端:按正常步骤建一个客户端连接,选中这个连接,在“文件”菜单中选择导出,在指定位置会 生成一个后缀为.cns的文件。打开该文件,修改“Server Port”值为与服务器端的PortNumber对应的 值。然后再导入该文件(方法:菜单→文件→导入),这样客户端就修改了端口。
35、修改系统默认日志存储位置
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Eventlog
日志文件大小限制
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Eventlog****\MaxSize
更换日志存储位置
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Eventlog****\File
36、Schedluler(任务计划)服务
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\SchedulingAgent
37、禁止建立空连接(对匿名连接的限制):
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\restrictanonymous 设置为1
38、wins客户端启用wins代理
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\NetBT\Parameters
EnableProxy 类型DWORD
39、微软office软件相关选项
HKEY_CURRENT_USER\Software\Microsoft\office
40、tcp半连接数
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Tcpip\Parameters\TcpMaxHalfOpenRetried
—可以定义TCP半连接数的大小(适用于win2000系统)
HKEY_LOCAL_MACHINESYSTEM\CurrentControlSet\Services\Tcpip\Parameters\EnableConnectionRateLimiting
若无EnableConnectionRateLimiting键值表示你的系统没有tcp/ip连接限制,如有且值为0也表示你的系统没有tcp/ip
连接限制,值为1表示受tcp/ip连接限制,将其修改为0即可取消限制。(适用于vista sp2 和win7)
41、TCP连接延迟
HKEY_LOCAL_MACHINESYSTEM\CurrentControlSet\Services\Tcpip\Parameters\TcpTimedWaitDelay
TcpTimedWaitDelay默认是1e(30秒)(win7及其2008)
42、tcp用户最大使用端口
HKEY_LOCAL_MACHINESYSTEM\CurrentControlSet\Services\Tcpip\Parameters\MaxUserPort
43、关闭无效网关的检查
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\EnableDeadGWDetect"=dword:00000000
(2000、xp)
44、不允许释放NETBIOS名
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters"NonameReleaseOnDemand"=dword:00000001
(2000sp2、xp)
45、禁止Guest账户访问日志
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Eventlog
将其3个子键Application、Security、System 下面的RestrictGuestAccess值改为1
46、禁止显示上一次登陆的用户名
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\winlogon
修改Dontdisplaylastusername为1
47、禁用文件名创建
取消windows server2008和windows server2003为兼容以前微软文件名命名方式带来的性能损失
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\FileSystem
设置NtfsDisable8dot3NameCreation为1
当然这个键项下面还有其他一些关于文件系统方面的设置,如是否加密,扩展名等
48、取消因为使用例如DOS、Win16、0S/2、Posix应用系统下面的程序子系统可能带来的隐患
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Session Manager\SubSystems
将Optional改为0000
删除OS2、posix项
同时找到:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\WOW 删除其下的子键
找到HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment
删除其下的OS2libpath项
找到HKEY_LOCAL_MACHINE\software\Microsoft\os /2 Subsystem for nt 删除其下所有子键
49、不支持IGMP协议
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters
修改IGMPLevel 为0(50)修改终端服务的默认端口
找到HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\Wds\rdpwd\Tds\tcp
修改PortNumber为变更后的值
同时找到HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp
修改PortNumber为变更后的值要记得和上面一样
50、防护系统不受一定拒绝服务的攻击
防止受SYN泛滥攻击
找到HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters
添加
DWORD值
SynAttackProtect为2
Tcpmaxhalfopen值为100
Tcpmaxhalfopenedretried的值为80
Tcpmaxportsexhausted为5
51、加强防备拒绝服务攻击
终止半开放的TCP连接数,找到HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters
条件DWORD Tcpmaxconnectresponseretransmission为3
52、TCP空链接计时器
找到HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters
添加DWORD Keepalivetime为300000,计数单位为毫秒,即为5分钟
53、不轻易改变MTU的值
找到HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters
设置DWORD :EnablePMTUDiscovery为0
54、禁止IP路由
找到HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters
修改DWORD :IPEnableRouter为0
55、禁止光盘自动启动
[HKEY_USERS.DEFAULT\Software\Microsoft\Windows\CurrentVersion\polices\Explorer
设置Nodrivetypeautorun为149
56、只有本地用户才可以访问软盘
找到HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon
修改allocatefloppyes为1
57、只允许本地用户可以访问光盘
找到HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon
修改AllocateCDRoms为1
58、关机时清除页面文件
找到HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management
修改DWORD :ClearPageFileAtShutdown为1
59、HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Seting\MaxConnectionPerServer ======IE每一个服务连接数
60、完全禁止系统模认工享
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\MyComputer\NameSpace\DelegateFolders{59031a47-3f72-44a7-89c5-5595fe6b30ee}]
61、
3389替换服务-----------------------
中修改[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\TermService]
c:\winnt\system32\copy termsrv.exe service.exe
c:\winnt\system32\cd…
c:\winnt\sc \127.0.0.1 config Alerter binpath= c:\winnt\system32\service.exe
62、
现在很多优化软件都有“已安装软件检测”和“软件卸载”的功能,比Windows自带的“添加或删除程序”功能要强大,其实就是扫描了下面的注册表项,有兴趣的网友可以分别展开来研究一下。
HKEY_CLASSES_ROOT\Installer\Products
HKEY_CURRENT_USER\Software\Microsoft\Installer\Products
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall
63、
让注册表编辑器失忆:先找到
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Applets\Regedit
然后右键单击Regedit,选择权限->Administrator,勾选上“拒绝”,如图所示,最后确定。
64、windows 文件保护
-描述
路径:SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon:SFCDisable
windows文件保护功能
-目前异常状况
注册表键值为空
-正常时
注册表键值为00000000
65、安全中心
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Security Center
1、 设置对注册表工具(Regedit.exe)的运行限制
保护注册表不受未经授权访问的做好办法之一是让恶意用户根本无法访问注册表。
对于服务器来说,这意味着要严格控制服务器的物理安全, 只允许管理员本地登录。对
于其他系统,或者无法防止用户本地登录到服务器的情况下,则可以针对Regedit.exe
和Reg.exe配置访问权限,使其更安全。另外,我们也可以尝试从系统中删除注册表编
辑器以及Reg命令,但这会 导致其他问题, 造成管理员系统管理的麻烦, 尤其是当管理.
员需要从远程访问注册表的时候,这样的做法有些自断后路。
我们可以采取一个比较折中的方法,就是修改注册表编辑器的访问权限,以限制其
它非授权用户对其进行访问。访问%SystemRoot%文件夹,找到注册表编辑器程序.
Regedit.exe,右键单击该工具选择“属性”。在属性对话框中打开“安全"选项卡,可以看
到如图所示的界面。在该界面中我们根据需要添加或者删除用户或者组, 然后设置其必
要的访问权限。这里的权限设置和对文件(文件夹)的权限设置是一样的,我们可以选择
一个对象,然后允许或者拒绝特定的权限。除了Regedit.exe的设置外,我们还需要对
命令行下的注册表访问工具Reg.exe 进权限设置。打开%SystemRoot%\System32文
件夹,用鼠标右键单击该程序, 选择“属性"。同样在属性对话框中打开“安全"选项卡, 默
认情况下该命令可以被一般用户管理员使用,我们可以根据需要在该界面中进行用户授
权和权限设置。以笔者的经验,大家不要通过组统一授权,因为这样该组中的所有用户
都具有相应的权限。我们可以删除组,只为具体的用户授权,这样攻击者通过添加到组
实施对注册表的控制就行不通了需要说明的是 ,Windows系统中还有一个名为
Regedit32的注册表工具,其实这个工具只是一个到Regedit.exe的链接。如果我们设
置了Regedit.exe的权限后, 并不需要对Retdit32.exe也进行类似的权限设置。
2、设置对注册表键的访问权限
对于注册表的权限控制,我们还可以具体到对注册表键的访问控制。对于注册表键
的权限设置,我们除了可以直接进行权限的编辑外,还可以使用安全模板进配置。使用
恰当的安全模板不仅可以锁定对注册表的访问,而且不要担心错误的设置会导致系统无
法启动或应用程序无法运行。
不过,通常情况下我们只是针对特定的注册表键进行权限控制,这时候只能通过直
接进行权限的编辑。具体方法是:运行注册表编辑器,找到要设置的键,用鼠标右键单
击选择"权限",或者也可以首先选中该键然后从注册表编辑器的“编辑”菜单中选择“权限”
也可,随后会打开"SAM的权限”对话框。和文件权限的设置-样, 我们可安装需要添加
或删除组和用户,选中某个对象,设置拒绝或者允许某个权限。
需要说明的是,很多权限是从更高级别的键继承的, 无法直接进行修改。要编辑其
权限,需要单击"高级"按钮打开如图所示的“SAM的高级安全设置”对话框。在此有4个
选项卡:其中“权限”选项卡上的“继承于"-栏显示了这个权限是从哪里继承来的,一般来
说这些权限都是从目标键的根键继承下来的。我们在单击"确定”应该更改前,要考虑清
楚是否应该选择“包括可以从该对象的父项继承的权限”复选框。如果选择,那么所选键
以及其下级是所有子键的权限都好发生变化。“审核”选项卡下可对所选键配置审核。“所
有者"选项卡下显示所选键的当前所有者, 并且可以分配所有权。默认情况下,只有所选
键会受到影响,但如果希望针对当前键的所有子键都有效, 需要勾选"替换子容器和对象
的所有者”选项。“有效权限”选项卡下,可用于判断当前设置会对特定用户或组应用怎样
的权限,这个功能非常有用,而且在“权限"选项卡下对权限的修改在单击"确定”或“应用”
之前会不会被应用。
3、安全设置控制对注册表的远程访问Windows的注册表不仅可本地访问还可远程访问。
因此,攻击者或者未经授权的用户可能会像管理员一样尝试远程访问系统的注册表,这
无疑会带来极大的安全风险。通常情况下, 对于个人系统我们不会远程访问注册表,那
么就可以禁止注册表的远程访问。
“开始"菜单中的“运行”,输入services.msc打开服务管理器,找到"Remote Registry"
服务项,双击该项“停止”服务,并设置启动类型为禁止”即可。不过,上述设置后,就完
全禁止了远程对注册表的访问。但有的时候,我们需要允许可远程访问注册表的某些键,
该怎么办呢?其实,我们还可通过修改注册表键值的方法来控制对注册表的远程访问。
这个注册表键是:
“HKL M\SYSTEMICurrentControlSet\ControlSecurePipeServerslWinreg"。在开启了
“RemoteRegistry’服务的Windows系统中就有该注册表键,Windows使用该键的权限
设置判断哪些用户可以远程访问注册表,而默认情况下,通过验证的用户都可以。事实
上,通过验证的用户对该键具有查询数值、枚举子键、通知和读取的控制权限。因此,
我们需要排除某些敏感的注册表目录,以防止被远程恶意访问。
“HKL M\SYSTEM\CurrentControlSetlControlSecurePipeServers\Winreg”键先有个
“AllowedPaths"键,其右侧有个字符串注册表键值"Machine” , 双击该键值可以看到可远
程访问的注册表键值路径,在此我们可以根据需要添加或者删除注册表路径,以实现对
远程访问注册表路径的控制下面做一些补充,笔者看 到某些管理员基于安全需要关闭了
注册表的远程访问功能,却莫名其妙地造成了某些系统故障,这里做一说明。这时因为,
Windwos系统中的某些服务为了实现特殊的功能可能需要远程访问注册表,例如
Directory Replicator服务已经Spooler服务, 这样在关闭了对注册表的远程访问会造成.
这些服务的运行错误。这样我们一定要在限制对注册表的远程访问时,必须要绕过这些
服务对远程注册表访问的限制。其做法是,将需要远程访问注册表的服务的账户名添加
到Winreg键的访问列表中或者将需要远程访问的注册表键的路径添加到AllowedPath
值中。在Machine键下的Paths值可以让计算机访问列出的位置, Users键下的Paths
值可以让用户访问列出的位置。只要对这些键没有明确的访问限制,那么就可以进行远
程访问。在修改完毕后, 需要重新启动计算机这样对注册表的修改才可生效此外,对于
Windows Vista和 Windows Server 2008系统来说,我们可以通过“本地安全策略’控制
台启用或者禁用注册表的远程访问,同时也可以设置用户或组是否列在Winreg注册表
键的访问控制列表(ACL)中。这里设置了很多默认路径,笔者建议不要轻易修改它们,
除非你非常清楚你要进行的操作。其操作方法是:依次单击“开始”→"管理工具"一“本地安
全策略”,打开本地安全策略控制台。展开左窗格中的“本地策略”节点,然后选择“安全选
项”,在主窗格中可以看到列出了很多策略设置。在此,我们可以拖动滚动条,根据需要
双击“网络访问:可远程访问的注册表路径”或“网络访问:可远程访问的注册表路径和子
路径”选项。在属性对话的“本地策略设置"选项卡上,可以看到允许远程访问的注册表路
径以及子路径列表。在此我们可按照需要添加或删除路径或者子路径。
4、部署审核监视用户对注册表的操作
审核是Windows系统的一项重要功能,就像对文件等其他系统项进行审核一样,
我们也可注册表的访问进行审核。据此我们可了解到哪些用户访问了注册表,以及他对
注册表进行了哪些操作。不过,启用对注册表的审核后会耗费-定的系统性能。笔者建
议,我们只选择自己最关心的、必要的审核对象,以减少被写入安全日志中的数据流,
以此减少对系统性能带来的负担。
要启用对在注册表的审核,先要启用系统审核。为此,需要通过系统的本地安全策
略或相应的组策略对象进行。cmd+secpol.m 运行“本地计算机策略”控制台, 定位到“计
算机配置"→"Windows设置"→°安全设置” 一“本地策略”一“审核策略”节点下设置启用系统
审核策略。对系统启用了审核后,即可配置希望对注册表进行审核的方式。我们可以设
置对需要的注册表键进行监控,此时我们可以利用继承功能,这样我们就不需要对注册
表中的每一个键进行设置审核了。当然,如果只需要对一个指定的根键或者子键作为开
始的审核的起点,我们可以首先取消上面的继承重新设置。比如,我们要对事关 系统账
户安全的HKLM\SAM注册表键进行审核,可进行如此操作。(图6)图6依次点击"开
始"→“运行”,输入regedit.exe打开注册表编辑器。定位到HKLM\SAM注册表键,右键
单击该键选择“权限”打开“SAM的权限”对话框。带该对话框中单击“高级”按钮打开“SAM
的高级安全设置”对话框,在对话框中打开“审核”选项卡,单击“添加” 按钮进入对话框
在此选择要审核的用户或组。审核的用户或者组添加完毕后,单击“确定”进入“SAM的
审核项目”对话框。在此,我们可以针对每个权限选择要进行的审核类型。如果希望跟踪
权限的成功使用,就选择相应的“成功”选项;如果希望更正权限的失败使用,则选择相应
的“失败”选项。设置完毕后单击“确定”关闭该对话框。对于其他用户或者组的审核设置,
方法类似。需要说明的是,如果希望将审核应用于所有子键, 需选中“包括可以从该对象
的父项继承的审核项目"选项。总结:上面从4个方面和大家分享了自己在Windows注
册表安全管理方面的一些经验,应该说囊括了注册表管理的主要方面。另外,不少管理
员采用的通过组策略禁用注册表,也不失为一项安全措施。