折腾一下午,发现了reality的问题

查看 132|回复 10
作者:imes   
花了一下午做流量分析,不得不承认这个协议确实很强,难以从流量上分辨。
但是!单入口不可能承载那么多流量!
理论上的最佳状态,是找一个大流量视频网站的同机房ip,然后使用这个ip作为伪装状态。但事实上,基本不可能在低价范围内找到这么一个IP地址。
一眼丁真,鉴定为:脱裤子放屁!

流量, 下午, 状态

yousihai   
   

一腔热血总喂狗 发表于 2023-5-5 19:39
有人介绍一下reality的原理吗
挺好奇的为什么可以不用证书 还能用别人的证书 ...

tls握手时,转发流量到大站的ip上,从而进行真实证书的握手。
在握手时,tls有一个随机数,通常是真的随机的,而reality并不是真的随机,而是包含了认证信息的。
如果发现这个随机数符合认证信息,则认定连接方并不是真的浏览器,而是fq客户端,在完成证书交换后,切换到aes加密,并不使用真正的tls加解密来传输,这样就可以实现真握手,假tls了。
如果认证失败,则认为客户端是真的浏览器(或别的任何客户端),继续转发流量到大站,这样你就能看到一个真正的大站的页面了。由于只是流量转发,并不需要加解密,也就不需要知道私钥什么的了。

以上只是理论原理,实际实现要考虑更多因素,比如如何可靠的认证是有效的xray客户端防止误判,如何防重放。以及在脱离tls后的伪tls阶段如何模拟真实tls,使得从流量特征角度看和tls一模一样,等等都是相当繁琐的事情,一旦有自己的特征就很容易被抓住秒杀
PS: tls中可以利用的并不只有随机数一个,所有可以自定义的非加密的字段都可以拿来做认证。例如session_ticket,例如每个包开头都会有的报文序列号,都是明文的且没有固定值的,这些都可以用作认证用途,并且很难检测
emptysuns   

要不阁下给出一个完美的伪装方案?
你说流量大是不正常,那你为什么不买数十个服务器同时开节点用负载均衡
是开不起吗?
能做到在tls层面不好识别就够了
wolfxuelang   
AWS AZ Akamai:?
imes
OP
  

wolfxuelang 发表于 2023-5-5 19:11
AWS AZ Akamai:?

一天50G都是cdn,这叫不打自招
Sage   
伪装,识别本来就是互相攻防,不存在绝对安全
天涯任我行   
为什么要偷大站的证书,我就是直接偷自己网站(同IP)的证书。
风轻   

天涯任我行 发表于 2023-5-5 19:22
为什么要偷大站的证书,我就是直接偷自己网站(同IP)的证书。

那跟直接自己tls加密有区别么。。
一腔热血总喂狗   
有人介绍一下reality的原理吗
挺好奇的为什么可以不用证书 还能用别人的证书
imes
OP
  

一腔热血总喂狗 发表于 2023-5-5 19:39
有人介绍一下reality的原理吗
挺好奇的为什么可以不用证书 还能用别人的证书 ...

证书是偷别人的,客户端用的公钥发送信息,实际上服务端并没有真的私钥,更不可能去解密,而是进行了流量匹配和转发。
您需要登录后才可以回帖 登录 | 立即注册

返回顶部