张晗卓 张中伟
摘要:网络已成为日常生活的重要组成部分,而HTTP协议是目前网络应用最广泛的应用层协议,但存在信息泄露风险。使用Wireshark软件抓取数据包工具对HTTP协议进行分析,研究HTTP协议的安全隐患,并对其造成的影响进行分析,提供了一种对HTTP协议采用双重加密的简便实现方法,保证数据和信息传输的安全。
关键词:HTTP协议;网络安全;协议分析;信息泄露;数据加密
中图分类号:TP393文献标志码:A文章编号:1008-1739(2019)17-69-3
0引言
从目前互联网应用状况来看,网站采用B/S架构提供网络服务的方式占有较大比重,而大多数网站数据传输使用的是安全性较低的HTTP协议[1],没有使用安全协议进行数据加密传输,使得传输的数据容易发生泄露,从而造成用户信息、商业机密及政府文件等信息,面临着极高的被截获甚至是被泄露和篡改的风险。本文基于HTTP协议的交互方式,分析HTTP协议传输数据的风险[2],及其存在的安全隐患,最后提供了保证信息安全的实现方法。
目前提供网络服务的网站主要采用HTTP和HTTPS协议来实现信息传输。HTTP协议采用请求/响应模型,以明文的形式交换数据。HTTPS协议采用对称密钥模式,客户端与服务器端的信息数据依靠密钥进行加密传输。而HTTPS协议需要使用受信机构颁发的证书、采用独立IP地址、密钥交换延长延时等特征,从而造成网站成本较高。因此,采用HTTP协议来进行信息传输的应用还具有广阔市场,而由于HTTP协议采用明文进行数据交换,使得对HTTP的安全风险分析及解决方法的研究仍然具有重要意义。
1方案设计
1.1实验环境
电脑主机1台:操作系统为Windows7旗舰版SP1 64位;CPU:Intel(R)Pentium(R)G3240@3.10 GHz双核;内存为4 GB;硬盘为Tigo SSD 120 GB;显卡为主板集成显卡;网卡为Realtek RTL8168/8111 PCI-e千兆集成网卡。工具软件:Wireshark V2.2.7(64位)。测试对象:创新教育实验室官网和水木社区Web网站。
1.2研究对象
使用浏览器访问网站并分别进行登录,用Wireshark软件抓取交互数据包,对数据包进行解析,分析信息交互过程中存在的安全风险。由于创新教育实验室官网和水木社区使用的是HTTP协议进行数据传输,便于进行HTTP协议的安全分析。
1.3研究方法
通过对多个网站登录交互信息样本采集和分析,得出是否存在信息泄露隐患。试验样本采集方式是本地计算机抓取协议包获取信息。
通过抓取用户登录数据,查看协议交互过程中采用HTTP协议的POST包,对用户登录过程中敏感信息是否能够轻易获取到[3],若是明文信息则说明该网站存在信息泄露的风险,否则认为该网站采取了安全措施,基本能够保证用户登录过程的安全。
2结果分析
2.1实验结果
从网络信息安全角度出发,由于在网络中信息存在泄露风险,当网站使用不安全的HTTP协议传输进行敏感信息交互时,有可能造成在网络传输过程中出现较大的安全隐患[4]。基于上述原因,本文从账号登录方面对HTTP协议信息泄露问题进行分析。
2.1.1创新教育实验室官网案例
使用注册的账号在创新教育实验室官网登录平台进行登录,并使用Wireshark抓取相关数据包,抓取信息如图1所示,从截图中可以明确看到登录信息的明文内容,所有敏感信息一览无余。
2.1.2水木社区网站案例
使用测试账号进行登录测试,用Wireshark截取数据包,抓取结果如图2所示。对截取下来的数据包进行筛选,提取 HTTP协议相关数据包进行分析,客户端发送给服务端的用户信息,以明文直接存放在POST数据包内,交互信息可以通过工具软件直接读取出来。
从上述2个案例可以看出,这2个网站在登录过程中采用的是不安全的HTTP协议,均存在安全隐患。
2.2研究结论
从几个案例中可以看出:使用HTTP协议POST机制,用户信息直接以明文存在于数据包中,在传输过程中很容易被截获而造成信息泄露,使得用户信息采用简单的攻击手段就能够轻松获得。根据这种情况,可以分析出以下安全隐患:
①用户本网站账户信息安全存在威胁:攻击者很容易获取到正常用户的账号和密码,并利用截获的有效信息直接登录网站,以被攻击用户身份来进行操作,使用户在本网站的信息受到侵害。
②祸及本用户其他网站账号安全:由于不少用户为了方便在多个网站上进行登录信息设置时使用相同账号及密码,攻击者通过抓获某些不安全网站的HTTP协议数据包,获取在本网站的登记用户名和密码后,使用已知用户名和密码去尝试登录其他网站,可以直接获取到用户高价值网站账号信息,可能给被泄露的用户带来严重经济损失。
3解决方法
3.1解决思路
HTTP协议使用POST或者GET方式提交用户名和密码等信息时,传输过程中使用明文,没有任何形式的数据加密,若在传输途中截获登录的HTTP数据包,则用户名和密码会被轻易获取,造成信息泄露。所以,很多安全要求较高的网站会使用HTTPS来确保传输过程的安全,HTTPS用证书颁发机构颁发的证书在浏览器和服务器之间进行通信加密。然而,HTTPS证书申请要一定的门槛,给用户带来不便,但可以通过使用HTTP协议登录下的登录安全模式设计,给使用HTTP協议登录的网站一个解决办法,该方法不需要额外花销的同时最大化保障网站登录安全[5]。
3.2实现方法
解决HTTP协议存在的安全风险可以在HTTP协议中通过对用户名和密码加密,再用动态验证码进行二次加密,保证用户数据在传输过程中的信息安全。
双重加密方法的实现过程包括:服务器动态生成的验证码,提交到客户端登录界面;在客户端对用户名和密码进行加密,使用验证码对用户名和密码的加密结果再次进行加密,并将双重加密后的信息添加到HTTP协议中,发送登录请求到服务器;服务器接收到用户登录请求后,使用动态验证码对用户名和密码进行解密,再解密用户名和密码,最后对HTTP协议进行解析和响应。
3.3效果分析
双重加密避免了仅对用户名和密码加密仍然无法避免重放攻击威胁的情形,其在不可逆密文加密前使用动态验证码对原始密文添加扰动信息,即便使用拦截到的信息也无法重复登录,从而实现保护用户密码和避免重放攻击的作用,提高入侵者的破解成本和门槛,提高采用HTTP协议的网站的安全性。
4结束语
对教育网站和论坛社区等类型网站进行登录信息测试,使用Wireshark工具软件抓取HTTP协议数据包,通过实验研究了HTTP协议对网络安全的影响,分析了导致信息泄露的原因。在清楚地了解HTTP协议存在安全风险的基础上,遇到类似问题时,能够通过采用安全技术和方法来避免该类安全威胁的出现,从而保障用户信息安全。
参考文献
[1]谢希仁.计算机网络:第5版[M].北京:电子工业出版社, 2008.
[2]陈雷,刘嘉勇.基于HTTP协议的POST数据分析与还原[J].通信技术,2011,44(4):132-134,169.
[3]龚美娜.基于网络协议的信息隐藏研究与实现[D].南京:南京邮电大学,2015.
[4]胡亮,零宗谕,陶杜辉,等.基于HTTP协议的信息系统信息泄露的探究[J].企业科技与发展,2018(1):62-64,67.
[5]鲍天赐,刘志刚.基于HTTP的Web登录安全和模式设计[J].工业控制计算机,2017,30(5):99-100.