吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 2322|回复: 66
收起左侧

[Web逆向] cctv视频解密,wasm vmp分析

  [复制链接]
漁滒 发表于 2026-3-5 18:00

@[TOC](cctv视频解密,wasm vmp分析)

前言

1.本篇文章仅记录大致的分析过程,没有成品

2.参考文献

ts帧加密案例(一)

ts帧加密案例(二)

cctv视频下载解密

CCTV WEB和客户端.cbox下载解密

WEB前端逆向TS PES NALU解密

某视频站wasm 分析

js逆向初步分析

目标地址:aHR0cHM6Ly90di5jY3R2LmNvbS8yMDI2LzAyLzA5L1ZJREVMenZvZjhreEhtT1Z5VDhmMUNNYTI2MDIwOS5zaHRtbA==

f12查看请求内容,m3u8地址是来源于【/api/getHttpVideoInfo.do】

请求中只有【pid】参数是必须的,根据 CCTV WEB和客户端.cbox下载解密 中可知,网页播放的是manifest里面的hls_h5e_url ,本次也是分析这里的解密播放

根据大佬 ts帧加密案例(一) WEB前端逆向TS PES NALU解密 的分析,可知ts分片使用的是es层的加密

首先找到js中调用解密的入口

1.jpg

可以看到js层和之前几乎没差别,还是先提取ts到pes到es,将es放到解密函数中进行解密,继续跟进会进入到wasm的ua函数

2.jpg

ida分析

接着就是常规操作,将wasm下载下来,用wasm2c工具转换为o文件,最后丢到ida分析,在ida中查看ua函数

3.jpg

这个函数却非常简单,将所有入参放到指定位置后,就只有调用了一个特殊的函数【f50】

为什么说这个是一个特殊的函数呢,随便再打开几个导出函数,发现都是几乎一样的代码,一样的调用这个特殊函数,继续进入到【f50】里面看

4.jpg

这个函数非常之大,在553行有一个大循环,并且存在非常多的case,猜测可能是控制流或者vmp

浏览器动态分析后,发现每个case的长度都非常短,并且存在重复运行,那么大概率这里就是一个vmp,而【f50】就是自定义的解释器,接着就是寻找指令码在哪里

分析【f50】可以知道,这个函数是直接从入参的地址开始读取指令码,然后不断执行

那么回到ua函数,入参就是【*a1->w2c_env_d + 519704】,其中d是来自js层导入,eb就是申请了一段长度为682576内存的基址

5.jpg

6.jpg

那么519704应该就是真实的函数基址,d就是指令码的基址。既然这样的话,指令码就不是硬编码在wasm,继续在js层找

7.jpg

可以看到js有很多段非常长的数组,并以eb为基址写入,将这段内容保存下载,发现长度刚刚好就是682576

vmp进行反汇编

拿到字节码之后,就可以根据ida里面的每一个case进行反汇编

在我第一次进行反汇编时,重心是在如何还原出一个可读的js代码,但是当代码中的跳转逻辑非常复杂时,对还原出js代码的难度就会大大增加

后来阅读了 某视频站wasm 分析 (需要具体反汇编函数的可以参考这里)则恍然大悟,有时候不一定要还原出js代码,因为这样不单只要处理字节码,甚至还要处理一些运行时的跳转

后来我尝试改写了一套代码,用指令码来生成一种类似于【Intermediate Representation, IR】的中间产物,此时仅需要知道每个指令码做了什么,而不需要关注任何跳转等运行时的东西

例如ua函数的函数基址是519704,那么就直接从519704开始处理,能够得到如下内容,第一个元素是pc指针,第二个元素是指令码所执行的逻辑,第三个元素就是中间产物

[519712,2,"r21 = -1212248019"]
[519720,2,"r22 = -509605442"]
[519728,2,"r23 = -1346088452"]
[519736,136,"r24 = g7"]
[519740,0,"r18 = r24"]
[519744,136,"r24 = g7"]
[519748,25,"r24 = r24 + 48"]
[519752,137,"g7 = r24"]
[519756,25,"r14 = r18 + 36"]
[519760,25,"r9 = r18 + 32"]
[519764,25,"r11 = r18 + 43"]
[519768,0,"r8 = r18"]
[519772,25,"r6 = r18 + 28"]
[519776,25,"r10 = r18 + 42"]
[519780,25,"r7 = r18 + 24"]
[519784,25,"r12 = r18 + 20"]
[519788,25,"r5 = r18 + 41"]
[519792,25,"r4 = r18 + 40"]
    # 省略.....

