最近闲来无事,在分析一款短视频类软件, 想找到这个软件请求视频的地址.我能最近写一些爬取短视频的软件.
名字叫做..Like短视频
官网地址 https://like.en.uptodown.com/android
百度云 ; 链接:目标软件
提取码:4svy 版本是2.4.9
复制这段内容后打开百度网盘手机App,操作更方便哦
1 注意,官网下载的最新版本,不能再模拟器运行,不过有老版本 ,我放在百度云盘里面.
网上关于这方面的资料少之又少,几乎没有查询到有关信息.
(1) 从拿到这款软件开始 ,最开始两天一直在解决抓包问题,因为一直抓不到包,换各种软件,最后去找人求助,找一个搞逆向的,他说可以抓包,软件300元,我都差点购买了.(这人屁股特别黑) ... 最后我自己找到这款软件,
ddms没有任何信息...
抓包软件下载地址
链接:抓包工具
提取码:7fn4
(2 ) 安装这个软件后能抓包了,但是发现找不到我想要的信息,没有我的一些 get post 请求,能抓到的就是一些无关紧要的链接,但是这不是我想要的啊!!!.. 然后就查啊,查啊,了解到很可能是采集的tcp链接的方式...
(3) 然后我又花了很多时间去 学习这个tcp 协议,在了解到 SLLSocket 协议
最后,我认为这个软件 是采用ssl安全链接操作的,随后我又去找资料,找到关于这个协议的,源码在这里我发给大家
(4)里面,有两个 D:/jar包/SSLSocket演示/ejbcakclient.jks
JKS文件如果不想改源码,直接放在这个目录.就可以
链接:SSLSocket 包含服务端,跟客户端
提取码:bhgs
,然后,我把这个源码也调试起来了,
(5) 在看源码的过程中, 我们知道既然这个软件是从服务器,获取短视频链接信息,肯定要获取输入流, 名称叫getInputStream 这个函数 还有一个 OUT 输出函数,按照我们常理来说,如果是网络交互一定会用到这个函数,3.
InputStream input = sslSocket.getInputStream();
OutputStream utput = sslSocket.getOutputStream();
(6) 然而我最后以失败告终,虽然说堆栈信息打印出来了,但是 我去下断点,程序断下来以后,我在去刷视频,居然like 还是可以正常刷视频,说明我们断下的不是关键地方,或者说这个根本没用到,
(7) 好吧,既然此路不通,那我可以hook map 跟jsonobj 关键函数,总能找到一些有用的信息吧,但是非常不幸,这个方法,对付这个软件行不通,因为我们抓包没任何信息,而tcp协议,我们也看不到内存,此时就像一个武林高手,被蒙蔽了双眼,
任你有屠龙刀, 倚天剑 ,降龙十八掌 ,依旧无济于事..........................,
(7)话到了这里,咱也不是第一次玩逆向,对吧,咱可以根据以前逆向软件的经验,来猜他这个关键词啊 什么 version device UUID ..等等这些信息,一定能够给与我帮助,然而失败了,根本没找到关键点...
(8) 又一次被实力打脸,各种办法试了,直到现在为止, 我依然没有成功的断下来,不说分析,在请求视频的时候,都没有断下来......啊啊啊 ,这怎么受得了啊!受不了这个气,
(9) 然后又一招,从代码入手,他这不是滑动吗,滑动安卓肯定都有按钮事件监听的
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | setOnRefreshListener(SwipeRefreshLayout.OnRefreshListener listener)
?设置监听,需要重写onRefresh()方法,顶部下拉时会调用这个方法,在里面实现请求数据的逻辑,设置下拉进度条消失等等。
?
setProgressBackgroundColorSchemeResource( int colorRes)
?设置下拉进度条的背景颜色,默认白色。
?
setRefreshing(boolean refreshing)
?设置刷新状态,true表示正在刷新,false表示取消刷新。
1 onRefresh 方法
2 setRefreshing(boolean refreshing)
?设置刷新状态,true表示正在刷新,false表示取消刷新。
onInterceptTouchEvent 界面监听..
|
我把上面的这些,都试了,不过最终还是断下来了,这是我的笔记
1 2 3 4 5 6 7 8 9 10 11 12 | onInterceptTouchEvent 界面监听..
这里为关键点 ... 进行判断的位置. 这下面的都可以断下来!
com.refresh.MaterialRefreshLayout.onInterceptTouchEvent
small_2
Lsg / bigo / live / widget / CustomDrawerLayout / onInterceptTouchEvent
small_3 这是表示第三个small文件,大家可以字节去这个位置下断点..
Lsg / bigo / live / widget / EmoticonRecyclerView; /
Lsg / bigo / live / widget / HomeViewPager; / 比较重要...
Lsg / bigo / live / widget / InterceptFrameLayout;
|
但是分析到最后,我最终还是输了 没有看到任何关键信息,
还原大家踊跃讨论,共同进步!
[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课
最后于 2020-11-27 18:50
被小爱逆天编辑
,原因: 修改标题