当前位置: 首页 > 图文教程 > 网络安全 > 安全基础 > SSL中间人攻击

安全基础
text2html格式转换软件转换txt为网页
Gmail邮件搬家:Gmail邮件直接搬家到网易邮箱
木马下载器导致大量的同名进程wmisqtu.exe
百度知道文档分享:上传下载需要的文档
局域网里固定IP地址无法上网故障解决方法
警告:XP系统赶快停止使用IE6
删除火狐浏览器保存的表单密码
Windows7系统下怎么修改explorer.exe文件
取消ESET NOD32开机扫描的设置技巧
查看垃圾邮件信头找到真正的发件人
输入法技巧:Ctrl+Shift灵活运用
网络时代坐在家里能时刻掌握火车票剩票信息
安全删除USB设备 做到一键删除
安全专家:网络购物过程中的十大“陷阱”
禁用Adobe Reader和Acrobat里javascript功能
屏幕分辨率和显示屏调节工具调节屏幕分辨率
退出路由或者交换机使用正确退出命令exit
上网计算机查漏洞方法和相应处理措施
XP系统下IE7默认首页改变的方法
新手入门:QQ邮件常见问题问答

安全基础 中的 SSL中间人攻击


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

SSLv3的当前版本是3.1版,也被称为TLS。它提供了一种机制,在网络上进行安全的数据传输。它据说能够满足所有的安全需要,比如:你的银行帐户管理。

但是在这里我将告诉你,这实际上是不可能的。

在本文中,我首先将对SSL做一些介绍,这是非常重要的。不过,这里我们不会介绍诸如SSL是怎样实现连接的等深层问题,如果有兴趣,可以自己参考参考资料。

 

1.为什么使用SSL


SSL是为了实现网络数据传输中的如下目的设计的:

 

机密性

这是通过对数据进行加密实现的,在进行SSL握手时,SSL选择一种对称算法对数据进行加密,然后才在网络上传输数据。SSL使用的加密算法有好多种,如果某种算法被新的网络攻击方法识破,它只要选择另外的算法就可以了。


消息的完整性

SSL使用一种很健壮的信息验证码(Message Authentication Code),例如:SHA-1,验证码被放在数据包的后部,并且和数据一块被加密。这样,如果数据被修改,其散列值就无法和原来的验证码匹配,从而能够检测出数据是否被修改。MAC同时也被用于保护SSL连接免受干扰。

 

保护数据免受重放攻击(replay-attack)

SSL使用序列号来保护通讯方免受报文重放攻击。这个序列号被加密后作为数据包的负载。在整个SSL握手中中,都有一个唯一的随机数来标记这个SSL握手,这样重放便无机可乘。


免受recorder攻击(reorder-attack)

上面所说的序列号也可以防止攻击者记录数据包并以不同的次序发送。

 

端点验证

使用X509(当前版本是3)证书,SSL支持客户和服务器的验证。关于服务器的连接,我们稍后将深入介绍。


这听起来似乎很安全,但是看了本文介绍的程序,就就不这么想了。(不过,我们还不能打破客户端的验证)

使用本文介绍的攻击方法,我们就可以看到SSL连接上所有明文数据,根据我们的需要修改传输的数据,对数据进行中继发送,以错误的次序发送甚至丢弃我们不需要的报文。这种攻击方法就是所谓的途中人攻击(man in the middle attack,或者中间人攻击)。

 

2.X509数字证书


X509数字证书是SSL的一个组成部分。在SSL握手过程中,服务器向客户发送自己的数字证书。一个X509数字证书包括发行者的识别名(Distinguished Name)、主体(Subject)的识别名、一个版本号和序列号、选择的算法、密钥的有效期时间窗,还有主体的公钥。

主体(subject)是这个证书包含实体的名,证书中的公钥属于主体(Subject)。在平常的X509数字证书中,没有标志DNS名的域。通常,CN域被影射为DNS名,但是这只是一个客户和数字证书的实体必须都认可的协议。

发行者(issuer)是使用自己的私钥签发这个数字证书。它叫做数字证书中心(Certificate Authority,CA)。

让我们看一个X509数字证书:


stealth@lydia:sslmim> ./cf segfault.net 443|openssl x509 -text
Certificate:
Data:
Version: 1 (0x0)
Serial Number: 1 (0x1)
Signature Algorithm: md5WithRSAEncryption
Issuer: C=EU, ST=segfault, L=segfault,
O=www.segfault.net/[email protected]
Validity
Not Before: Nov 19 01:57:27 2000 GMT
Not After : Apr 5 01:57:27 2028 GMT
Subject: C=EU, ST=segfault, L=segfault, O=www.segfault.net,
CN=www.segfault.net/[email protected]
Subject Public Key Info:
Public Key Algorithm: rsaEncryption
RSA Public Key: (1024 bit)
Modulus (1024 bit):
00:cd:64:2a:97:26:7a:9b:5c:52:5e:9c:9e:b3:a2:
e5:f5:0f:99:08:57:1b:68:3c:dd:22:36:c9:01:05:
e1:e5:a4:40:5e:91:35:8e:da:8f:69:a5:62:cf:cd:
70:dc:ca:d2:d7:92:03:5c:39:2a:6d:02:68:91:b9:
0d:d1:2c:c7:88:cb:ad:be:cc:e2:fa:03:55:a1:25:
47:15:35:8c:d9:78:ef:9f:6a:f6:5f:e6:9a:02:12:
a3:c2:b8:6a:32:0f:1d:9d:7b:2f:65:90:4e:ca:f7:
a0:e4:ae:55:91:09:e4:6e:01:e3:d1:71:1e:60:b1:
83:88:8f:c4:6a:8c:bb:26:fd
Exponent: 65537 (0x10001)
Signature Algorithm: md5WithRSAEncryption
7d:c7:43:c3:71:02:c8:2f:8c:76:9c:f3:45:4c:cf:6d:21:5d:
e3:8f:af:8f:e0:2e:3a:c8:53:36:6b:cf:f6:27:01:f0:ed:ee:
42:78:20:3d:7f:e3:55:1f:8e:f2:a0:8e:1a:1b:e0:76:ad:3e:
a0:fc:5b:ce:a6:c4:32:7b:64:f2:a4:0f:a3:be:a1:0e:a7:ca:
ed:67:39:07:65:6b:cc:e7:5a:9a:b0:3a:f3:5c:1a:18:d4:dd:
8c:8d:5a:9e:a0:63:e0:7d:af:7c:97:7c:89:17:0f:25:2f:a7:
80:d3:02:dc:88:7a:12:64:ec:8a:ff:e4:62:92:2e:7f:75:03:
82:f1


要点: <