Windows系统加固指引

  • Post author:
  • Post category:其他


Windows系统加固指引



前言

现在各行各业都要做等保测评,以下内容是针对windows操作系统的安全加固,需要注意的地方是关于注册表的一些修改,本人测试在win7上是OK的,但其他系统如win10或windows server系统的请不要使用,后果很严重。最后吐槽一下,关于windows防火墙的那些看上去很愚蠢的行为,我之前搭建过实验,windows防火墙有一条看不见的默认规则,那就是默认拒绝所有,其实你只要把所有规则列表统统删除掉,然后把需要开放的端口打开即可。但现实往往很打脸,测评人员只认拒绝的那些规则,与其花时间去费力不讨好的解释,还不如老老实实双击一下批处理,不是吗?但这也不能说明什么,毕竟人家也有人家的工作,拍个照片表示禁用了这些高危端口,也方便出报告不是吗?



1. 禁用Guest账户禁用或删除其他无用账户

操作步骤:Win+R打开运行输入compmgmt.msc打开计算机管理,点击“本地用户和组”—“用户”—右键“Guest”—“属性”—勾选“账户已禁用”

在这里插入图片描述



2. 更改默认Administrator用户名

操作步骤:Win+R打开运行输入compmgmt.msc打开计算机管理,点击“本地用户和组”—“用户”—右键“Administrator”—“重命名”

在这里插入图片描述



3. 不显示最后登录的用户名

操作步骤:Win+R打开运行输入gpedit.msc打开组策略管理,计算机配置—windows设置—安全设置—本地策略–安全选项,交互式登录:不显示最后的用户名(启用)

在这里插入图片描述



4. 密码复杂度要求设置

操作步骤:Win+R打开运行输入gpedit.msc打开组策略管理,计算机配置—windows设置—安全设置—账户策略—密码策略,

密码必须符合复杂性要求(启用)

密码长度最小值(8个字符)

密码最短使用期限(1天)

密码最长使用期限(90天)

强制密码历史(5个记住的密码)

在这里插入图片描述



5. windows帐户锁定策略(防止暴力破解)

操作步骤:Win+R打开运行输入gpedit.msc打开组策略管理,计算机配置—windows设置—安全设置—账户策略—帐户锁定策略,

账户锁定时间(30分钟)

账户锁定阈值(5次无效登录)

重置账户锁定计数器(30分钟之后)

在这里插入图片描述



6. 删除用户和组,从远程系统强制关机权限

操作步骤:Win+R打开运行输入gpedit.msc打开组策略管理,计算机配置—windows设置—安全设置—本地策略—用户权限分配,从远程系统强制关机(删除所有用户和组)

在这里插入图片描述



7. 只允许Administrators组关机

操作步骤:

Win+R打开运行输入gpedit.msc打开组策略管理,计算机配置—windows设置—安全设置—本地策略—用户权限分配,关闭系统(只保留Administrators组)

在这里插入图片描述



8. 只允许Administrators组,取得文件或其它对象的所有权

操作步骤:

Win+R打开运行输入gpedit.msc打开组策略管理,计算机配置—windows设置—安全设置—本地策略—用户权限分配,取得文件或其他对象的所有权(只保留Administrators组)

在这里插入图片描述



9. 只允许administrators组本地登录

操作步骤:

Win+R打开运行输入gpedit.msc打开组策略管理,计算机配置—windows设置—安全设置—本地策略—用户权限分配,允许本地登录(只保留Administrators组)

在这里插入图片描述



10. 只允许Administrators组,从网络访问此计算机

操作步骤:

Win+R打开运行输入gpedit.msc打开组策略管理,计算机配置—windows设置—安全设置—本地策略—用户权限分配,从网络访问此计算机(只保留Administrators)

在这里插入图片描述



11. 不允许SAM账户和共享的匿名枚举(启用)

操作步骤:

Win+R打开运行输入gpedit.msc打开组策略管理,计算机配置—windows设置—安全设置—本地策略—安全选项,网络访问:不允许SAM账户和共享的匿名枚举(启用)

在这里插入图片描述



12. 关机:清除虚拟内存页面文件(启用)

操作步骤:

Win+R打开运行输入gpedit.msc打开组策略管理,计算机配置—windows设置—安全设置—本地策略—安全选项,关机:清除虚拟内存页面文件(启用)

