如何加固 TCP 堆栈预防攻击(二)

二、抵御 ICMP 攻击
这一部分的命名值都位于注册表项 HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Tcpip\Parameters\ 的下面
值: EnableICMPRedirect
建议的数值数据: 0
有效值: 0 (禁用), 1 (启用)。默认配置为 1 (已启用)。
说明: 通过将此注册表值修改为 0 ,能够在收到 ICMP 重定向数据包时禁止创建高成本的主机路由。重定向 Internet 控制消息协议 (ICMP) 将致使堆栈探测主机路由。这些路由可覆盖开放式最短路径优先 (OSPF) 生成的路由。
漏洞: 此行为是预料中的。问题是,在探测重定向 ICMP 路由的 10 分钟超时时间中,系统将临时造成一种网络状况,受影响的主机将无法正确路由通信数据。
对策: “EnableICMPRedirect 允许重定向 ICMP 来覆盖 OSPF 生成的路由 项的值配置为 已禁用
潜在影响: 如果将路由和远程访问服务 (RRAS) 配置为自治系统边界路由器 (ASBR) ,它将无法正确导入已连接的接口子网路由。实际上,该路由器将主机路由注入 OSPF 路由。但是, OSPF 路由器不能用作 ASBR 路由器,如果使已连接的接口子网路由导入 OSPF ,将在路由表中产生奇怪的路由路径。
建议值
值名称
(REG_DWORD)
EnableICMPRedirect
0
 
