来源:IT168
首先我们要知道什么是SSL,我们通过百度或者Google就会发现,关于SSL的定义是这样写的:
SSL协议(Secure Socket Layer,安全套接层)主要是使用公开密钥体制和X.509数字证书技术保护信息传输的机密性和完整性,它不能保证信息的不可抵赖性,主要适用于点对点之间的信息传输,常用Web Server方式。
 
而一提起SSL我们就不得不说跟他关系密切的HttpS协议:
HTTPS(Secure Hypertext Transfer Protocol)安全超文本传输协议 它是一个安全通信通道,它基于HTTP开发,用于在客户计算机和服务器之间交换信息。它使用安全套接字层(SSL)进行信息交换,简单来说它是HTTP的安全版。
 
当然,就像专家所说的一样,SSL和HTTPS他本身是安全的,而SSL Strip(SSp)***是利用了一些网站的“漏洞”————即只有到了“点击付款”或者“点击登录”的地方才用到HTTPS协议(https协议是安全),而在其他地方全用到是HTTP协议(不安全)。这就给***者有了可乘之机,利用ARP的话,就可以轻松的得到想要的东西。
IT168的两幅图很好的说明了这个***的原理:
这是正常情况:
这个图是被SSp***的
通过没有被SSp***的述时序图能够清楚地看到,在局域网中的一台客户端在登录交易服务器之前所发生的所有数据交互:1和2完成局域网中客户端对网关MAC地址的寻址,后续客户端发往WEB服务器的所有数据包都需要通过网关转发;客户端与服务器创建正常的HTTP连接以后,首先是请求获取首页内容,服务器返回正常首页以后用户输入帐号信息,单击相应按钮创建HTTPS连接,完成登录操作。
    而当收到SSp***客户端寻址网关的MAC地址时,***机回复了虚假ARP包,将***机的MAC地址回复给了客户端。这样在客户端看来***机就是网关了,导致后续客户端所有与WEB服务器之间交互的数据包都是首先通过***机转发的。
   同理,服务器返回的正常首页也是首先抵达***机,此时***程序会将相关的HTTPS链接地址篡改为HTTP链接地址,在客户没有注意到这种细微变化的情况下,输入了登录帐号信息,并将该信息通过明文传输协议HTTP发给***主机,再由***主机将帐号信息转交给服务器并与服务器创建HTTPS链接。最终的结果就是客户端与***主机是明文通讯,***主机与服务器之间则是加密通讯,而客户端输入的所有信息都经由***程序转发给服务器。
通过对SSp***原理的了解,可以归纳出SSp***具有如下特点:
1. 需要在局域网环境中实施该***,因为其前提是ARP欺骗,在广域网的环境下,ARP欺骗没有施展空间;
2. WEB交易页面的特点是由HTTP页面跳转至HTTPS页面,正是这一特点被***者巧妙利用成功实施***;
3. 上述的***过程并没有真正地攻破SSL加密通道本身,而是巧妙地利用了链接的跳转。
最后说两句,到现在为止,我看到的唯一一个从头到尾全用HTTPS的只有GOOGLE,他不论是登录邮箱还是别的,都是一直在用HTTPS,而国内,如百度都是在你点击“登录”的时候才会用到,谷歌还是有先见之明的。