美文网首页
HTTP——缺陷及对策

HTTP——缺陷及对策

作者: 章鱼要回家 | 来源:发表于2019-06-17 18:22 被阅读0次

    HTTP缺陷

    • 通信使用明文,内容易被窃听。
    • 不验证通信方身份,可能遇到伪装。
    • 无法验证报文的完整性,可能遭到篡改。

    这是不加密协议的通病。除此以外,HTTP本身还有很多缺点,某些特定的web服务器或浏览器也存在安全漏洞,以及用Java和PHP等开发的Web应用也可能存在安全漏洞。

    通信使用明文

    按TCP/IP协议族的工作机制,通信内容在所有的通信线路上都有可能遭到窥视。互联网连通全世界,在某台服务器和某个客户端进行通信时,这条线路上的所有网络设备、计算机或光缆不可能是个人私有物,都有被窥视的可能。

    窃听相同线路上的通信并非难事,只需要收集在互联网上流动的数据包(帧),收集到数据包后,交给抓包工具或嗅探器工具解析。
    被广泛使用的抓包工具Wireshark,可以获取HTTP协议的请求和响应的内容,并对其进行解析。

    对策:目前的几种防窃听对策中,最普及的是加密技术
    一种方式是将通信加密,HTTP本身无加密机制,但可以和SSL或TLS的组合使用。用SSL建立安全通信线路之后,就可以在这条线路上进行HTTP通信了。与SSL组合使用的HTTP被称为HTTPS。
    另一种是将通信内容本身加密,即把HTTP报文里所含的内容进行加密处理。

    不验证通信方身份

    在HTTP协议通信时,由于不存在确认通信方的环节,任何人都可以发起请求,服务器只要收到请求,不管对方是谁都会返回一个响应。这种简单的协议存在隐患,服务器和客户端可能是经过伪装的第三方,而非目标服务器或客户端。

    对策:SSL不仅提供加密处理,还使用了一种被称为证书的手段,用于确定通信方。
    证书由值得信任的第三方机构办法,用以证明服务器和客户端是实际存在的。伪造证书从技术来讲极其困难,所以只要能够确定通信方持有的证书,即可确认对方的真实身份。

    无法证明报文完整性

    无法证明其完整性,因此在请求或响应的内容遭到篡改也没法确认。这种在请求和响应在传输途中被拦截并篡改的攻击被称为中间人攻击。
    HTTP本身有确定报文完整性的方法,但并不便捷、可靠。其中最常用的是MD5和SHA-1等散列值校验的方法,以及用来确认文件的数字签名方法。提供文件下载服务的Web网站会提供相应的以PGP创建的数字签名及MD5算法生成的散列值。使用这些方法需要用户本人的操作,浏览器无法代劳,即使是这样,这些方法也并不可靠。

    对策:SSL提供认证和加密处理及摘要功能。

    综上,可以看出,HTTPS是对针对HTTP安全缺陷的一种解决方法,它并非应用层的一个新协议,只是将HTTP部分通信接口用SSL和TLS代替。
    在使用HTTPS进行通信时,不再用http://,而是改用https://,且浏览器访问HTTPS通信有效的Web网站时,浏览器地址栏会出现一个锁样图标。
    通常,HTTP直接和TCP通信,当使用SSL时,则演变成先和SSL通信,再由SSL和TCP通信。SSL独立于HTTP,还可用于其他应用层协议,是当今应用最为广泛的网络安全技术。

    下节将详细介绍HTTPS的技术细节。

    相关文章

      网友评论

          本文标题:HTTP——缺陷及对策

          本文链接:https://www.haomeiwen.com/subject/mniafctx.html