在这里插入图片描述



13. 网络访问:可远程访问的注册表路径和子路径(清除)

操作步骤:

Win+R打开运行输入gpedit.msc打开组策略管理,计算机配置—windows设置—安全设置—本地策略—安全选项,

网络访问:可远程访问的注册表路径(清除)

网络访问:可远程访问的注册表路径和子路径(清除)

在这里插入图片描述



14. windows日志审核设置

操作步骤:

Win+R打开运行输入gpedit.msc打开组策略管理,计算机配置—windows设置—安全设置—本地策略—审核策略,

审核策略更改(勾选“成功”和“失败”)

审核登录事件(勾选“成功”和“失败”)

审核对象访问(勾选“成功”和“失败”)

审核进程跟踪(勾选“失败”)

审核目录服务访问(勾选“成功”和“失败”)

审核特权使用(勾选“成功”和“失败”)

审核系统事件(勾选“成功”和“失败”)

审核账户登录事件(勾选“成功”和“失败”)

审核账户管理(勾选“成功”和“失败”)
在这里插入图片描述



15. 交互式登录:无须按ctrl+alt+del(禁用)

操作步骤:

Win+R打开运行输入gpedit.msc打开组策略管理,计算机配置—windows设置—安全设置—本地策略—安全选项,

交互式登录:无须按ctrl+alt+del(禁用)

在这里插入图片描述



16. windows日志配置

操作步骤:

Win+R打开运行输入compmgmt.msc打开计算机管理—计算机管理(本地)—事件查看器—windows日志,

将“应用程序”,“安全”,“系统”日志属性设置为“日志满时将其存档,不覆盖事件”,日志大小不小于20480KB

在这里插入图片描述



17. 启用SYN攻击保护

操作步骤:

新建txt文档,复制以下内容,改后缀为reg,双击运行即可:

Windows Registry Editor Version 5.00

#"SynAttackProtect"推荐值为2,"TcpMaxPortsExhausted"推荐值为5,"TcpMaxHalfOpen"推荐值为500,"TcpMaxHalfOpenRetried"推荐值为400。
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\Tcpip\Parameters]
"SynAttackProtect"=dword:00000002
"TcpMaxPortsExhausted"=dword:00000005
"TcpMaxHalfOpen"=dword:000001f4
"TcpMaxHalfOpenRetried"=dword:00000190

在这里插入图片描述



18. 禁用TCPIP上的NetBIOS

操作步骤:

Win+R打开运行输入ncpa.cpl打开网络连接,在对应网卡上右键“属性”,TCP/IPv4“属性”—“高级”—“WINS”选项卡—取消勾选“启用”

在这里插入图片描述



19. 关闭默认共享

操作步骤:

新建txt文档,复制以下内容,改后缀为reg,双击运行即可:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\LanmanServer\Parameters]
"AutoShareServer"=dword:00000000
"AutoShareWKS"=dword:00000000

在这里插入图片描述



20. 禁用不必要的服务

操作步骤:

新建txt文档,复制以下内容,改后缀为bat,双击运行即可:

net stop TermService
sc config TermService start= disabled
net stop RemoteAccess
sc config RemoteAccess start= disabled
net stop Dhcp
sc config Dhcp start= disabled
net stop BITS
sc config BITS start= disabled
net stop Browser 
sc config Browser start= disabled 
net stop DPS 
sc config DPS start= disabled 
net stop iphlpsvc
sc config iphlpsvc start= disabled 
net stop Spooler
sc config Spooler start= disabled
net stop RemoteRegistry
sc config RemoteRegistry start= disabled
net stop LanmanServer
sc config LanmanServer start= disabled
net stop lmhosts
sc config lmhosts start= disabled
net stop WinRM
sc config WinRM start= disabled
net stop FontCache
sc config FontCache start= disabled
net stop WinHttpAutoProxySvc
sc config WinHttpAutoProxySvc start= disabled
net stop WerSvc
sc config WerSvc start= disabled

在这里插入图片描述

在这里插入图片描述



21. 禁用Task Scheduler服务


(注意:禁用后,大量的系统功能将会异常。例如,Windows自动更新、时间同步、时区同步、自动磁盘清理、自动StartComponentCleanup清理、自动维护等。)

