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

4563博客

全新的繁體中文 WordPress 網站
  • 首頁
  • 代理能够重发消息吗?
未分類
25 11 月 2020

代理能够重发消息吗?

代理能够重发消息吗?

資深大佬 : jimmyismagic 4

假如你连了一个恶意的代理,连上一个 https 服务,一般代理是看不到你发送的内容的

但是,代理能不能劫持你的加密内容,重复发送给对应服务,我感觉不太可能,因为 http 是无状态的,链接建立处理完消息就断了,一般不能在一个链接内处理两个 POST 请求,我这个看法不知道对不对?

但如果我连的是一个 websocket(wss)服务,使用了中间代理,这个代理能不能劫持我的消息多次重发?

假设链接的服务是买卖股票,那有没有可能在买股票的时候被代理恶意重发而重复购买?

大佬有話說 (19)

  • 資深大佬 : superrichman

    代理看不到明文但可以抓包重放。
    服务端没事防重放处理就有可能会重复购买。
    不要用无法信任的代理服务。

  • 資深大佬 : lujjjh

    你也太小看 TLS 协议了。

    「因为 http 是无状态的,链接建立处理完消息就断了,一般不能在一个链接内处理两个 POST 请求」也是错误的。

  • 資深大佬 : neteroster

    关键词: https replay attack

  • 資深大佬 : des

    不仅不能重放,而且还能向前保密,确保私钥泄漏也不能解密
    http://wmaintw.github.io/2015/03/07/perfect-forward-secrecy.html

  • 資深大佬 : iceheart

    理论上是可能的,—–比如说大整数质因数分解被攻破,或者 AES 对称加密被破解。

  • 資深大佬 : carlclone

    @des 这么恐怖吗,真没想过还能录制下来等以后解密的神操作

  • 資深大佬 : ZRS

    TLS 是防重放的

  • 資深大佬 : baobao1270

    HTTPS 可以防止重放攻击,HTTP 若服务端无防御措施无法防御

  • 資深大佬 : xcstream

    应该不能

  • 資深大佬 : deorth

    甚至不需要代理,只要路由转发链路上的某一台机器部署了相应服务就可以实现重放。
    要是和钱相关的服务连防重放都做不到可以赶紧倒闭了

  • 主 資深大佬 : jimmyismagic

    @superrichman https 服务端真的需要防止吗?
    @lujjjh 举个例子?
    @neteroster 多谢,有没有权威的论述?
    @des 所以你们到底谁正确?
    @iceheart 嗯,被破解当然可以,假如加密无法破解的情况下,用 https 可以防止重放吗?
    @ZRS 所以你们到底谁对?说说原因
    @baobao1270 我感觉也是,websocket(wss)呢?
    @xcstream websocket(wss)呢?
    @deorth 不止和钱相关,各种操作都有对个人的数据造成风险,不可能每次写个接口都要考虑是否要防止重放吧

  • 資深大佬 : baobao1270

    @jimmyismagic Websocket 好像无法防止,WSS 可以。或者说任何使用 TLS 的应用都能防止重放

    但是,在设计程序时,会在 HTTP 应用层再做一次防重放。不过 Websocket 做防止重放的比较少,一般来说 WS 不涉及重要操作,比如聊天,重复一句也是可以的。

  • 主 資深大佬 : jimmyismagic

    @des 看了你的文章,才知道密钥协商还有这个功能,怪不得我看到很多私有服务都采用 DH 算法,原先以为一个随机密钥就可以了,现在相当于该次连接中在内存中保留了随机私钥没有传输。那么 https 默认是否使用了 DH 这个方式呢?还是哪里需要配置,或者需要在双方应用层协商?

  • 主 資深大佬 : jimmyismagic

    @baobao1270 wss 感觉应该也无法防止啊,因为你的链接没有断开,服务端直接收消息处理就行了

  • 資深大佬 : superrichman

    tls1.3 0-RTT replay
    译文 (可重复性 章节)
    https://www.oschina.net/translate/rfc-8446-aka-tls-1-3?lang=chs&p=3
    原文 (Replayability 章节)
    https://blog.cloudflare.com/rfc-8446-aka-tls-1-3/

    还是要在应用里做防重放.

  • 主 資深大佬 : jimmyismagic

    @des
    @superrichman
    你们两个各有道理,所以到底能不能重放?

  • 資深大佬 : des

    @jimmyismagic
    我认为你都没有好好看,能不能要看服务端和客户端的具体配置
    如果你非要一个结果,那就是可以

  • 資深大佬 : des

    @des
    在没有指定场景的情况下,我可以假定客户端服务端能接受不安全的加密。
    甚至可以假定客户端能接受任何不安全的证书,这种情况都可以中间人攻击

  • 主 資深大佬 : jimmyismagic

    @des 当然不考虑中间人攻击和客户端安全证书的问题,就是在正常的情况下,你说了一个是保留历史,等未来拿到私钥或者算法破解了,还有一个是用 DH 算法,可以做到完全向前保密,那么在正常的一个 https 链接下,能不能发两次 POST,http 中的 keep-alive 能不能做到呢?

文章導覽

上一篇文章
下一篇文章

AD

其他操作

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

51la

4563博客

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