吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 8099|回复: 89
收起左侧

[Web逆向] 影视站禁止非微信端打开的研究

  [复制链接]
奈陌 发表于 2023-8-9 09:24
本帖最后由 奈陌 于 2023-8-9 10:01 编辑

最近遇到了一个影视站,发现只能在手机微信里打开,无法使用chrome打开并抓取链接
链接:https://mr.baidu.com/148******(PS:这种用百度作为短链跳转是怎么实现的)
打开百度短链会302到https://m.baidu.com/******/tc?bdver=2_1&bdenc=1&wd=&nsrc=******
这个网页中会使用js跳转到另一个网页,再由新网页实现第二次重定向,新网页只有一个域名,没有任何参数,所以推测使用了Referer传递了重定向的网址
以下是python模拟实现
[Python] 纯文本查看 复制代码
baidu_short_url = 'https://mr.baidu.com/148******'
headers = {
    'Referer': requests.get(baidu_short_url).url
}
real_short_url = requests.get('http://www.****.cn/', headers=headers).url

这里称第二次重定向后的网页叫跳转页2吧,跳转页2引入了一个js文件
[JavaScript] 纯文本查看 复制代码
<script src="https://qimao.****.cn/bxx3?uc=e5nz****==">

每次打开跳转页2,都会得到不同的uc参数,一旦访问了js文件,js链接就会失效,需要重新打开网页获取新js链接
打开js文件,我不太会js,问了chatGpt说是用于表单提交数据
[JavaScript] 纯文本查看 复制代码
document.title = "...";
var pPdx = document.createElement("form");
document.body.appendChild(pPdx);
pPdx.method = 'get';
pPdx.action = '\x68\x74******';
var newElement = document.createElement("input");
newElement.setAttribute("name","url");
newElement.setAttribute("type","hidden");
newElement.setAttribute("value",'\x36\x38******');
pPdx.appendChild(newElement);pPdx.submit();

将16进制字符串转换后,得到的是一个网址和一个参数,进行拼接,得到一个完整的网址https://***.aliyun***.com/?url=****
完整网址的源码如下
[HTML] 纯文本查看 复制代码
<script> var asdasdcx = 1;
var sdgsdsd = 0;
var sffss = 0;
var agent = navigator.platform.toLowerCase();
if (agent.indexOf("win32") >= 0 || agent.indexOf("wow32") >= 0) {
    var sffss = 1;
}
if (agent.indexOf("win64") >= 0 || agent.indexOf("wow64") >= 0) {
    var sffss = 1;
}
var WinOri = window.orientation;
if (typeof WinOri == 'undefined' || sffss == 1) {
    asdasdcx = 3; document.write("内容不存在,已删除");
}
</script>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>...</title> </head>
<body>
    <script type="text/javascript">
        if (asdasdcx !== 3) {
            window['\x6c\x6f\x63\x61\x74\x69\x6f\x6e']['******'+'xl=******';
        }
    </script>
</body>
</html>

可以看到,这个网页除了检查UA还会检查navigator.platform,UA不是微信的话服务器会直接返回444、navigator.platform为电脑端的话会显示内容不存在,已删除。遂使用油猴脚本修改了navigator.platform的返回值(PS:就算加了// @run-at document-start,还是得限制网速,不然网页打开太快了,脚本来不及注入)
[JavaScript] 纯文本查看 复制代码
Object.defineProperty(navigator,'platform',{get:function(){return 'Android';}});

现在回到js逻辑,如果校验通过,window的location属性会被设置为一个网址,进行第3次跳转,跳转到真正的播放页
后面获取m3u8链接接口就不赘述了,没有任何加密,明文JS

免费评分

参与人数 16吾爱币 +23 热心值 +12 收起 理由
笙若 + 1 + 1 谢谢@Thanks!
Hmily + 7 + 1 欢迎分析讨论交流,吾爱破解论坛有你更精彩!
不安 + 1 + 1 大佬.6666
没事路过 + 1 + 1 谢谢@Thanks!
lgc81034 + 1 谢谢@Thanks!
灵魂歌手 + 1 用心讨论,共获提升!
allspark + 1 + 1 用心讨论,共获提升!
wanfon + 1 + 1 热心回复!
jamessteed + 1 + 1 用心讨论,共获提升!
fengshengshou + 1 + 1 我很赞同!
wenpenpen + 1 + 1 我很赞同!
风雨骑行 + 1 谢谢@Thanks!
Baxy + 1 谢谢@Thanks!
onlyclxy + 3 + 1 学习了 感谢
lightf + 1 学到了,谢谢大佬
wincao + 1 + 1 用心讨论,共获提升!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

wongto 发表于 2023-8-9 12:38
最好翻译一下,直接给个转换连接,
hxd97244 发表于 2023-8-9 12:13
fortytwo 发表于 2023-8-9 12:20
感谢分享,我最近在看海底捞小程序每日打卡,但是他不给PC操作,抓包难度不小。也琢磨琢磨。
weiyanli 发表于 2023-8-9 13:22
已学习,感谢分享
eutaxy 发表于 2023-8-9 14:22
已学习,感谢分享!
宇智波灬劫 发表于 2023-8-9 16:23
哪位大佬做个油猴的脚本
liuzixue 发表于 2023-8-9 16:58
大佬厉害,这种屏蔽的东西很难抓包
wwewwt 发表于 2023-8-9 17:58
做个转链接的工具网站是个好主意
Zhaofeiyan 发表于 2023-8-9 18:55
微信打开,如果下载呢
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-24 13:44

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表