操作步骤:新建txt文档,复制以下内容,改后缀为reg,双击运行即可:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\services\Schedule]
"Start"=dword:00000004

在这里插入图片描述



22. 交互式登录:试图登录的用户的消息提示

操作步骤:

Win+R打开运行输入gpedit.msc打开组策略管理,计算机配置—windows设置—安全设置—本地策略—安全选项,

交互式登录: 试图登录的用户的消息标题 (注意)

交互式登录: 试图登录的用户的消息文本 (内部系统只能因业务需要而使用,经由相关负责人授权使用。)

在这里插入图片描述



23. Microsoft 网络客户端: 对通信进行数字签名

操作步骤:

Win+R打开运行输入gpedit.msc打开组策略管理,计算机配置—windows设置—安全设置—本地策略—安全选项,以下内容需启用

Microsoft 网络服务器: 对通信进行数字签名(如果客户端允许)

Microsoft 网络服务器: 对通信进行数字签名(始终)

Microsoft 网络客户端: 对通信进行数字签名(如果服务器允许)

Microsoft 网络客户端: 对通信进行数字签名(始终)

在这里插入图片描述



24. 网络安全: 基于 NTLM SSP 的最小会话安全设置

操作步骤:

Win+R打开运行输入gpedit.msc打开组策略管理,计算机配置—windows设置—安全设置—本地策略—安全选项,

网络安全: 基于 NTLM SSP 的(包括安全 RPC)服务器的最小会话安全(勾选“要求 NTLMv2 会话安全”和“要求 128 位加密”)

网络安全: 基于 NTLM SSP 的(包括安全 RPC)客户端的最小会话安全(勾选“要求 NTLMv2 会话安全”和“要求 128 位加密”)

在这里插入图片描述



25. 网络安全: LAN 管理器身份验证级别

操作步骤:

Win+R打开运行输入gpedit.msc打开组策略管理,计算机配置—windows设置—安全设置—本地策略—安全选项,

网络安全: LAN 管理器身份验证级别(仅发送 NTLMv2响应。拒绝 LM 和 NTLM)

在这里插入图片描述



26. 网络访问 可匿名访问的共享及命名管道

操作步骤:

Win+R打开运行输入gpedit.msc打开组策略管理,计算机配置—windows设置—安全设置—本地策略—安全选项,

网络访问: 可匿名访问的共享 (清除)

网络访问: 可匿名访问的命名管道(清除)

在这里插入图片描述



28. 允许系统在未登录的情况下关闭(禁用)

操作步骤:

Win+R打开运行输入gpedit.msc打开组策略管理,计算机配置—windows设置—安全设置—本地策略—安全选项,

关机: 允许系统在未登录的情况下关闭(禁用)

在这里插入图片描述



29. 屏幕保护程序设置

操作步骤:

打开“控制面板”—“外观和个性化”—“屏幕保护程序”,

等待时间设置为5分钟,勾选“在恢复时显示登录屏幕”。

在这里插入图片描述



30. Microsoft 网络服务器 暂停会话前所需的空闲时间量

操作步骤:

Win+R打开运行输入gpedit.msc打开组策略管理,计算机配置—windows设置—安全设置—本地策略—安全选项,

Microsoft 网络服务器: 暂停会话前所需的空闲时间量(15分钟)

在这里插入图片描述



31. 防止ICMP重定向攻击

操作步骤:新建txt文档,复制以下内容,改后缀为reg,双击运行即可:

Windows Registry Editor Version 5.00

# 设置"EnableICMPRedirect"的值为0就是防止ICMP攻击,默认值是1
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\Tcpip\Parameters]
"EnableICMPRedirect"=dword:00000000

在这里插入图片描述



32. 防止碎片攻击

操作步骤:新建txt文档,复制以下内容,改后缀为reg,双击运行即可:

Windows Registry Editor Version 5.00

# "EnablePMTUDiscovery"值为0表示不自动探测MTU大小,都使用576字节的MTU,1表示自动探测MTU大小,攻击者可能强制MTU值变得非常小,导致堆栈的负荷过大
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\Tcpip\Parameters]
"EnablePMTUDiscovery"=dword:00000000

在这里插入图片描述



