HTTPS攻击怎么防御?

HTTPS 简介

超文本传输安全协议( HTTPS )是一种通过计算机网络进行安全通信的传输协议。HTTPS 经由 HTTP 进行通信,但利用 SSL/TLS 来加密数据包。 HTTPS 开发的主要目的,是提供对网站服务器的身份认证,保护交换数据的隐私与完整性。

HTTPS攻击主要有两种:中间人劫持攻击和SSLStrip攻击。

中间人劫持攻击:

中间人截取客户端发送给服务器的请求,然后伪装成客户端与服务器进行通信;将服务器返回给客户端的内容发送给客户端,伪装成服务器与客户端进行通信。通过这样的手段,便可以获取客户端和服务器之间通信的所有内容。

使用中间人攻击手段,必须要让客户端信任中间人的证书,如果客户端不信任,则这种攻击手段也无法发挥作用。

SSLStrip攻击(SSL剥离攻击):

1.客户端向服务器发起HTTP连接请求

2.中间人MITM监听客户端与服务器的HTTP数据

3.服务器返回给客户端的HTTP数据包被在客户端与服务器之间的中间人截获。中间人解析原HTTP数据包,将其中<a href="https://...">替换成<a href="http//...">,将Location:https://...替换成Location:http://..,同时记录下所修改的URL,并保存

4.中间人将修改后的HTTP数据发送给客户端

5.客户端向服务器发起HTTP连接请求

6.中间人计算机解析客户端的HTTP连接请求,并与保存文件相比较。当发现存在有已修改过的HTTP URL时,将其替换成原HTTPS URL,并发送给服务器

7.与服务器保持HTTPS连接,回到步骤3;

8.与客户端保持HTTP连接,回到步骤4。

最后结果是服务器认为HTTPS是安全的。对于客户端而言,由于中间人MITM与客户端Client之间是HTTP连接,因此并不会对证书进行认证。

以下是一些防御措施

  1. 安装SSL证书:安装SSL证书可以通过HTTPS建立安全通信。如果安装了SSL证书,则用户可以知道他们正在与网站通信,并且可以检查证书是否有效。这可以防止中间人攻击。

  2. 使用HSTS:使用HSTS强制浏览器仅通过HTTPS连接到您的网站。此外,HSTS还可以防止SSLStrip攻击。

  3. 使用HTTPS Everywhere插件:HTTPS Everywhere插件可以确保您与网站建立安全的HTTPS连接。它可以检测网站是否支持HTTPS并将您重定向到HTTPS连接。这可以防止SSLStrip攻击。

  4. 监控您的网站:监控您的网站可以帮助您检测中间人攻击或SSLStrip攻击。

  5. 避免使用公共WiFi:公共WiFi很容易受到中间人攻击。因此,避免使用公共WiFi并使用VPN建立安全连接。

相关推荐
你不是我我2 小时前
【AI 测评】群晖 NAS 部署 Vaultwarden:从 HTTPS 到浏览器自动填充的完整密码管理流程
网络协议·http·https
IT大白鼠9 小时前
Ingress 与 Ingress-Controller:K8s 七层 HTTP 反向代理技术详解与实践
http·容器·kubernetes
明月_清风11 小时前
MCP vs ACP vs LSP:AI 时代三大协议的「三足鼎立」
人工智能·网络协议·agent
我爱cope12 小时前
【计算机网络 | 传输层3:TCP 协议概述:面向连接、可靠传输到底意味着什么?】
网络·网络协议·学习·tcp/ip·计算机网络·传输层
myy-learn15 小时前
30-HTTP协议
网络·网络协议·http
开开心心就好16 小时前
免费刷题软件推荐,支持导入题库自动判题
网络·网络协议·tcp/ip·jupyter·智能手机·电脑·idea
幼儿园蛋小黄18 小时前
基于 TCP 的嵌入式网络通信学习总结
网络协议·学习·tcp/ip
木井巳19 小时前
【网络原理】TCP/IP 协议栈
网络·网络协议·tcp/ip·udp
++==19 小时前
RPC:grpc的使用与安装、server和client的使用示例、lsb_relese、自定制协议(LVC)+protobuf的RPC调用框架的实现
网络·网络协议·rpc
Lsetea20 小时前
ACME 报 rate limit:Let‘s Encrypt 限速类型与重试策略
运维·https·证书·ssl·acme