dy、ks最新版通用quic协议解决方案
作者:互联网
短视频最新版通用quic协议解决方案
文章转载于: https://bbs.pediy.com/thread-268651.htm
看到很多人在说短视频新版app抓不到包,这里接提供解决方案。
由于最新版的两款短视频都使用了quic协议,这就导致爬虫小伙伴在抓包的过程遇到不能抓包的问题,这里提供他们quic协议所有版本的通用解决方案,使他们不使用quic协议,直接通过Charles抓包。
由于不能透露app名字,那就按活跃度说吧。
quic协议是什么
**QUIC(Quick UDP Internet Connection)**是谷歌制定的一种互联网传输层协议,它基于UDP传输层协议,同时兼具TCP、TLS、HTTP/2等协议的可靠性与安全性,可以有效减少连接与传输延迟,更好地应对当前传输层与应用层的挑战。
最火的短视频app
对于该app禁止quic相关的so加载即可,记得没错的话该so是libcronet.so**,通过ida也可以看到相关函数名。
该部分的xposed代码如下:
XposedHelpers.findAndHookMethod("org.chromium.CronetClient", lpparam.classLoader, "tryCreateCronetEngine", Context.class, boolean.class, boolean.class, boolean.class, boolean.class, String.class, Executor.class, boolean.class, new XC_MethodHook() {
@Override
protected void beforeHookedMethod(MethodHookParam param) throws Throwable {
Util.xposedLog("CronetClient disable tryCreateCronetEngine");
param.setResult(null);
}
});
这样就可以继续抓包奔放了。
排名第二的短视频app
该app使用quic协议比较早,之前由于不同版本混淆,导致hook代码要更新,后来通过看了一部分Cronet网络库的资料,找到该通用型的解决方案,该app的加载的so是libconnection**.so,记得没错的话。
该部分的xposed代码如下:
XposedHelpers.findAndHookMethod("com.**.aegon.Aegon", lpparam.classLoader, "nativeUpdateConfig", String.class, String.class, new XC_MethodHook() {
@Override
protected void
beforeHookedMethod(MethodHookParam param) throws Throwable {
param.args[0] = "{\"enable_quic\": false, \"preconnect_num_streams\": 2, \"quic_idle_timeout_sec\": 180, \"quic_use_bbr\": true, \"altsvc_broken_time_max\": 600, \"altsvc_broken_time_base\": 60, \"proxy_host_blacklist\": []}";
}
});
最后+用postern转发到抓包工具。
看雪上的另外一种
使用iptables 禁止掉udp的53端口,因为quic使用的udp发包,53端口又主要用于域名解析,所以禁止掉后,无法正常通讯,就会自动降级到http。
小结
现在的quic协议抓包基本是通过quic无法正常使用,迫使app使用http进行抓包,希望能通过分析cronet相关源码进行突破,直接抓取quic的相关数据包。
如果你觉得麻烦,这里有已经改包好的app和插件,可以直接抓包!
可以滴滴 扣扣: 519545433
标签:协议,app,ks,boolean,quic,最新版,class,抓包 来源: https://blog.csdn.net/weixin_38819889/article/details/121853173