33. 防止源路由欺骗攻击

操作步骤:新建txt文档,复制以下内容,改后缀为reg,双击运行即可:

Windows Registry Editor Version 5.00

#"DisableIPSourceRouting"值为0表示转发所以数据包,1表示不转发源路由的数据包,2表示丢弃所以传入源路由的数据包
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\Tcpip\Parameters]
"DisableIPSourceRouting"=dword:00000001

在这里插入图片描述



34. 仅为基本windows程序和服务启动DEP

操作步骤:Win+R打开运行输入sysdm.cpl打开系统属性,“高级”—性能“设置”—“数据执行保护”—勾选“仅为基本windows程序和服务启用DEP”

在这里插入图片描述



35. 匿名权限限制

操作步骤:新建txt文档,复制以下内容,改后缀为reg,双击运行即可:

Windows Registry Editor Version 5.00

#"restrictanonymous"值为1表示限制匿名用户权限,默认值为0
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa]
"restrictanonymous"=dword:00000001

在这里插入图片描述



36. 禁止自动重新启动

操作步骤:Win+R打开运行输入sysdm.cpl打开系统属性,“高级”—启动和故障恢复“设置”—取消勾选“自动重新启动”

在这里插入图片描述



37. 修改windows远程桌面端口

操作步骤:新建txt文档,复制以下内容,改后缀为reg,双击运行即可:

Windows Registry Editor Version 5.00

#修改Windows远程端口号为9833,"PortNumber"的值为十六进制,2669转换十进制为9833
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\Wds\rdpwd\Tds\tcp]
"PortNumber"=dword:00002669

#同上
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp]
"PortNumber"=dword:00002669

在这里插入图片描述

在这里插入图片描述



38. 关闭windows防火墙 135 , 137 , 138 , 139 , 445 ,3389 端口

操作步骤:新建txt文档复制内容改后缀为bat,双击运行即可:

netsh advfirewall set allprofiles state on  
netsh advfirewall firewall add rule name="Disable port 135 - TCP" dir=in action=block protocol=TCP localport=135
netsh advfirewall firewall add rule name="Disable port 135 - UDP" dir=in action=block protocol=UDP localport=135
netsh advfirewall firewall add rule name="Disable port 137 - TCP" dir=in action=block protocol=TCP localport=137
netsh advfirewall firewall add rule name="Disable port 137 - UDP" dir=in action=block protocol=UDP localport=137
netsh advfirewall firewall add rule name="Disable port 138 - TCP" dir=in action=block protocol=TCP localport=138
netsh advfirewall firewall add rule name="Disable port 138 - UDP" dir=in action=block protocol=UDP localport=138
netsh advfirewall firewall add rule name="Disable port 139 - TCP" dir=in action=block protocol=TCP localport=139
netsh advfirewall firewall add rule name="Disable port 139 - UDP" dir=in action=block protocol=UDP localport=139
netsh advfirewall firewall add rule name="Disable port 445 - TCP" dir=in action=block protocol=TCP localport=445
netsh advfirewall firewall add rule name="Disable port 445 - UDP" dir=in action=block protocol=UDP localport=445
netsh advfirewall firewall add rule name="Disable port 3389 - TCP" dir=in action=block protocol=TCP localport=3389

在这里插入图片描述



总结

其实没啥好总结的,顺便说一下等保测评的主机漏洞扫描,你就把防火墙打开,只允许ICMP,扫描结果一定是OK的,主机漏洞扫描说白了就是一个端口扫描,例如你的主机有mysql服务,你用nmap只能扫描出一个3306的端口号,而哪些动辄几万软妹币的某某扫描软件,就能探测出你的mysql是什么版本,有啥子漏洞之类的,你直接把端口关闭了,保证漏扫结果OK。前提是你确实不需要对外提供mysql的数据库服务哈,不然你就老老实实整改去吧。最后再说一下,哪些关于注册表修改的事情,特别是关于syn攻击保护,icmp重定向攻击,碎片攻击,源路由欺骗攻击这几项,再我看来根本没必要,或者应该这样说,所有的安全都是有代价的,就像你用一把AK去保护一堆废纸皮一样可笑,黑客没等到,自己的主机却经常性的不稳定,愚蠢至极。



版权声明:本文为weixin_43465752原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。