51mee - AI智能招聘平台Logo
模拟面试题目大全招聘中心会员专区

HTTPS协议中的TLS 1.3握手过程,请详细说明其工作流程,并分析360浏览器如何防范中间人攻击(MITM)?请举例说明如何利用中间人攻击窃取用户数据(如Cookie)。

360助理安全研究员(漏洞挖掘与利用)难度:中等

答案

1) 【一句话结论】

TLS 1.3通过简化握手流程(减少步骤、支持0-RTT、增强密钥交换安全性),结合证书 pinning、HSTS等机制,有效防范中间人攻击;360浏览器通过这些技术,确保通信安全,防止中间人窃取用户Cookie等敏感数据。

2) 【原理/概念讲解】

TLS 1.3握手流程分为四个阶段,核心逻辑是“身份认证+密钥协商+加密通信”:

  • 初始交换:Client发送ClientHello(包含支持的协议版本、加密套件如TLS_AES_128_GCM_SHA256、会话标识符),Server回应ServerHello(选择加密套件)。
  • 密钥交换:Client发送ClientKeyExchange(包含预主密钥,支持0-RTT,即客户端可立即发送应用数据),Server验证证书后生成主密钥。
  • 认证:双方交换证书(Client验证Server证书的CA链合法性,Server验证Client证书),并交换CertificateVerify(Client用主密钥验证身份)。
  • 完成:双方用主密钥生成Finished消息,验证握手过程未被篡改。

类比:就像两个人见面,先交换“名片”(证书),约定一个“秘密”(密钥),之后用这个秘密加密对话。中间人攻击就是冒充一方,窃取秘密或篡改对话。

3) 【对比与适用场景】

特性TLS 1.2TLS 1.3
握手步骤数量4(ClientHello→ServerHello→ClientKeyExchange→CertificateVerify→Finished)4(简化,减少步骤,如ClientKeyExchange合并)
0-RTT支持不支持支持(客户端可发送应用数据)
密钥交换算法RSA、DHE、ECDHEECDHE(默认)、支持0-RTT
认证方式服务器认证客户端(可选),客户端认证服务器(可选)服务器认证客户端(可选),客户端认证服务器(可选),更强调密钥交换的安全性
使用场景传统Web应用,兼容性要求高新建应用,追求性能和安全性
注意点可能存在弱加密套件,易受攻击需要客户端支持,部分旧设备不兼容

4) 【示例】

HTTP请求(简化):

  • Client发送:GET / HTTP/1.1\r\nHost: www.example.com\r\nUpgrade: TLS/1.3\r\nConnection: upgrade\r\nTLS-Protocol-Version: 1.3\r\nTLS-Protocol-Features: 0x0001 (0-RTT supported)
  • Server回应:HTTP/1.1 200 OK\r\nServer: Nginx\r\nContent-Type: text/html\r\nConnection: close

中间人攻击窃取Cookie:
攻击者截获Client的ClientHello,修改为支持弱加密套件(如TLS_RSA_WITH_RC4_128_SHA),并伪造Server的证书(替换为攻击者的证书)。当Client连接时,攻击者冒充Server,接收Client的Cookie(如JSESSIONID=abc123),然后转发给真实Server,实现窃取。

5) 【面试口播版答案】

“您好,关于TLS 1.3握手,它简化了流程,主要步骤是ClientHello、ServerHello、密钥交换(支持0-RTT,客户端可发送应用数据)、证书交换和完成。360防范MITM主要通过证书 pinning(绑定特定证书公钥)、HSTS(强制HTTPS)、安全头(如Strict-Transport-Security)以及TLS 1.3的0-RTT保护。比如,中间人攻击中,攻击者可以截获Cookie,因为传统TLS 1.2中客户端可能发送明文Cookie,攻击者通过中间人篡改请求,窃取Cookie。360通过证书 pinning,确保只有合法的证书才能解密,防止伪造。”

6) 【追问清单】

  1. 0-RTT的优缺点?

    • 优点:加速页面加载(客户端可立即发送应用数据);
    • 缺点:可能泄露未加密的初始数据(如登录凭证)。
  2. 如何处理服务器端0-RTT?

    • 需要确保服务器端密钥交换安全(如使用ECDHE),避免预主密钥泄露。
  3. 证书 pinning的实现方式?

    • 通过哈希值(如SHA-256)绑定证书公钥,存储在客户端本地。
  4. HSTS的作用?

    • 强制浏览器与网站使用HTTPS,防止HTTP重定向攻击。
  5. 如何绕过证书 pinning?

    • 攻击者通过DNS劫持或DNS欺骗获取合法证书,或利用弱加密套件绕过。

7) 【常见坑/雷区】

  1. 混淆TLS 1.3的握手步骤顺序(如误认为密钥交换在认证之前)。
  2. 错误描述0-RTT的细节(如认为0-RTT完全安全,忽略数据泄露风险)。
  3. 误解证书 pinning的作用(如认为pinning只用于验证证书,忽略公钥绑定)。
  4. 忽略中间人攻击的具体手段(如窃取Cookie的流程,仅说“篡改通信”)。
  5. 认为TLS 1.3完全解决了所有MITM问题(如忽略DNS劫持、弱套件等攻击面)。
51mee.com致力于为招聘者提供最新、最全的招聘信息。AI智能解析岗位要求,聚合全网优质机会。
产品招聘中心面经会员专区简历解析Resume API
联系我们南京浅度求索科技有限公司admin@51mee.com
联系客服
51mee客服微信二维码 - 扫码添加客服获取帮助
© 2025 南京浅度求索科技有限公司. All rights reserved.
公安备案图标苏公网安备32010602012192号苏ICP备2025178433号-1