当我生成完成后,发现里面还有非常多的跳转,怪不得一开始不好还原为js代码

虽然中间产物的可阅读性比js差很多,但是如果相对于指令码来说,就是大大增加了可阅读性,那么此时就可以进行人工通过中间产物来还原出js代码

还原了一部分后我发现,里面竟然也是wasm转js的代码来的,通过和旧版wasm代码对比可以证实

8.jpg

9.jpg

可以看出结构上高度相似,同时也可以证实了vmp反汇编和还原的js代码是正确的

最后就是通过中间产物和还原出的js代码互相调试分析,找到es的tea解密等逻辑

10.jpg

最终完美解密无花屏

总结

1.网页端逆向趋势已经从 js混淆 -> jsvmp -> wasm -> wasm vmp,逆向成本逐渐变高,本次分析还原总计耗时3-4天

2.jsvmp 或者 wasm vmp在反汇编时,不一定要直接还原到js,可以尝试生成中间产物,在通过中间产物分析,或者跟上潮流,将中间产物讲给Ai去分析结果

3.越来越多的视频网站开始从标准的整体加密(或者仅加密key)进化为pes层或者es层的加密,甚至可能针对不同的nalu进行加密,或者自定义nalu的结构

免费评分

参与人数 30吾爱币 +37 热心值 +26 收起 理由
wwlnyl + 1 我很赞同!
vagrantear + 1 + 1 我很赞同!
c271687388 + 1 + 1 用心讨论,共获提升!
fengbolee + 1 + 1 用心讨论,共获提升!
ioyr5995 + 1 + 1 热心回复!
mongoole + 1 + 1 鼓励转贴优秀软件安全工具和文档!
syfsxyh + 1 + 1 我很赞同!
qiujunjian1 + 1 + 1 谢谢@Thanks!
浪~· + 1 + 1 用心讨论,共获提升!
无名 + 3 + 1 用心讨论,共获提升!
allspark + 1 + 1 用心讨论,共获提升!
zagato + 1 + 1 我很赞同!
Akihi6 + 2 + 1 谢谢@Thanks!
逍遥黑心 + 1 + 1 谢谢@Thanks!
surepj + 1 + 1 用心讨论,共获提升!
yjn866y + 1 + 1 谢谢@Thanks!
jinqiaoa1a + 1 + 1 热心回复!
zhoushengzhi + 1 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
夜泉 + 3 + 1 鼓励转贴优秀软件安全工具和文档!
jerrylee0521 + 1 欢迎分析讨论交流,吾爱破解论坛有你更精彩!
liyitong + 1 + 1 这些网站做的,净是浪费CPU的性能做人类自设的障碍。
xianxian + 1 + 1 热心回复!
哇卡s + 1 + 1 用心讨论,共获提升!
liu101816 + 2 我很赞同!
代陌 + 1 + 1 用心讨论,共获提升!
plsir008 + 1 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
InfiniteBoy + 1 用心讨论,共获提升!
OVVO + 2 + 1 import 漁滒
buluo533 + 1 + 1 用心讨论,共获提升!
MowChan + 1 + 1 用心讨论,共获提升!

查看全部评分

本帖被以下淘专辑推荐:

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

sdieedu 发表于 2026-3-5 18:59
录屏大法 吧 只能
q3125418 发表于 2026-3-6 11:17
家里的电视就有救了,可以提高用电,拉动全村GDP,最主要的是还能学习国家政策,使我们全家都能更好的贯彻落实党的方针
阁下是否愿意私发一份解密脚本助我走上富强、民主、文明、和谐、自由、平等、公正、法治、爱国、敬业、诚信、友善之路

gyzhangqm 发表于 2026-3-5 18:05
多点这样的教程,从基础开始,让大家都能学习提高。
mls0916 发表于 2026-3-5 18:07
虽然没有成片下载,还是谢谢楼主分享!
ydh1986 发表于 2026-3-5 18:08
多谢多谢
陈陈不吃梨 发表于 2026-3-5 18:12
厉害👍🏻,思路清晰,学习了
ufozsq 发表于 2026-3-5 18:21
谢谢楼主
vigour 发表于 2026-3-5 18:36
虽然还是有点看不懂,不过从基础开始的教材,还是很有学习价值的。
Marken888 发表于 2026-3-5 18:43
厉害,这种如果不懂的话,纯AI都无法分析出来
creaturenothing 发表于 2026-3-5 19:10
渔哥是真的流批
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

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

GMT+8, 2026-3-11 05:46

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

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