AdGuard-Rules
AdGuard-Rules copied to clipboard
关于微信的mmTLS问题
截至22/1/4,抓包发现微信的若干个使用mmTLS的域名
- dns.weixin.qq.com
- sz*.weixin.qq
实测单拦截1不影响使用,单拦截2不影响使用,广告自然还在,似乎二者互相为对方提供DNS解析服务。两个都拦截,微信登录功能失效,广告则无法加载出来。 目前无解。
可以拦截dns.weixin.qq.com
但是不可以拦截*.weixin.qq.com/mmtls
或者 szmmsns.qpic.cn/mmsns
业务逻辑和广告逻辑走了/mmtls
, /mmsns
,看上去是要MITM去过滤里面的请求才有可能过滤掉广告
可以拦截
dns.weixin.qq.com
但是不可以拦截*.weixin.qq.com/mmtls
或者szmmsns.qpic.cn/mmsns
业务逻辑和广告逻辑走了
/mmtls
,/mmsns
,看上去是要MITM去过滤里面的请求才有可能过滤掉广告
到了动用MITM的地步, 那就太麻烦了... 只能说张小龙**
所以有啥 比较好的解决方案吗
所以有啥 比较好的解决方案吗
在不怎么影响正常使用的情况下没有, 懒得弄了
有一个思路,mmtls/<6位业务码>,列举出业务码及其含义。但是有一个弊端,gw上面稍作修改就可以令业务码改变。
但是,初步看来走的是80端口,(当然不排除SSL走80端口),那么可以针对/mmtls
进行钩一下(譬如套一层转发,改域名解析到本地的服务),与MITM类似,但是单单针对微信,再分析每个业务码的结构体,通过结构体去做放行。
另外,小试一下,发现wx会fallback到具体的业务域,可能触发fallback,然后在业务域处理也是一个思路。