安全必备知识 - HTTP/HTTPS
基本概念
HTTP
HTTP (Hyper Text Transfer Protocol) 是一种用于传输超媒体文档 (例如 HTML) 数据的协议。它是一种应用层协议,基于 TCP/IP 协议 栈,通常使用 TCP 端口 80。实现常见于浏览器和服务器(HTTP/HTTPs Server )上。HTTPS 就是 HTTP 在 TCP/IP 协议上的加密安全加固版(在HTTP基础上增加了SSL/TLS协议)。
HTTPS
HTTPS (Hyper Text Transfer Protocol Secure) 是一种通过计算机网络进行安全通信的传输协议。HTTPS 经由理论上安全的传输机制,如 SSL/TLS,加密数据包,实现数据完整性和保密性。HTTPS 的主要作用,是为了防止窃听和中间人攻击。HTTPS 还提供身份认证,以保证用户访问的网站是由合法的服务器提供的而非伪造的。
安全防范
HTTP 安全漏洞
在使用 HTTP 协议时特别需要注意以下几个方面,防范网络攻击。
窃听
网络加密:SSL/TLS 的加入,公匙加密,防窃听。
广告劫持
防范广告劫持:安装 JavaScript 插件,限制第三方 Cookie。
会话劫持
Session方案:Session 的默认储存方式有很大的安全隐患。因此我们可以实现高强度加密,或者自己定制 Session,存入 Redis 等缓存中。
HTTPS 安全漏洞
HTTPS 在解决 HTTP 安全漏洞的基础上,还需要考虑以下问题。
非法证书攻击
为防止被 DDoS 或者重放攻击,因此要注重证书和通道的安全。
中间人攻击
防止中间人攻击:采用SSL证书。需要保证信任,免受恶意软件或攻击者的威胁。
示例说明
窃听攻击示例
为了对 HTTP 窃听攻击有个直观的了解,我们可以通过使用 Wireshark 抓包工具观察 HTTP 网络传输过程。例如,在浏览器输入网址并打开网站时,我们可以观察到传递相关信息,不使用 HTTPS,网络传输中的所有信息都是明文传输的,这个过程很容易被攻击者利用。
非法证书攻击示例
钓鱼网站很容易欺骗你点击假冒连接,这个过程需要注意的是证书,是否有未明的不正当行为和情况,比如低质量证书或者是黑产通过一些手段获得的,这时需要留意这个地址,谨防被钓鱼网站欺骗。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:http www安全必备知识 - Python技术站