设为首页收藏本站 今天是: 2024-03-01    "国际海豹日 "  保护海豹这种珍稀动物

复仇者黑客组织

 找回密码
 立即注册

QQ登录

只需一步,快速开始

    查看: 386|回复: 1

    某视频的无限debuger和内存暴增的破解并Python获取m3u8及下载

    [复制链接]

    该用户从未签到

    4

    主题

    4

    帖子

    22

    积分

    网站信息宣传员

    Rank: 7Rank: 7Rank: 7

    积分
    22
    发表于 2023-11-28 12:02:44 | 显示全部楼层 |阅读模式
    某视频的无限debuger和内存暴增的破解并Python获取m3u8及下载

    1、前言

    最近300块淘了个老主机(i5\8G\垃圾显卡),作为家庭影音服务器,装了个Ubuntu系统,装了开源免费的Jellyfin影音系统,一顿折腾之后,卡在了片源的问题上,Ubuntu的BT都比较慢,而且垃圾显卡转码不行(也能对付看),所以就想直接搞来Mp4的片子直接看,之前写过一个某网的被和谐了,所以重新找一个拿来试试。把折腾的过程整理成文分享出来,也加深自己的记忆。审视之前的文章,发现有点过于啰嗦,本文尽量精简些。本文的核心是解决调试时内存暴增与无限debugger问题,m3u8的url提取相对容易(就是时间问题),m3u8下载以及转码属于正向开发,比较容易。完整的代码,我会放到文末。
    使用的工具:MacOS系统、Safari浏览器、Sublime文本工具、Charles青花瓷抓包工具

    2、调试内存暴增问题

    调试地址:aHR0cHM6Ly9kbXhxLmZ1bi92b2RwbGF5LzE1MzA0Mi02LTEuaHRtbA==
    浏览器打开地址,打开调试器并切换到【来源】菜单,看到程序停留在debugger处,查看堆栈,可以确定是无限debugger。
    找到无限debugger的代码的文件,这里是dmplay.js , 既然要解决无限debugger,就得修改源码,这里使用Charles替换。
    2.1 使用Charles抓包工具替换dmplay.js文件

    这里以main_v1.js文件为例。(dmplay.js同理)
    将main_v1.js文件保存到本地,然后使用Charles的Map Local即重定位功能,实现替换,替换后就可以随意修改js内容了。这里简单说下过程:
    1、使用Charles抓到main_v1.js的请求
    2、在mian_v1.js的请求上,右键选择Map Local,选择本地的main_v1.js
    3、清空浏览器缓存,重新刷新网页,这时的main_v1.js就是本地的文件了(刷新时,会卡在空白页,就是内存暴增了)。
    TBC茶馆-复仇者黑客组织某视频的无限debuger和内存暴增的破解并Python获取m3u8及下载1、媒介最近300块淘了个老主机(i5\8G\垃圾复仇者黑客组织(1)
    2.2 初步确定内存暴涨的原因

    重刷新网页,你会发现卡在空白页,打开系统任务管理器,可以看到浏览器的内存在飞涨。
    内存飞涨,基本就是死循环。这里的代码都是混淆过的,直接看代码是不行的。
    那么只能从调试入手,通过断点找到死循环的位置。
    下面的操作过程要注意:
    1、先取消替换dmplay.js,即关闭抓包工具
    2、清空浏览器缓存,重打开网页
    3、在dmplay.js代码的前3行都打上断点,因为不确定会停在哪里
    4、不要关闭调试器,再次清空缓存,打开Charles抓包工具,替换dmplay.js,重新加载网页
    5、可以看到,断点会停在dmplay.js的第一行处
    6、接下来单步执行,一直执行,直到某for循环,跳不出去了
    这里是dmplay.js的37行的for循环,是个死循环。如下图02
    TBC茶馆-复仇者黑客组织某视频的无限debuger和内存暴增的破解并Python获取m3u8及下载1、媒介最近300块淘了个老主机(i5\8G\垃圾复仇者黑客组织(2)
    找到了死循环的位置,想跳过它很容易。因为我已经调试过了,它还有其他陷阱。就不再这里一个一个调试了,太费劲(每次要清空缓存,重加载)
    因此我们换个思路,既然死循环在dmplay.js中,那么我们把它单独拿出来调试看看行不行。
    2.3 把dmplay.js单拿出来调试

    写一个测试的main.html,把dmplay.js加载进去,然后用浏览器打开main.html,可以看到一直加载中,并且内存暴增了(说明单独调试是可以的
    d3.jpg
    d4.jpg
    d5.jpg
    d6.jpg
    d7.jpg
    d8.jpg
    d9.jpg
    d10.jpg
    d11.jpg
    d12.jpg
    d13.jpg
    d14.jpg
    d15.jpg
    d16.jpg




    上一篇:某站主页指纹校验加密参数逆向
    下一篇:绕过 AGE 动漫的 wasm 加密与解密函数

    该用户从未签到

    1

    主题

    1997

    帖子

    1619

    积分

    金牌会员

    Rank: 6Rank: 6

    积分
    1619
    发表于 2023-11-28 12:03:32 | 显示全部楼层
    牛啊 牛啊 牛啊
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    关闭Powered by ©科大讯飞语音云
    嗨!您好:
    欢迎来到 复仇者黑客组织。
    我的名字叫小光
    很高兴能够为您服务!
    如果已经注册【立即登录】
    还没有账号请立即注册
    Loading...
    快速回复 返回顶部 返回列表