当前位置: 首页 > 图文教程 > 网络安全 > 安全基础 > 网络安全讲座之:攻击与渗透(8)

安全基础
建立防火墙的主动性网络安全防护体系
家庭上网必学八招安全绝招
弹出网页或不定时弹出网页的解决办法
一个弹出窗口引发一场追踪
预防QQ被盗的两个小技巧
详解网络加密技术及应用
论常见的壳与加壳技术
了解下反垃圾邮件技术
常用的几种免杀方法及工具
确保数据中心虚拟化安全的10个步骤
Windows激活木马的解决办法
08企业安全,应用开发过程中建立信任
如何实现最基本的IT检查的10条建议
ARP掉线的快速解决方案
安全审核 用Nmap为网络查找安全漏洞
网络安全重心转向主动防御
从原理入手扼杀传播病毒的恶意网页
ntfs.dll病毒ntfs.dll木马清除
保护计算机远离黑客骚扰的策略
安全打开U盘目录的简单方法

安全基础 中的 网络安全讲座之:攻击与渗透(8)


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-28   浏览: 54 ::
收藏到网摘: n/a

各种操作系统的TCP ISN生成器的安全性比较

  Windwos 98 SE



(图15)

  但很难明白为什么Windows 98的算法更弱。我们看到R1为0,也就是说,A的空间特性太明显,以致M集只需要一个点就可以算出seq[t]。我们看到,Windows 98的R2小于Windows 95的R2,换言之,Windows 98的seq[t]的搜索代价更少。

  Windows NT4 SP3,Windows SP6a和Windows 2000



(图16)

  Windows NT4 SP3在ISN的PNRG算法也是非常弱的,成功率接近100%。Windows 2000和Windows NT4 SP6a的TCP 序列号有着相同的可猜测性。危险程度属于中到高的范围。虽然,我们在图上看不到很明显的3D结构化特征,但是,12%和15%对攻击者来说,已经是一个很满意的结果。

  FreeBSD 4.2,OpenBSD 2.8和OpenBSD-current



(图17)

  OpenBSD-current的PRNG 输出为31-bit,也就是说,△seq[t]的值域范围可以是231 –1,意味着,y,z值域也很大,这对使我们很难确定M集,经过我们的处理后,可以看到一个云状物(见上图),它的R1半径很大,而且分布均匀,不呈现任何的空间结构化特性,很难对它进行分析。

  Linux 2.2



(图18)

  Linux 2.2的TCP/IP序列号的可分析性也是很少,比起OpenBSD-current,它的PRNG的输出宽度只有24bit,但是,对抵御攻击已经足够了。Linux是按照RFC 1948规范的。它的HASH函数从实现来说,应该是没有什么的漏洞,而且,它应该是引入了外部随机源。

  Solaris

  Solaris的内核参数tcp_strong_iss有三个值,当tcp_strong_iss=0时,猜中序列号的成功率是100%;当tcp_strong_iss=1时,Solaris 7和Solaris 8一样,都能产生一些特性相对较好的序列号。



(图19)

  tcp_strong_iss=2时,依据Sun Microsystem的说法,系统的产生的ISN值非常可靠,不可预测。通过观察采样值的低位值的变化,可以相信它的PRNG的设计采用了RFC 1948规范,正如Solaris的白皮书所提到的。



(图20)

  但是,我们观察到,Solaris7(tcp_strong_iss=2)虽然使用了RFC 1948,但是,仍然相当的弱,究其原因,是因为Solaris没有使用外部随机源,而且也没有在一段时间之后重算

。由一些Solaris系统动态分配IP地址的主机群要特别小心,因为Solaris在启动之后,一直都不会变(这一点与Linux不同),于是,攻击者在合法拥有某个IP地址的时候,他可以在TCP会话期间对序列号进行大量的采样,然后,当这个IP地址又动态地分配给其他人的时候,他就可以进行攻击(在Clinet-Server结构的网络系统中要尤为注意,因为,许多应用都是分配固定的端口进行通讯)。