飘云阁

 找回密码
 加入我们

QQ登录

只需一步,快速开始

查看: 153|回复: 8

[原创] 班主任基本功交流活动-离线问题讨论

[复制链接]
  • TA的每日心情
    开心
    2019-3-17 22:44
  • 签到天数: 132 天

    [LV.7]常住居民III

    发表于 12 小时前 | 显示全部楼层 |阅读模式
    本帖最后由 tree_fly 于 2025-11-8 12:16 编辑

    截屏2025-11-08 00.23.28.png

    班主任基本功交流活动离线

    声明:本文仅作技术探讨,不提供任何下载工具

    0x1 分析m3u8
    [Plain Text] 纯文本查看 复制代码
    #EXTM3U
    #EXT-X-VERSION:3
    #EXT-X-TARGETDURATION:10
    #EXT-X-MEDIA-SEQUENCE:0
    #EXT-X-PLAYLIST-TYPE:VOD
    #EXT-X-KEY:METHOD=AES-128,URI="https://ndvideo-key.ykt.eduyun.cn/v1/resource_keys/10d898dcb9c840fb978f1557e352dea7",IV=0x00000000000000000000000000000000
    #EXTINF:10.000000,
    63635d7a-351b-e800-456a-48638e10f79b-1920x1080-true-f8b3085d6e80b7664c5fc92528ddd774-c26181a843d441b28016c790ae7b1756-00000.ts


    下载切片.ts文件,被加密无法播放,先直接获取Key数据返回错误:
    [Bash shell] 纯文本查看 复制代码
    curl [url=https://ndvideo-key.ykt.eduyun.cn/v1/resource_keys/10d898dcb9c840fb978f1557e352dea7]https://ndvideo-key.ykt.eduyun.c ... 0fb978f1557e352dea7[/url] | jq
    {
      "host_id": "ndvideo-key.ykt.eduyun.cn",
      "request_id": "ndvideo-key-172.22.160.78^1761726406464^15724433",
      "server_time": "2025-11-08T00:37:42.282+0800",
      "code": "WAF/REQUIRE_ARGUMENT",
      "message": "您输入的参数有误,请重新输入。",
      "force_update": null,
      "detail": "Message:Required String parameter 'nonce' is not present \r\n SourceAppName:ndvideo-key \r\n ",
      "cause": null
    }
    



    0x2 分析Network数据
    打开浏览器调试器,查看数据流,先实时获取 nonce:
    [Bash shell] 纯文本查看 复制代码
    curl [url=https://ndvideo-key.ykt.eduyun.cn/v1/resource_keys/10d898dcb9c840fb978f1557e352dea7/signs]https://ndvideo-key.ykt.eduyun.c ... f1557e352dea7/signs[/url] | jq
    {
      "nonce": "1762533708308:mgmdqx5d"
    }


    再二次请求获取加密字符串 key1:
    [Bash shell] 纯文本查看 复制代码
    https://ndvideo-key.ykt.eduyun.cn/v1/resource_keys/10d898dcb9c840fb978f1557e352dea7?nonce=1762532666576:2NfTtPRa&sign=7608cb125dd747bc
    
    {
        "id": "10d898dcb9c840fb978f1557e352dea7",
        "key": "aJK5arEwg61sbw5bEKHngZAIlCnF2oUk8uq9Jm/Zngw="
    }
    
    
    


    注意这里sign参数。

    尝试解密key1:
    [Bash shell] 纯文本查看 复制代码
    echo 'aJK5arEwg61sbw5bEKHngZAIlCnF2oUk8uq9Jm/Zngw=' | base64 -d | hexdump
    0000000 9268 6ab9 30b1 ad83 6f6c 5b0e a110 81e7
    0000010 0890 2994 dac5 2485 eaf2 26bd d96f 0c9e
    0000020

    Data数据长度0x20位,需要继续分析看看如何使用.


    0x3 分析播放器videoplayer.mini.js源码
    搜索字符串“Invalid HLS key”定位到key赋值位置:
    截屏2025-11-08 00.25.25.png

    刷新页面,断点处读取变量i内存值,使用语句:
    [JavaScript] 纯文本查看 复制代码
    [...new Uint8Array(i)].map(b => b.toString(16).padStart(2, '0')).join('')

    截屏2025-11-08 00.26.49.png


    0x4 验证key2正确性
    截屏2025-11-08 00.56.45.png
    PS:图片中的key2是另外一个视频的截图展示

    [Bash shell] 纯文本查看 复制代码
    openssl aes-128-cbc -d \                                                                           
    -in e94af7e5-41cf-1b57-5354-8322a02a5e92-1920x1080-true-b4f3ab39d259c7aa7efd9f2673885576-5262810e42004a33bf4c13c287450f48-00004.ts \
    -out 00004.ts -nosalt -K 65366366343934383964616234373636 -iv 00000000000000000000000000000000




    0x5 分析sign的算法
    参考字符串 '&sign=',快速定位到:
    截屏2025-11-08 01.05.28.png

    注意N的算法,稍后一起交给AI处理,N = (0,p.Pu)(E + _).toString().substring(0, 16)

    0x6 分析key1 --> key2 解密过程
    截屏2025-11-08 01.12.08.png

    看到一些关键词 decrypt mode padding

    0x7 AI出场分析算法, Thanks to Cursor & LLM
    截屏2025-11-08 01.18.17.png



    注意到视频vid在m3u8文件中可以提取,所以离线只需要视频地址即可。
    AI写下载工具:
    截屏2025-11-08 01.23.44.png

    0x8 最后
    截屏2025-11-08 01.35.17.jpg



    2025-11-08
    tree_fly/P.Y.G


    评分

    参与人数 5威望 +8 飘云币 +8 收起 理由
    飞天 + 1 + 1 赞一个,这个帖子很给力!
    smallhorse + 2 + 2 赞一个,这个帖子很给力!
    不破不立 + 2 + 2 感谢发布原创作品,PYG有你更精彩!
    wgz001 + 1 + 1 感谢发布原创作品,PYG有你更精彩!
    echo + 2 + 2 赞一个,这个帖子很给力!

    查看全部评分

    PYG19周年生日快乐!
  • TA的每日心情
    开心
    2019-2-26 11:14
  • 签到天数: 459 天

    [LV.9]以坛为家II

    发表于 4 小时前 | 显示全部楼层
    表哥一直iOS,666
    PYG19周年生日快乐!
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2025-1-14 08:31
  • 签到天数: 2449 天

    [LV.Master]伴坛终老

    发表于 4 小时前 | 显示全部楼层
    编程的尽头是AI
    PYG19周年生日快乐!
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2025-1-14 22:51
  • 签到天数: 1928 天

    [LV.Master]伴坛终老

    发表于 3 小时前 | 显示全部楼层
    感谢发布原创作品,PYG有你更精彩!
    PYG19周年生日快乐!
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2025-1-14 13:49
  • 签到天数: 393 天

    [LV.9]以坛为家II

    发表于 1 小时前 | 显示全部楼层
    PYG有你更精彩!
    PYG19周年生日快乐!
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    擦汗
    2025-1-13 08:34
  • 签到天数: 1098 天

    [LV.10]以坛为家III

    发表于 1 小时前 | 显示全部楼层
    谢谢分享教程
    PYG19周年生日快乐!
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    慵懒
    2025-1-14 16:50
  • 签到天数: 1592 天

    [LV.Master]伴坛终老

    发表于 半小时前 | 显示全部楼层
    技术大牛,感谢分享。
    PYG19周年生日快乐!
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2025-1-14 00:00
  • 签到天数: 1053 天

    [LV.10]以坛为家III

    发表于 半小时前 | 显示全部楼层
    感谢发布原创作品,PYG有你更精彩!
    PYG19周年生日快乐!
    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 登录 | 加入我们

    本版积分规则

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