三、抵御 SNMP 攻击
这一部分的命名值位于注册表项 HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Tcpip\Parameters\ 的下面。
值: EnableDeadGWDetect
建议的数值数据: 0
有效值: 0 (禁用), 1 (启用)。在 Windows Server 2003 上默认配置为 1 (已启用)。
说明: 禁止攻击者强制切换到备用网关。 EnableDeadGWDetect :允许自动探测已死网络网关(可导致 DoS )。如果启用已死网关检测,一旦有很多连接遇到问题, IP 可能会切换到备份网关。
漏洞: 攻击者可强制服务器切换网关,并极有可能切换到毫无准备的网关中。这将很难进行,因而此项的价值很小。
对策: “EnableDeadGWDetect 允许自动探测已死网络网关(可导致 DoS 项的值配置为 已禁用
潜在影响: 如果将此值配置为 0 Windows 无法检测已死网关并且自动切换到备用网关。
建议值
值名称
(REG_DWORD)
EnableDeadGWDetect
0
 
三、 AFD.SYS 保护
下面的注册表项指定内核模式驱动程序 Afd.sys 的参数。 Afd.sys 用于支持 Windows Sockets 应用程序。这一部分的所有注册表项和值都位于注册表项 HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\AFD\Parameters 的下面。这些注册表项和值是:
值名称: EnableDynamicBacklog
建议的数值数据: 1
有效值: 0 (禁用), 1 (启用)
说明: 指定 AFD.SYS 功能,以有效处理大量的 SYN_RCVD 连接。
 
值名称: MinimumDynamicBacklog
建议的数值数据: 20
有效值: 0 �C 4294967295
说明: 指定在侦听的终结点上所允许的最小空闲连接数。如果空闲连接的数目低于该值,线程将被排队,以创建更多的空闲连接
 
值名称: MaximumDynamicBacklog
建议的数值数据: 20000
有效值: 0 �C 4294967295
说明: 指定空闲连接以及处于 SYN_RCVD 状态的连接的最大总数。
 
值名称: DynamicBacklogGrowthDelta
建议的数值数据: 10
有效值: 0 �C 4294967295
默认情况下是否出现:否
说明: 指定在需要增加连接时将要创建的空闲连接数。
建议值
值名称
(REG_DWORD)
EnableDynamicBacklog
1
MinimumDynamicBacklog
20
MaximumDynamicBacklog
20000
DynamicBacklogGrowthDelta
10
 
四、其他保护
这一部分的所有注册表项和值都位于注册表项 HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Tcpip\Parameters 的下面。
1 、保护屏蔽的网络细节
网络地址转换 (NAT) 用于将网络与传入连接屏蔽开来。攻击者可能规避此屏蔽,以便使用 IP 源路由来确定网络拓扑。
值: DisableIPSourceRouting
建议的数值数据: 2
有效值: 0 (转发所有数据包), 1 (不转发源路由数据包), 2 (丢弃所有传入的源路由数据包)。默认配置为 1
说明: 禁用 IP 源路由,后者允许发送者确认数据报在网络中应采用的路由。 “DisableIPSourceRouting IP 源路由保护级别(防范数据包欺骗) IP 源路由这种机制允许发送者确定数据报通过网络的 IP 路由。
漏洞: 攻击者可使用源路由数据包来隐蔽自己的身份和位置。源路由允许计算机通过发送数据包来指定数据包使用的路由。
对策: “DisableIPSourceRouting IP 源路由保护级别(防范数据包欺骗) 项的值配置为 最高级保护,完全禁用源路由
潜在影响: 如果将此值配置为 2 ,丢弃所有传入的源路由数据包。
 
2 、避免接受数据包片段
处理数据包片段可以是高成本的。虽然拒绝服务很少来自外围网络内,但此设置能防止处理数据包片段。
值: EnableFragmentChecking
建议的数值数据: 1
有效值: 0 (禁用), 1 (启用)
说明: 禁止 IP 堆栈接受数据包片段。
 
3 、切勿转发去往多台主机的数据包
多播数据包可能被多台主机响应,从而导致响应淹没网络。
值: EnableMulticastForwarding
建议的数值数据: 0
有效范围: 0 (false) 1 (true)
说明: 路由服务使用此参数来控制是否转发 IP 多播。此参数由路由和远程访问服务创建。
 
4 、只有防火墙可以在网络间转发数据包
多主机服务器切勿在它所连接的网络之间转发数据包。明显的例外是防火墙。
值: IPEnableRouter
建议的数值数据: 0
有效范围: 0 (false) 1 (true)
说明: 将此参数设置为 1 (true) 会使系统在它所连接的网络之间路由 IP 数据包。
 
5 、屏蔽网络拓扑结构细节
可以使用 ICMP 数据包请求主机的子网掩码。只泄漏此信息是无害的;但是,可以利用多台主机的响应来了解内部网络的情况。
值: EnableAddrMaskReply
建议的数值数据: 0
有效范围: 0 (false) 1 (true)
说明: 此参数控制计算机是否响应 ICMP 地址屏蔽请求。
 
6 、允许 IRDP 探测并配置默认网关地址(可导致 DoS
值: PerformRouterDiscovery
建议的数值数据: 0
有效范围: 0 ( 已禁用 ) 1 ( 已启用 ) 2 (仅当 DHCP 发送 执行路由器发现 选项时启用)。默认配置为 2
说明: “PerformRouterDiscovery 允许 IRDP 探测并配置默认网关地址(可导致 DoS 。它启用或禁用 Internet 路由器发现协议 (IRDP) IRDP 允许计算机在每一个接口上自动检测并配置默认网关地址(如在 RFC 1256 中说明的)。
漏洞: 已拥有同一网段计算机控制权的攻击者可配置网络中的计算机来模拟路由器。因此,其他启用 IRDP 的计算机随后将尝试通过已受损的计算机路由其通信。
对策: “PerformRouterDiscovery 允许 IRDP 探测并配置默认网关地址(可导致 DoS 项的值配置为 已禁用
潜在影响: 如果禁用此项, Windows Server 2003 (支持 IRDP )无法自动检测并配置计算机的默认网关地址。
建议值
注册表项
格式
2003 SP1 默认
最大安全值(十进制)
DisableIPSourceRouting
DWORD
1
2
EnableFragmentChecking
DWORD
0
1
EnableMulticastForwarding
DWORD
1
0
IPEnableRouter
DWORD
0
0
EnableAddrMaskReply
DWORD
1
0
PerformRouterDiscovery
DWORD
2
0
TcpMaxConnectResponseRetransmissions
DWORD
2
2
TcpMaxDataRetransmissions
DWORD
5
3
 

你可能感兴趣的:(tcp,dos,职场,攻击,休闲)