1、前语
网上现已有许多的web端接口解析的办法了,可是对客户端的接口解析基本上找不到什么材料,本文首要剖析网易云音乐PC客户端的API接 *** 互 *** 。
经过内部的署理设置,运用fiddler作为署理东西,即可检查交互流程:
能够大致看一下交互 *** ,经过HTTPS POST交互,POST了一串params的内容,内容加密,回来 *** ON内容,我要做的要点就在于解析params的生成 *** ,用于模仿这次交互。
(Tan1993:这是后续编写的内容,截图许多都是后补的,所以或许会呈现运用不同的调试东西,不同的环境,不同的时刻等,不影响阅览。别的自己作业首要是linux *** 方向的,像是这次仅仅我的一点业余爱好,也很少会去逆向东西,假如呈现一些比较业余的操作或主意时,还望指出)
2、开始了解
下载最新版PC版网易云装置(现在是2.3.0.196231版别),剖析在程序地点目录下的文件。
动态链接库与可执行文件:
之一个最让我留意的时libcurl,这个 *** 库能够用于HTTP协议交互,假如经过该库与服务器交互, od断点到curl_easy_perform再往回推就能够判别转化算法方位了,但是现实比我幻想的杂乱多了,这个库仅在程序刚运行时用于一些无关的 *** 交互(Tan1993:记不清了,好像是版别仍是客户端信息相关的恳求)。
第二个是libcef,这个是个根据C/C++的Web browser控件,能够简略理解为便是个浏览器的壳子(Tan:为什么说要害API没用到libcurl库,由于除了开始时cef结构还没初始化前 *** 交互用到那个库罢了,一点cef环境起来了,都是经过 *** ajax交互了)。
其他的除了cef依靠的dll外,两个主程序和cloudmusic.dll都比较值得重视。
资源文件:
除了在package下的其他都是cef库依靠的资源文件。
都是不知道的格局,一般看到不知道格局的文件,我都会用7z测验翻开看看,是不是某种归档格局文件,这个一下就蒙中了,是zip格局的。
除了几个经过后缀就能看出来的皮肤文件,还有两个比较可疑的文件,翻一翻比较大的orpheus.ntpk文件,里边能够看到都是网页相关的资源文件,看到那个core.js,就让我联想到网页版API提取时用到的那个core.js文件了,脑海里就想着替换然后对转化流程动态剖析了,现实有点不尽人意,该zip文件加密了。
OK,调研阶段完毕,在不进行逆向解析前,能了解到的也就停步于此了。
3、之一轮测验
其实一开始我是把目光放在libcurl上面的,在断点到curl库的函数上时发现只要程序刚运行时触发过几回,后边一切 *** 交互都不必这个库了,就转战到cef上。而cef的要点在于内部的 *** 文件,能提取到该文件才是要害的。
0×2712即CURLOPT_URL宏,eax中存放着url的字符串指针,基本上都是无关的url。
之一个使命来了,逆向寻觅特征串,也便是暗码,这儿断点到体系文件操作API上,断到CreateFileW,一顿的F9后能够看到加载到default.skin文件了(图中是native.ntpk,同类型的加密ZIP文件),后续就单步调试下去。
然后看到一个比较特别的内存块,一看便是PNG格局的文件头,就能够判别这一步资源现已解压缩到内存了。
往上推几步,断点,缩小规模,再跟下来,看看哪里做了解压操作,再一步步跟函数。(Tan1993:或许比较业余,但我也只能一点点缩小规模在一点点看流程,凭经历判别或许会做什么操作,缩短到比较短的规模,否则一堆汇编码真的会受不了,感谢世界上程序员的思维都是挨近的吧)。
得知暗码后,就能够解压出core.js文件了(Tan1993:这儿仅供给思路,不供给便民服务哈)
又是这一堆让人窒息的混杂,卡得置疑人生,先解压缩再看吧。
解压后,搜几个要害字,比方params,eapi,batch等最上面HTTP交互时的一些特征
[1] [2] [3] [4] 黑客接单网
0x01 开发Exploit 许多的模板引擎都会企图约束模板程序履行恣意代码才能,来防止应用层逻辑对表达式引擎的进犯。还有一些模板引擎则测验经过沙盒等手法来安全处理不可信的用户输入。在这些办法之下,开...
东西预备 BurpSuiteFree (或许咱们最喜爱最常用的抓包神器,需求Java环境); 火狐浏览器(个人比较喜爱的浏览器;360/Chrome等浏览器都能够); SwitchyOmega插件(设...
Web安全准则 1.认证模块有必要选用防暴力破解机制,例如:验证码或许屡次接连测验登录失利后确定帐号或IP。 阐明:如选用屡次接连测验登录失利后确定帐号或IP的办法,需支撑接连登录失利确定战略的“答...
360站长渠道中有一个东西是“官网直达”,经过恳求能够使你的网站在360搜索成果中加上“官网”字样的标识,百度也有这样的东西,不过是收费的,所以趁着360还没收费,有爱好的朋友可认为自己的网站恳求一...
...
在开端咱们的MongoDB“注入之旅”之前,咱们需求先知道和其他数据库比较,为什么咱们更乐意选MongoDB——由于MongoDB并不是SQL作为查询句子,所以人们可能会认为这样的数据库难以进行注入进...