跳至主要內容
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?

4563博客

全新的繁體中文 WordPress 網站
  • 首頁
  • https 加密的问题
未分類
24 6 月 2020

https 加密的问题

https 加密的问题

資深大佬 : ileeoyo 10

请问个 https 加密的问题。 我抓包发现 https 的包,里面 user-agent 和域名部分是明文的,其他的内容是加密的。 请问一下 https 加密了哪些内容,换句话说,在没有中间人攻击的前提下,可以通过抓包获取 https 中的哪些信息?

大佬有話說 (41)

  • 資深大佬 : BrettD

    https://en.wikipedia.org/wiki/Server_Name_Indication

  • 資深大佬 : Aliencn

    你自己不都已经通过抓包看出来了?

  • 資深大佬 : leafre

    获取不到信息,能获取到还叫 SSL

  • 資深大佬 : hatebugs

    show your pcap

  • 資深大佬 : unixeno

    会加密所有 http 的内容
    开 sni 扩展之后会在 ssl 握手的时候带上域名,不然服务器不知道要给你谁的证书

  • 資深大佬 : supermoonie

    顶多能看到 CONNECTING 这一行,剩下的全部加密

  • 資深大佬 : flynaj

    域名是可以看到的,要匹配证书,user-agent 看不到。

  • 資深大佬 : zzetao

    HTTPS 是在 应用层 (HTTP) 与 传输层 (TCP) 之间架了一层 TLS/SSL,加密内容是 HTTP 所有内容。
    除了 TCP/IP 的数据包,想象一下,如果 TCP/IP 都加密了,那路由器等等怎么找到目标 IP/端口 去传输数据?

  • 資深大佬 : ysc3839

    整个 HTTP 协议都是加密的,只能获取 TLS 协议的一些信息,比如 SNI 、证书。

  • 主 資深大佬 : ileeoyo

    @flynaj 是我姿势不对吗?怎么看到了明文的 user-agent

  • 主 資深大佬 : ileeoyo

    @BrettD 谢谢,我看一下 sni 的问题

  • 主 資深大佬 : ileeoyo

    @Aliencn 主要是看到了明文的 user-agent 比较奇怪,按理说应该看不到

  • 主 資深大佬 : ileeoyo

    @leafre 可以获取到域名啊,这也可以做上网行为分析。比如我有一个路由器的管理权,我想知道除了域名其他的还有没有能获取的

  • 主 資深大佬 : ileeoyo

    @hatebugs append 了

  • 主 資深大佬 : ileeoyo

    @zzetao 目前域名是可以获取的

  • 資深大佬 : nieqibest

    我猜主不会科学上网

  • 資深大佬 : no1xsyzy

    草,生了出来
    CONNECT 是通过 HTTP 协议实现的代理协议的谓语,而不是 HTTPS 协议的谓语
    200 的状态描述也是 Connection established 而不是 OK

  • 主 資深大佬 : ileeoyo

    @nieqibest 不要盲猜,要是能答疑解惑就多谢帮忙,不要说些与话题无关的话

  • 資深大佬 : monkeyWie

    那是因为你用的 http 代理抓的包,正常是没有 CONNECT 请求的,这个是和代理服务器的握手

  • 資深大佬 : illl

    请在 Wireshark 下抓 https 的包

  • 主 資深大佬 : ileeoyo

    @monkeyWie 这是用 http 代理抓包的原因吗?我用 wireshark 试试

  • 資深大佬 : arloor

    你这是在 connect 连代理,练完之后传输的才是被 http over tls 的东西,也就是一串乱码

    要理解这个东西,你去搜下 http connect 方法就行。

    需要自成体系的学习,咋遇到个问题上 V2EX 呢

  • 資深大佬 : qwerthhusn

    代理服务器而已,想要理解 TLS 的数据包

    去 Wireshark 抓包去看,不要经过代理

    https://tls13.ulfheim.net/
    https://tls13.ulfheim.net/
    这两个网址,作者做的挺有意思,图示全程分析了 tls 握手的每一步中的每一个字节是什么意思

  • 資深大佬 : smallpython

    问题是个好问题, 主你不要在意有些莫名其妙的回答
    而且我遇到过抓包工具自动读取系统私钥把包解密出来再呈现在屏幕上, 让当时的我以为加密了也能看见明文…….

  • 資深大佬 : sujin190

    这不是连接你代理服务器的信息么,不明文你咋代理连接

  • 主 資深大佬 : ileeoyo

    @qwerthhusn 感谢感谢,我已经 wireshark 抓包看了

  • 資深大佬 : caola

    HTTP/3 和 ESNI 已经在路上了,DNSsec/DoT/DoH 也在慢慢得到支持

  • 資深大佬 : monkeyWie

    @ileeoyo 是的,用 wireshark 就看不到了,但是 tls client hello 里还是会有 SNI 扩展暴露域名,不过现在好像有 ESNI 来做加密了

  • 資深大佬 : holyzhou

    @qwerthhusn 两个地址重复的 请问另一个地址是什么?

  • 主 資深大佬 : ileeoyo

    @smallpython 上很多人还是给了很多好的意见,不过确实也有人回复和话题不相关。有时确实在不熟悉的地方有些疑惑,帖子出来以后别人搜索也有个好的借鉴

  • 主 資深大佬 : ileeoyo

    @caola doh/dot 目前也还没广泛支持,我也在持续关注,毕竟我目前的网络环境就有 dns 劫持的问题,太难受了

  • 主 資深大佬 : ileeoyo

    @qwerthhusn 感谢,我去看看

  • 資深大佬 : leafre

    @ileeoyo host 确实要暴露,要去 dns 取 ip

  • 主 資深大佬 : ileeoyo

    @arloor 只是一时很迷惑不知道从何搜起,比如这里你给了关键词 http connect 去搜索学习就快得多了。也给后来的人一些借鉴吧

  • 主 資深大佬 : ileeoyo

    @leafre dns 可以用 doh 解决,只是目前 tls 的握手阶段,sni 会暴露域名

  • 資深大佬 : leafre

    @ileeoyo ESNI

  • 資深大佬 : no1xsyzy

    @smallpython #24 不对啊,这应该是不可能的。TLS 是在用户态每个应用独立实现的,握手产生的一次性密钥应该不会出现在系统里(当然,系统可能会自带一些库,但内容是在进程里的)。
    而系统内能读到的是公开的证书,包含的公钥也是无法单方面解密的。
    你指的可能是自动往系统内插根证书?这是提权操作,即使没有让你亲手操作也是很明确地提示你这一操作破坏了你机器上 HTTPS 的完整性。

  • 資深大佬 : smallpython

    @no1xsyzy 我理解你只要有私钥就可以解密吧, 一般不是存在系统的某一个文件夹下嘛(具体是哪个我也不知道….)

  • 資深大佬 : no1xsyzy

    @smallpython #38 因为你说的是私钥,这是非对称加密的术语,所以我认为你是指 TLS 层握手前已经确定的非对称密钥对中的私钥。这个私钥只存在于服务器上,不存在于你本地。对应的公钥则附在证书内分发,一般与域名绑定。也就是说,私钥基本固定到域名,拥有特定私钥即可向任何人伪装这些域名身份。
    而且即使拥有私钥也是无法旁观者的,因为非对称加密的效率是比较低的,所以目前来说非对称加密是用来安全地交换一个一次性密钥的。一旦交换完成,这一密钥只存在于每个客户端 /浏览器的用户空间内。所以你必须通过中间人攻击的方法,在两侧使用不同但中间人均知晓的一次性密钥,每次中间人均先解密再加密。

  • 資深大佬 : smallpython

    @no1xsyzy 服务器发给我的数据包我不是也要用本地的私钥来解密吗?你的意思是这个私钥每次都是重新生成且存在浏览器的内存中的吗?我一直以为是存在某一个文件里, 是固定的, 除非手动删除再重新生成, 不然不会变…..

  • 資深大佬 : no1xsyzy

    @smallpython #40 本地没有私钥,只有公钥(通过证书链分发,存储于内存或长期存储(根证书,或者一些应用用于证书固定))和对称密钥( nonce,Number ONCE,存储于内存,每次握手时生成)。
    nonce 不分公私,两边是相同的。
    nonce 是每次握手时重新生成的,除了客户端侧生成、通过非对称传递的随机数以外,服务器侧也会每次生成随机数参与 nonce 的生成,避免客户端实现不完全导致的安全性丧失。具体技术上似乎有三个随机数参与 nonce 生成。

    我觉得提示了并且被你主观忽略了是有可能的。仅仅上述业余的安全知识就够人吃一壶的了。

文章導覽

上一篇文章
下一篇文章

AD

其他操作

  • 登入
  • 訂閱網站內容的資訊提供
  • 訂閱留言的資訊提供
  • WordPress.org 台灣繁體中文

51la

4563博客

全新的繁體中文 WordPress 網站
返回頂端
本站採用 WordPress 建置 | 佈景主題採用 GretaThemes 所設計的 Memory
4563博客
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?
在這裡新增小工具