场景 爬视频评论者 抖音号 地区 电话(有就爬) 爬主页视频列表 关键词检索排名查询 分析 xgorgon生成算法主要在libcms.so中,在JNI_Onload中动态注册jni函数。 算法用ollvm混淆了,主要是流程平坦化,流程混淆和运算替换。 主要是X-Gorgon和X-SS-STUB.之后经过抓包抖音接口,查看Java层,so层代码。 X-SS-... ...
先通过GZIP压缩,再TTEncryptUtils加密,最后POST发送出去请求 然后X-SS-STUB,发现它只是一个对post的body部分的md5 三:最后我们可以拼装属于自己的请求包
参数1: -1 参数2: 十位时间戳(来自url参数中的十三位时间戳)同 x-khronos 相同。 参数3: post参数的data 部分,就是下图中的r0 参数整理:r0 = md5(url?后的参数) 对网址的参数进行md5 r13 = x-ss-stub,只有post时才有效,否则是32个0 r11 = md5(cookie) 对cookie进行md5 r12 = md5(cookie['session...
这里非常简单,它就是枚举传进来的第二个参数map,判断如果有X-SS-STUB这个值的话就获取,反之则填充3...
X-SS-STUB: 4C4A72E632E1C10EC62C1BEBDF9534A4 x-tt-trace-id: 00-999dc6ff9b9b13948fe61f77d10309e9-999dc6ff9b9b1394-01 User-Agent: com.ss.android.ugc.aweme/1650 (Linux; U; Android 5.1.1; zh_CN; OPPO R11 Plus; Build/NMF26X; Cronet/58.0.2991.0) ...
stub: 把url的参数转成bytes,然后gzip压缩,然后转成md5。 结合xposed使用演示 xpostd 和相关工具下载地址 :https://blog.csdn.net/weixin_43582101/article/details/105264021 下载完成之后,给我们打包好的 hook 模块XGacy选上勾,然后重启设备 (我用的模拟器,手机使用需要root或者下载virtuaXposed) ...
参数2: 十位时间戳(来自url参数中的十三位时间戳)同 x-khronos 相同。 参数3: post参数的data 部分,就是下图中的r0 参数整理: r0 = md5(url) 疑似对网址的参数进行md5 r13 = x-ss-stub,只有post时才有效,否则是32个0 r11 = md5(cookie) 对cookie进行md5 ...
public String doPostNet(String url, okhttp3.RequestBody requestBody, long time, String XGon, String stub, String ck) { Request request = new Request.Builder() .url(url) .post(requestBody) .addHeader("X-SS-STUB", stub) .addHeader("X-SS-REQ-TICKET", System.currentTimeMillis() + ""...
这里非常简单,它就是枚举传进来的第二个参数map,判断如果有X-SS-STUB这个值的话就获取,反之则填充32个0,那么我们抓包发现并没有X-SS-STUB这个参数,实际上如果我们的包是POST的话它就会有,实际上它就是POST数据的一个MD5签名值。 str5来源: str5也非常简单,也是枚举map里面有没有COOKIE,如果有就把COOKIE进行...
消息发送这块主要是找到消息体的构建方法,本身不涉及复杂的算法,只有发送post中才会用到通用算法as/mas、x-gorgon、x-ss-stub等,这些算法有时间,可以整理一下源码(纯c源码),另外看到论坛上已经有朋友分享了用过hook 方式搭建webServer方式来调用app 内部api ...