手机360浏览器打不开网页客户端app 明明已经安装了 如图不如我要打开网易云 但是直接跳到下载的页面

网上已经有大量的web端接口解析的方法了,但是对客户端的接口解析基本上找不到什么资料,本文主要分析网易云音乐PC客户端的API接口交互方式。
通过内部的代理设置,使用fiddler作为代理工具,即可查看交互流程:
可以大致看一下交互方式,通过HTTPS POST交互,POST了一串params的内容,内容加密,返回JSON内容,我要做的重点就在于解析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环境起来了,都是通过JS ajax交互了)。
其他的除了cef依赖的dll外,两个主程序和cloudmusic.dll都比较值得关注。
资源文件:
除了在package下的其他都是cef库依赖的资源文件。
都是未知的格式,一般看到未知格式的文件,我都会用7z尝试打开看看,是不是某种归档格式文件,这个一下就蒙中了,是zip格式的。
除了几个通过后缀就能看出来的皮肤文件,还有两个比较可疑的文件,翻一翻比较大的orpheus.ntpk文件,里面可以看到都是网页相关的资源文件,看到那个core.js,就让我联想到网页版API提取时用到的那个core.js文件了,脑海里就想着替换然后对转换流程动态分析了,事实有点不尽人意,该zip文件加密了。&
OK,调研阶段结束,在不进行逆向解析前,能了解到的也就止步于此了。&
3、第一轮尝试
其实一开始我是把目光放在libcurl上面的,在断点到curl库的函数上时发现只有程序刚运行时触发过几次,后面所有网络交互都不用这个库了,就转战到cef上。而cef的重点在于内部的JS文件,能提取到该文件才是关键的。
0×2712即CURLOPT_URL宏,eax中存放着url的字符串指针,基本上都是无关的url。
第一个任务来了,逆向寻找特征串,也就是密码,这里断点到系统文件操作API上,断到CreateFileW,一顿的F9后可以看到加载到default.skin文件了(图中是native.ntpk,同类型的加密ZIP文件),后续就单步调试下去。&
然后看到一个比较特别的内存块,一看就是PNG格式的文件头,就可以判断这一步资源已经解压缩到内存了。&
往上推几步,断点,缩小范围,再跟下来,看看哪里做了解压操作,再一步步跟函数。(Tan1993:可能比较业余,但我也只能一点点缩小范围在一点点看流程,凭经验判断可能会做什么操作,缩短到比较短的范围,不然一堆汇编码真的会受不了,感谢世界上程序员的思想都是接近的吧)。&
得知密码后,就可以解压出core.js文件了(Tan1993:这里仅提供思路,不提供便民服务哈)
又是这一堆让人窒息的混淆,卡得怀疑人生,先解压缩再看吧。
解压后,搜几个关键字,比如params,eapi,batch等最上面HTTP交互时的一些特征
关键代码,像这样混淆的JS代码,如果不通过调试器跟踪,很难看懂,目前能可以看出也只有channel.serialData应该时比较关键的转换函数,但是搜索了整个JS文件都找不到函数定义,不知道是不是混淆到哪个奇怪的地方了。
虽然cef自带DevTools,但是已经被屏蔽掉了也无法在程序里调出来,所以我想在JS文件中加上alert调试关键参数。然后我修改了core.js文件,按原来的密码压缩回去。但程序根本就起不来,为什么呢,看看原版的.ntpk文件,很明显还有一些奇怪的东西和zip文件一起合成了这个ntpk文件格式。根据经验判断很可能时类似于数字签名的东西(Tan1993:之前我也会对一些可能被篡改的档案末尾对整个文件加盐生成一个hash值用于校验,但是后续跟完网易云的数字签名方式让我又学习了不少)。
4、第二轮尝试
为了方便调试,我需要替换掉资源文件中的core.js文件,但是该资源文件不仅仅加密压缩了,还有一些其他内容存在,所以这次跟代码就是为了了解除了zip文件本身以外其他部分内容的作用。
还是断到CreateFileW函数上,其实第一轮跟代码的时候我就已经发现了部分调用系统加密服务提供程序 (CSP)库的函数。
一步步跟过来,发现用的是SHA1数字签名算法(Tan1993:不是很了解CSP库,但这个是为Windows系列操作系统制订的底层加密接口,和我理解的SHA不太一样,我姑且将程序内部的那部分称为公钥,与文件头部的校验数据进行校验)。
文件头NTPK,文件长度0x0D5C5B,校验串长度0×100
刚好差了0×110长度,除了0×100用于校验的数据,还有0×10的头部。
由于我是无法在不知道私钥的情况下,再次对该文件进行签名的,所以我只能把程序内部的用于校验的公钥一并替换,再生成一个对应的检验数据,从而通过系统验证,或者直接把验证部分的代码跳转逻辑修改掉(Tan1993:其实可能改分支流程修改会更简单也说不定,但我一开始选择的是替换公钥重新生成校验数据)。
int GenKey(HCRYPTPROV hProv) {
HCRYPTKEY hK
HANDLE hFile = NULL, hOutFile = NULL;
DWORD dwSize = 0, dwRead = 0, dwWrite = 0, dwBlobLen = sizeof(bRsaKey);
BYTE *pbFileData = NULL; int ret = -1;
hFile = CreateFileW(L"cloudmusic_src.dll",
GENERIC_READ, FILE_SHARE_READ, NULL,
OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL);
dwSize = GetFileSize(hFile, NULL);
pbFileData = new BYTE[dwSize];
ReadFile(hFile, pbFileData, dwSize, &dwRead, NULL);
CloseHandle(hFile); if (!memcmp(pbFileData + 0x7C3438, bRsaKey, sizeof(bRsaKey)))
CryptGenKey(hProv, AT_SIGNATURE, CRYPT_EXPORTABLE, &hKey); memset(bRsaKey, 0, sizeof(bRsaKey));
CryptExportKey(hKey, NULL, PUBLICKEYBLOB, 0, bRsaKey, &dwBlobLen);
memcpy(pbFileData + 0x7C3438, bRsaKey, sizeof(bRsaKey));
SetDebugPort(pbFileData);
hOutFile = CreateFileW(L"cloudmusic.dll",
GENERIC_WRITE, FILE_SHARE_READ, NULL,
CREATE_ALWAYS, FILE_ATTRIBUTE_NORMAL, NULL);
WriteFile(hOutFile, pbFileData, dwSize, &dwWrite, NULL);
CloseHandle(hOutFile);
} delete[] pbFileD
CryptDestroyKey(hKey); return
} int EncFile(HCRYPTPROV hProv, LPCWCHAR wstrInFile, LPCWCHAR wstrOutFile) {
HCRYPTHASH hH
DWORD dwSize = 0, dwRead = 0, dwWrite = 0, dwOutSignSize = 0;
HANDLE hFile = NULL, hOutFile = NULL;
BYTE *pbFileData = NULL, *pbSignData = NULL;
hFile = CreateFileW(wstrInFile,
GENERIC_READ, FILE_SHARE_READ, NULL,
OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL);
dwSize = GetFileSize(hFile, NULL);
pbFileData = new BYTE[dwSize];
ReadFile(hFile, pbFileData, dwSize, &dwRead, NULL);
CloseHandle(hFile);
hOutFile = CreateFileW(wstrOutFile,
GENERIC_WRITE, FILE_SHARE_READ, NULL,
CREATE_ALWAYS, FILE_ATTRIBUTE_NORMAL, NULL);
WriteFile(hOutFile, bHead, sizeof(bHead), &dwWrite, NULL);
WriteFile(hOutFile, &dwSize, sizeof(int), &dwWrite, NULL);
CryptCreateHash(hProv, CALG_SHA, 0, 0, &hHash);
CryptHashData(hHash, pbFileData, dwSize, 0);
CryptSignHash(hHash, AT_SIGNATURE, NULL, 0, NULL, &dwOutSignSize);
pbSignData = new BYTE[dwOutSignSize];
CryptSignHash(hHash, AT_SIGNATURE, NULL, 0, pbSignData, &dwOutSignSize);
WriteFile(hOutFile, &dwOutSignSize, sizeof(int), &dwWrite, NULL);
WriteFile(hOutFile, pbSignData, dwOutSignSize, &dwWrite, NULL);
WriteFile(hOutFile, pbFileData, dwSize, &dwWrite, NULL);
CloseHandle(hOutFile); delete[] pbSignD delete[] pbFileD
CryptDestroyHash(hHash); return 0;
截了一部分代码,用于修改cloudmusic.dll中的二进制数据,偏移是根据内存加载地址与基址算的,直接固定偏移修改即可。
到这一步其实我已经可以替换掉core.js文件并且可以alert弹出对话框,显示一些JS运行时数据了,虽然alert弹框并不是那么好用。
通过alert我可以看到加密前的内容,也就是具体发了哪些数据,以及加密后是什么样子的,很可惜的是当我尝试alert(channel.serialData)时发现是[native code],按我个人理解应该是系统二进制函数才会显示这个的吧(对JS并不是非常了解),怀疑是库函数,但查询无果,后来想了想会不会是JS调用了C++代码(凭我对cef粗糙的理解),我尝试去查了一下,果然是可以的,那么很有可能这部分加密转换的代码还是在主程序中,这就很头疼了,刚从主程序逆向脱离出来到JS这个自由的世界,又要回到看汇编码的环境了。
5、第三轮尝试
这一轮主要目的是找到channel.serialData在主程序的位置,根据我对cef的理解,应该是在程序启动时,注册了一部分回调函数,可以从注册的时候找到回调函数入口,然后等触发channel.serialData动作时,从回调函数跟代码跟下来。
根据DLL版本,我找到了对应的cef源码版本,cef注册回调时是整个结构体的,必须找到对应的版本避免新版本结构体不一样导致偏移位置有差异。
在看源码的过程中发现结构体里有个很有意思的字段,一个debug端口,调研了一下,这个端口很有用了,可以远程DevTools,这样还用什么alert。
如果要在调用初始化前把结构体改掉,要么API Hook修改,要么静态文件修改,文件修改的话只能舍弃一些无用代码来改这个结构体了,我选了一个不影响的赋值语句,改成给这个地址赋9222。
对照源码中结构体计算偏移值
原本修改cloudmusic.dll的代码中增加个代码段修改的方法
void SetDebugPort(BYTE *pbFileData) { if (!memcmp(pbFileData + 0x14EED, bSettingAsm, sizeof(bSettingAsm)))
bSettingAsm[2] = 0x94;
bSettingAsm[6] = 0x06;
bSettingAsm[7] = 0x24; memcpy(pbFileData + 0x14EED, bSettingAsm, sizeof(bSettingAsm));
现在我就可以通过远程访问DevTools了。可当我打开网页时一片空白,这时候又凭借我对cef粗略的了解,在程序目录下,并没有devtools相关的资源,其实只要把资源文件补上就可以了(官网已经没有这么老的资源文件档案了,这个还是我网上找的3.1916版本的devtools资源文件)
这时候所有JS调试命令都可以改成console.log来进行了,方便了好多。
回到正题,从注册来跟代码实在是太痛苦了。一个是注册的内容比较多,一层叠一层的,而且程序用的是C++ warp的C语言版本的cef库,和源码对照跟的时候还是有点差别的。这时候我想到一个非常好的方法,那就是制造一个死循环。
6、第四轮尝试
上面就提到了,我放弃了从注册一步步跟踪回调函数的麻烦方案,而是在JS中知道一个死循环,不停的调用channel.serialData函数,等程序单核满载时,只需要将调试器附加程序,点一点暂停,基本上就是这个函数相关业务流程的代码了(JS到机器码代码按我理解应该在堆上,而加密的代码应该在程序代码段上,所以我定位的时候可以忽略掉很多JS的代码,找到真正相关的代码位置)
实际上,channel.serialData的汇编码也非常多,流程也分了好多部分,这部分工作量实在是降不下来,但是很多可能是为了防止静态分析的代码,部分特征串是运行时生成的,但是因为这部分特征串都是固定的,所以是可以不用去仔细琢磨的(然而我花了一两天来看那一堆汇编码来算出特征串,非常郁闷,早知道就逆推就好,但说实话,光逆推也会很难,主要是要有一定理解)
简单说明一下转换流程
1、 输入url(请求部分)和data(提交的json数据)
2、 拼成”nobody” + url + “use” + data + “md5forencrypt”字符串
3、 对字符串计算MD5
4、 二次拼接url + “-36cd479b6b5-” + data + “-36cd479b6b5-” + md5
5、 0×10对齐,缺少的部分会以缺少的位数来填充
6、 私有转换方法(也许是我不知道的一种加密方式?)
附上一部分分析的图
待加密数据,0×10字节对齐,每次处理0×10字节的数据
辅助加密数据(动态生成,但是是固定的,我还傻傻去复现了一遍生成流程)
开始对0×10进行转换
一堆异或和位移计算,这个还是很好复现到C的代码中的,这个比较长就不全粘贴了。
循环转换完后再按照”%02X”格式snprintf到字符串即可。我没有过多去理解这个加密算法究竟是什么原理,只是直译汇编码。
后来尝试反过来解析,看了一早上没看出来,简单描述一下为什么难以逆转的问题。
a1b1b1c1a1b1b1c1 a2b2b2c2a2b2b2c2 ………
eax = a1a2a3a4
ebx = b1b2b3b4
ecx = c1c2c3c4
edx = d1d2d3d4
eax = mem[a4 * 8] ^ mem[b3 * 8 + 3] ^ mem[c2 * 8 + 2] ^ mem[d1* 8 + 1]
ebx = mem[a3 * 8] ^ mem[b2 * 8 + 3] ^ mem[c1 * 8 + 2] ^mem[d4 * 8 + 1]
ecx = mem[a2 * 8] ^ mem[b1 * 8 + 3] ^ mem [c4 * 8 + 2] ^ mem[d3* 8 + 1]
edx = mem[a1 * 8] ^ mem[b4 * 8 + 3] ^ mem[c3 * 8 + 2] ^mem[d2 * 8 + 1]
然后在得知后面的eax,ebx,ecx,edx逆推原来的,感觉不太可能,但是mem并不是没有规律的一个内存块,而且数组索引时也做了些巧妙的偏移,事实上内存块确实有不少规律(比如a1是偶数时b1是a1的一半,c1是a1 ^ b1),而且和索引时的偏移可能会相得益彰,如果能看出窍门说不定还是能解的,有兴趣的小伙伴也可以研究一下(Tan1993:个人没学过加密学,只略懂一部分概念)
其实到这一步,我可以通过远程devtools来看发送前未加密的内容以及结构,同时我也可以通过已经复现的加密方法,对不同业务数据加密发送出去。我发现有一部分请求数据返回内容也是加密的,但这个是可以在客户端控制e_r的值来控制是否需要返回加密内容的。
写个模拟客户端下载歌曲的小Demo,本来发送和接收都是加密的数据的下载接口,就可以通过服务器验证实现下载了,解析到此告一段落,虽然过程中还有很多内容值得研究,如果有机会以后会继续挖掘。
由于并没有找到任何的参考资料,断断续续也研究了一周时间。除了实现了目标以外,还是有不少收获的,比如比较有趣的加密算法,数字签名方法,cef库,还有一些逆向的思路。
比较遗憾的是没有把解密的算法也解析出来,同时在客户端控制e_r的值来控制返回数据是否加密显然不是好方法,官方只需要忽略这个参数强制对部分API返回加密数据,正常的客户端也没有任何影响(难道有平台相关性所以才把这个参数放到客户端的吗?)。
(Tan1993:视情况考虑是否在github提供源码)
将一件有趣的事,当时我尝试在一台国外IP的服务器上调用web的api接口时发现不能适用,获取不到数据,然后我又跟了一便JS代码发现逻辑不一样,其中发现了一个很有意思的特征串(在你们看不到的地方,总有调皮的程序员):
您可以选择一种方式赞助本站
支付宝转账赞助
分享到各大网站
一个屌丝的安全之路从这里开始ing...手机微客软件哪个好
手机微客软件哪个好?6款微客APP推荐
  微客是一个互联网的学习平台,平台上拥有各行各业领域的知识,所以无论是在校的学生还是职场的新人,都可以通过微客充实自己,今天小编整理了几款好用的手机微客APP,有需要的小伙伴快来看看吧。
  1、百度传课
  百度传课app原传课网被百度收购后更名为百度传课,这款app是百度传课推出的一款Android平台学习应用。在这里你可以随时随地的观看传课网的所有免费直播课程和海量视频课程。
  功能介绍
  海量课程:百度传课平台集结上百家热门学校,为同学们提供数以万计的优质课程,无论你是为了考研考英语考证,还是为了学音乐学插花学PS,通过精细的分类筛选,在这里你总能找到你感兴趣的内容。
  个性推荐:课程太乱无从下手?课程太多学不过来?百度传课会记录你的学习足迹,分析你的偏好课程,为你推荐适合你的优质课程和学习计划,妈妈再也不用担心你的学习。
  同步学习:除了海量的视频课,百度传课还推出了精致的线上直播课,跟上时代的变化,永远站在知识更新的最前沿,为你提供优质课程,更能即时与老师学生互动,提高学习效率。
  随时学习:百度传课移动端支持一键打点,方便用户便捷记录学习进度,真正做到传课在手,学习不愁。
  传送门:
  2、网易云课堂
  网易云课堂app是网易云课堂官网推出的移动学习平台,通过网易云课堂app你可以直接在线学习,随时随地想学就学,打破时间和空间的限制,为你提供良好的学习环境,而且里面的学习内容都是精心整理的。
  功能介绍
  网易云课堂,是网易公司倾力打造的移动学习App,拥有涵盖多个类别的数千门优质课程,无论你是学生还是各行各业的上班族,希望自我提升或是充实生活,都可以在这里发现你感兴趣的内容,通过学习遇见更好的自己!
  传送门:
  3、慕课网
  慕课网app是一款免费学习IT技能的app,慕课网app有大量免费的专业视频课程,分为不同的难以程度,可以自行选择,学员们还可以参与讨论交流,课程主要包括前端开发、PHP、Html6、Android、iOS、Swift等。
  功能介绍
  慕课网是国内首家免费的IT技能学习、交流平台,现已成为IT学习必备之选。
  软件特色
  1、课程全部免费,内容丰富,专业实用。
  全部免费,5000个独家IT视频课程!
  内容丰富,涵盖前端开发、PHP、Html5、Java、Android、iOS、Swift等前沿技术语言!
  专业实用,从基础理论到实战案例,200余位高级工程师分享实用IT技能,拒绝纸上谈兵!
  2、短视频为主,支持离线下载,碎片化时间学习。
  全部课程以短视频形式呈现,每节课不超过10分钟,支持离线下载,坐公交、搭地铁,碎片化时间轻松学习。
  3、视频高清流畅,全程无广告,为用户营造绿色的学习环境。
  4、支持课程讨论、笔记记录等特色功能。
  传送门:
  4、腾讯课堂
  腾讯课堂手机版app是腾讯专门开发的一款手机线上教育学习软件,腾讯课堂收录了大量的精品课程,可以了名师面对面请教交流,海量教学课程资源和名师,让你坐在家里就能体验高质量的学习教育,不用再去外面花钱补课了,真是太棒了!
  功能介绍
  - 大量的课程,包括平面设计、摄影、游戏开发、美妆、网页设计、英语、公务员、财会、韩语、考研
  、投资理财、婚恋、亲子等等。
  - 专业的教学体验,从根本上解决学习拖延症,帮助督促完成学习计划。
  腾讯推出的专业在线教育平台,致力于用互联网的方式打破中国教育资源地域分布的不平衡。其聚合大。
  量优质教育机构和名师,下设IT互联网、设计创作、语言学习、职业考证、升学考试、生活兴趣等众多。
  在线学习精品课程,提供一站式全方位的专业教育服务。
  腾讯课堂,重新定义在线教育行业。
  传送门:
  5、微课圈
  微课圈,汇集精彩课程的学习社区,千万同学老师入驻,名师名课源源不断,班级小圈子互助成长,全国大社区互动分享,让疑难困窘再无遗憾
  功能介绍
  &微课圈&,一款中学生全能型学习助手横空出世。
  初高中生必备,超过10万中学生都在用的学习软件。
  具备&精品课程、海量题库、答疑解惑、专题提升&四大功能,为孩子打造出真实的学习场景;
  &微课圈&,汇集精彩课程的学习社区,千万同学老师入驻,名师名课源源不断,班级小圈子互助成长,全国大社区互动分享,让疑难困窘再无遗憾;
  &微课圈&,更多缤纷多彩的成长扶持,全国名家、本地名校名师同步放送最接地气儿的精品专题课程,从知识到方法、从现实到理想。名师好友作伴青春,成长之路从此快乐充实。
  微课团队感谢您的使用!
  传送门:
  6、微课
  微课app是一款专门为翻转课堂提供学习工具的手机客户端。老师通过电脑制作好微课后,可以将微课视频、导学案、随课练习等以作业的形式发给学生。学生通过微课app可以接收老师的任务,并在手机或Pad上完成微课学习。
  温馨提示
  请在中教启星教研平台上完成课程创建。
  目前仅支持使用中教启星教研平台账号登录。
大家都在下
还没关注下载之家微信 的亲们赶紧扫一扫左侧的二维码吧!或搜账号:
还没关注下载之家微信 的亲们赶紧扫一扫左侧的二维码吧!或搜账号:
微信公众号
Copyright &
下载之家(www.xiazaizhijia.com).All Rights Reserved
备案号:闽ICP备号-8
京公网安备 19号我的笔记本能联网(qq啊网易云啊能用),但浏览器打不开网页(所有浏览器)_百度知道
我的笔记本能联网(qq啊网易云啊能用),但浏览器打不开网页(所有浏览器)
我的笔记本能联网(qq啊网易云啊能用),但浏览器打不开网页(所有浏览器),该怎么解决呢?
我有更好的答案
电脑中打不开的话,可能是这个浏览器和你的电脑不兼容,这样的话还是不要用了,不然对电脑也是很不好的啊,我都用了很久了。你可以用一下QQ浏览器的啊
采纳率:90%
为您推荐:
其他类似问题
换一换
回答问题,赢新手礼包
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。我昨天自己安了一个内存条,但是用谷歌浏览器打开网易云音乐的排版是乱的,百度贴吧网页直接是403,但_百度知道
我昨天自己安了一个内存条,但是用谷歌浏览器打开网易云音乐的排版是乱的,百度贴吧网页直接是403,但
我昨天自己安了一个内存条,但是用谷歌浏览器打开网易云音乐的排版是乱的,百度贴吧网页直接是403,但是用WIN10自带的那个edge浏览器打开一点事没有,我重装过了,什么缓存之类也清理过了,到底是什么导致的?
我有更好的答案
兄弟解决了没,我今天跟你一样情况
为您推荐:
其他类似问题
谷歌浏览器的相关知识
换一换
回答问题,赢新手礼包
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。更多频道内容在这里查看
爱奇艺用户将能永久保存播放记录
过滤短视频
暂无长视频(电视剧、纪录片、动漫、综艺、电影)播放记录,
按住视频可进行拖动
&正在加载...
收藏成功,可进入
查看所有收藏列表
当前浏览器仅支持手动复制代码
视频地址:
flash地址:
html代码:
通用代码:
通用代码可同时支持电脑和移动设备的分享播放
用爱奇艺APP或微信扫一扫,在手机上继续观看
当前播放时间:
一键下载至手机
限爱奇艺安卓6.0以上版本
使用微信扫一扫,扫描左侧二维码,下载爱奇艺移动APP
其他安装方式:手机浏览器输入短链接http://71.am/udn
下载安装包到本机:
设备搜寻中...
请确保您要连接的设备(仅限安卓)登录了同一爱奇艺账号 且安装并开启不低于V6.0以上版本的爱奇艺客户端
连接失败!
请确保您要连接的设备(仅限安卓)登录了同一爱奇艺账号 且安装并开启不低于V6.0以上版本的爱奇艺客户端
部安卓(Android)设备,请点击进行选择
请您在手机端下载爱奇艺移动APP(仅支持安卓客户端)
使用微信扫一扫,下载爱奇艺移动APP
其他安装方式:手机浏览器输入短链接http://71.am/udn
下载安装包到本机:
爱奇艺云推送
请您在手机端登录爱奇艺移动APP(仅支持安卓客户端)
使用微信扫一扫,下载爱奇艺移动APP
180秒后更新
打开爱奇艺移动APP,点击“我的-扫一扫”,扫描左侧二维码进行登录
没有安装爱奇艺视频最新客户端?
人间大炮,教你做一个直飞云霄的加农炮,命令方块教程
正在检测客户端...
您尚未安装客户端,正在为您下载...安装完成后点击按钮即可下载
30秒后自动关闭
人间大炮,教你做一个直飞云霄的加农炮,命令方块教程">人间大炮,教你做一个直飞云霄的加农炮,命令方块教程
请选择打赏金额:
播放量12.7万
播放量数据:快去看看谁在和你一起看视频吧~
更多数据:
Copyright (C) 2018 & All Rights Reserved
您使用浏览器不支持直接复制的功能,建议您使用Ctrl+C或右键全选进行地址复制
正在为您下载爱奇艺客户端安装后即可快速下载海量视频
正在为您下载爱奇艺客户端安装后即可免费观看1080P视频
&li data-elem="tabtitle" data-seq="{{seq}}"& &a href="javascript:void(0);"& &span>{{start}}-{{end}}&/span& &/a& &/li&
&li data-downloadSelect-elem="item" data-downloadSelect-selected="false" data-downloadSelect-tvid="{{tvid}}"& &a href="javascript:void(0);"&{{pd}}&/a&
选择您要下载的《
色情低俗内容
血腥暴力内容
广告或欺诈内容
侵犯了我的权力
还可以输入
您使用浏览器不支持直接复制的功能,建议您使用Ctrl+C或右键全选进行地址复制}

我要回帖

更多关于 谷歌浏览器打不开 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信