挑战 V 友发的最强前端加密播放器

查看 12|回复 0
作者:bigha   
关联的帖子在这里
/t/967324
个人有个不太好的习惯,有人发这个解密游戏,非要搞出来不可,否则心里别扭!
第一个网站真实的播放地址,用的是 wasm 这种解密方式,研究了半天,最后找不到入口函数
就这样放弃?不,我默默的拿出来自己曾经看到过的 RPC 框架
具体步骤如下:
1 、RPC 框架下载地址
https://pan.baidu.com/s/19TyURN-wpqGUYBy1P025ew?pwd=6mu3
解压缩后,如果是 windows ,那就 bat 直接启动即可,注意需要 java 环境
2 、随便打开一个视频网页,F12 ,然后添加 XHR 断点 ,然后去刷新网页,不出意外会被断住
https://api.yangtu.link/v2/jx1

然后在控制台 console 输入下面的代码
(function() {
    'use strict';
    // Your code here...
    var _mscript=document.createElement("script")
    _mscript.src="https://sekiro.iinti.cn/sekiro-doc/assets/sekiro_web_client.js"
    document.body.appendChild(_mscript);
    function sek_start(){
        function guid() {
            function S4() {
                return (((1 + Math.random()) * 0x10000) | 0).toString(16).substring(1);
            }
            return (S4() + S4() + "-" + S4() + "-" + S4() + "-" + S4() + "-" + S4() + S4() + S4());
        }
        var client = new SekiroClient("ws://127.0.0.1:5620/business-demo/register?group=test&clientId=" + guid());
        client.registerAction("ojbk", async function (request, resolve, reject) {
            try {
                var e=request['url']
                const s = window.encrypt(`${e}|${Math.floor(Date.now() / 1e3)}`);
                                const n = await Ut(`/v2/jx1`, s, "POST");
                                if (n.code == 200) {
                           var sss = window.decrypt(n.url);
                    }
                                var jsonResult = {url:sss}
                                console.log(JSON.stringify(jsonResult));
                resolve(JSON.stringify(jsonResult));
            } catch (e) {
                reject("error: " + e);
            }
        });
    }
    setTimeout(sek_start,2000)
})();
然后把断点取消掉,直接点放行,注意网页别关闭

3 、直接就拿到真实地址了
import requests
r=requests.Session()
pdata={
    'group':'test',
    'action':'ojbk',
    'url':'https://v.qq.com/x/cover/mzc002003rpvd4j/w0046a3hh1v.html'
}
response=requests.get("http://127.0.0.1:5620/business-demo/invoke",params=pdata)
print(response.text)

4 、进阶的玩法
把框架部署到服务器,那个 F12 别关,就可以一直薅它的 API 接口了,
上面 js 脚本也可通过别的方式注入,例如油猴之类

所谓的最强加密播放器也不是没办法破解
您需要登录后才可以回帖 登录 | 立即注册

返回顶部