java+pycharm如何实现抖音视频爬虫

这篇文章给大家分享的是有关java+pycharm如何实现抖音视频爬虫的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

沈阳网站制作公司哪家好,找创新互联建站!从网页设计、网站建设、微信开发、APP开发、成都响应式网站建设公司等网站项目制作,到程序开发,运营维护。创新互联建站从2013年成立到现在10年的时间,我们拥有了丰富的建站经验和运维经验,来保证我们的工作的顺利进行。专注于网站建设就选创新互联建站

1、用到的工具等:

Charles (随便一个抓包工具即可,哪个顺手用哪个)

动态字段: x-gorgon:0408*** (开头)

抖音Version:12.8.0 (发帖时的最新版本)or 抖音极速版 (文件少,编译快)

IDA or JEB

Jadx-gui

frida

Pycharm

root 真机(Android) or 模拟器

2、反编译:

Apk 直接丢入 Jadx-gui or Apk==>zip ==> 解压 ==> .dex 全部打包丢入 Jadx-gui

查找关键字: x-girgon

java+pycharm如何实现抖音视频爬虫cdn.nlark.com/yuque/0/2020/png/97322/1607128046539-933da4e3-cc27-4aa6-86dd-93ecf6c9281f.png">

先看调用处:

java+pycharm如何实现抖音视频爬虫

这个so 文件全名: libcms.so apk压缩包中可以找到。

接下来看看函数声明处:

java+pycharm如何实现抖音视频爬虫

代码不能被工具完美还原,试了几个工具都这球样,不用浪费时间折腾了。直接看吧,功底好的可以直接看Smali 代码。

java+pycharm如何实现抖音视频爬虫

可以看到r8 即为想要的值,向上查找r8

java+pycharm如何实现抖音视频爬虫

其中 com.ss.a.b.a.a() 是重载函数,hook时需要注意下。

java+pycharm如何实现抖音视频爬虫

贴附一段Frida 代码: 注意overload("")

java+pycharm如何实现抖音视频爬虫

这块儿的代码是可以正常展示的,很好还原:

java+pycharm如何实现抖音视频爬虫

接下来到了难点:

byte[] r0 = com.ss.sys.ces.a.leviathan(r8, r7, r0)

这个不太好还原, 三个参数:

java+pycharm如何实现抖音视频爬虫

native 修饰的 leviathan ()函数, 对应的方法体在最早加载的 cms.so 中。

可以使用ida or jeb 进行查看,会发现没有到处函数,其使用了花指令混淆的加密措施。

破解难度太大,可以考虑换了一种简单的调用方式进行解决

优先推荐 : frida-rpc, 实现思路如下: 具体的自行完善

(我自己使用的java 进行主动调用的,想了解的可以关注后留言,或者微信)

java+pycharm如何实现抖音视频爬虫

这种方式比较简单,还可以开微服务。

其中传递进去的参数可以使用frida hook 进行获取

java+pycharm如何实现抖音视频爬虫

输出结果为:

java+pycharm如何实现抖音视频爬虫

参数1: -1

参数2: 十位时间戳(来自url参数中的十三位时间戳)同 x-khronos 相同。

参数3: post参数的data 部分,就是下图中的r0

java+pycharm如何实现抖音视频爬虫

参数整理:

r0 = md5(url?后的参数) 对网址的参数进行md5

r13 = x-ss-stub,只有post时才有效,否则是32个0

r11 = md5(cookie) 对cookie进行md5

r12 = md5(cookie['sessionid']) 对cookie里面对sessionid进行md5,否则也是32个0

感谢各位的阅读!关于“java+pycharm如何实现抖音视频爬虫”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!


分享名称:java+pycharm如何实现抖音视频爬虫
当前URL:http://myzitong.com/article/gpgies.html