加密过程
HTTPS 同时使用了对称加密和非对称加密,两者在通信过程中扮演不同的角色,共同保障数据的安全性。以下是详细解释:
1. 非对称加密(Asymmetric Encryption)
- 作用阶段
SSL/TLS 握手阶段(建立安全连接时)。 - 核心用途
身份验证和密钥交换。 - 典型算法
RSA、ECDHE、ECDSA 等。
关键过程:
- 密钥对:
服务器持有一对密钥(公钥和私钥)。公钥通过数字证书公开,私钥严格保密。 - 证书验证:
客户端验证服务器的数字证书(由可信的证书颁发机构 CA 签发),确认公钥的合法性。 - 密钥协商:
客户端生成一个预主密钥(Pre-Master Secret),用服务器的公钥加密后发送给服务器。
服务器用私钥解密获得预主密钥。
双方基于预主密钥生成相同的会话密钥(Session Key,对称加密密钥)。
为什么用非对称加密?
非对称加密解决了密钥交换的安全问题(无需提前共享密钥),但计算开销大,不适合加密大量数据。
2. 对称加密(Symmetric Encryption)
- 作用阶段
数据传输阶段(握手完成后)。 - 核心用途
加密实际传输的HTTP数据。 - 典型算法
AES、ChaCha20 等。
关键过程:
客户端和服务器使用握手阶段协商的会话密钥(对称密钥)加密和解密数据。
每次会话会生成新的会话密钥,避免长期使用同一密钥带来的风险。
为什么用对称加密?
对称加密算法速度快、效率高,适合处理大量数据。但需要依赖非对称加密安全地交换密钥。
如何伪造HTTPs加密
中间人攻击
介绍
介入通信方的信路链接,使双方误以为还在直接通信。
伪装身份
- 假冒通信的乙方或者双方,伪造证书或者会话信息
如:伪造HTTPS的SSL证书,让浏览器误以为链接是安全的
窃取或者篡改信息
- 攻击者解密、查看或者修改传输中的数据,将数据处理后再转发给真正的接收方
如:HTTP明文直接读取内容,在HTTPS终剥离SSL,降级唯HTTP,绕过加密。
ARP欺骗(局域网攻击)
- 攻击者伪造ARP包,欺骗局域网内的设备将流量发送到攻击者的MAC地址
DNS劫持
- 篡改DNS解析结果,将用户访问的域名指向攻击者的IP
SSL/TLS劫持
- 攻击者伪造SSL证书(自签名证书),利用漏洞窃取服务器私钥,解密HTTPS流量
WiFi热点钓鱼
- 创建恶意WiFi热点,诱骗用户链接后监控所有流量
中间人代理工具
- 实用工具(Burp Suite、MITMf)拦截并修改HTTP/HTTPs请求,常用于渗透测试
案例
公共WiFi窃听
用户在咖啡厅链接免费WiFi,攻击者通过嗅探工具获取用户的登录信息或者银行账户
恶意软件植入证书
恶意软件在用户设备上安装伪造的根证书,浏览器信任后,攻击者可以解密所有的HTTPS流量
钓鱼软件链接劫持
用户点击钓鱼软件,实际上被重定向到攻击者控制的网站,输入信息被窃取
参考
- DeepSeek