手把手分析虾m视频真实地址

查看 131|回复 11
作者:leospring   
声明
本文内容为小白入门实战教程,大神请忽视;本文仅供学习交流,请勿用于商业和非法用途,否则由此产生的一切后果均与作者无关;若有侵权,请联系立即删除!
接口地址
aHR0cHM6Ly9qeC54bWZsdi5jb20vP3VybD1odHRwczovL3YucXEuY29tL3gvY292ZXIvbXpjMDAyMDB1OHZmemN6Lmh0bWw=
实战开始
[ol]

  • 浏览器打开开发者模式,输入网站请求


    截图.png (250.91 KB, 下载次数: 2)
    下载附件
    2024-7-27 01:21 上传

    直接就请求完成了,没有复杂的无限debugger;省了很多事情;

  • 观察ur请求
    上面的请求不多,都点点看看,注意请求的参数与响应体


    截图1.png (88.26 KB, 下载次数: 2)
    下载附件
    2024-7-27 01:22 上传

    细心的同学会发现,这个xmflv.js的请求很诡异,居然是个post请求,响应体是个图片,图片还是裂图,这里边绝逼有鬼,看看这个请求结果到底是什么。

  • 分析怀疑的请求
    这个请求提供两种方式
  • 将图片下载本地,然后以文本打开该文件


    截图2.png (88.95 KB, 下载次数: 1)
    下载附件
    2024-7-27 01:22 上传



    截图3.png (281.69 KB, 下载次数: 3)
    下载附件
    2024-7-27 01:22 上传
  • 复杂请求的url,在控制台查看请求响应结果


    截图4.png (252.71 KB, 下载次数: 2)
    下载附件
    2024-7-27 01:04 上传



    截图5.png (338.19 KB, 下载次数: 2)
    下载附件
    2024-7-27 01:04 上传

    可以发现,加密结果和加密方式 key iv都出现了,解密看看结果,正是最终的直链地址(这里就不贴图了)

  • 分析算法


    截图6.png (73.6 KB, 下载次数: 2)
    下载附件
    2024-7-27 01:04 上传

    现在目标很明确了,就是获取上述接口的4个请求参数
    wap:是固定的 1
    url:是需要解析的官网地址url
    time:一眼就看出是时间戳
    就剩下 key 参数了,接下来要进行断点跟踪了,这里提供两种方式
  • 关键字搜索
    尝试 key:   "key":  'key':进行全局搜索,最终发现 'key': 能跟到目标代码处


    截图14.png (399.15 KB, 下载次数: 3)
    下载附件
    2024-7-27 02:15 上传
  • XHR接口断点
    我们知道请求的url,可以添加url断点,再重新请求


    截图7.png (126.75 KB, 下载次数: 1)
    下载附件
    2024-7-27 01:04 上传



    截图8.png (235.17 KB, 下载次数: 1)
    下载附件
    2024-7-27 01:04 上传

    点击请求的上游调用栈,很快就找到了请求参数生成地方


    截图9.png (242.09 KB, 下载次数: 2)
    下载附件
    2024-7-27 01:04 上传

    key 的生成算法是:
    sign(ll1lIl1l['KKVzz'](hex_md5, ll1lIl1l[IliIiIi(0x7c7, 'Sx)X')](I111ill, url)))
    算法混淆比较简单,我们在console打印每一步参数与function


    Snipaste_2024-07-27_02-47-30.png (96.12 KB, 下载次数: 2)
    下载附件
    2024-7-27 02:48 上传

    转换下 key = sign(hex_md5(time + url))
    在追踪sign跟 hex_md5方法


    截图11.png (77.18 KB, 下载次数: 1)
    下载附件
    2024-7-27 01:04 上传

    sign是标准AES CBC加密


    截图12.png (187.69 KB, 下载次数: 0)
    下载附件
    2024-7-27 01:04 上传

    好复杂,根据方法名,盲猜是MD5后再hash,随便找个参数验证一下


    截图13.png (21.64 KB, 下载次数: 3)
    下载附件
    2024-7-27 01:04 上传

    晕, 直接就是MD5呀,分析结束。

  • 全局关键字搜索
    通常在上面第2步分析url没有头绪时,可以直接全局搜索关键字,最常用关键字:decrypt


    Snipaste_2024-07-27_01-47-53.png (506.94 KB, 下载次数: 2)
    下载附件
    2024-7-27 02:13 上传

    再跟踪调用栈,也找到目标解密代码处


    Snipaste_2024-07-27_01-51-10.png (294.94 KB, 下载次数: 2)
    下载附件
    2024-7-27 02:12 上传

    [/ol]

    下载次数, 下载附件

  • hebeijianke   

    "

    [Python] 纯文本查看 复制代码import requests
    import time
    from Crypto.Cipher import AES
    from hashlib import md5
    from base64 import b64encode
    from urllib.parse import unquote, unquote_plus, quote, quote_plus
    def md5_hash(data):
        """对字符串进行MD5散列并返回其十六进制表示"""
        hash_object = md5(data.encode('utf-8')).hexdigest()
        return hash_object.encode('utf-8')
    def aes_encrypt(data, key, iv):
        """使用AES CBC模式加密明文"""
        cipher = AES.new(key, AES.MODE_CBC, iv)
        encrypted_text = cipher.encrypt(data.encode())
        return b64encode(encrypted_text).decode('utf-8')
    def sign(data):
        plaintext = md5(data.encode('utf-8')).hexdigest()
        key = md5_hash(plaintext)
        iv = b'3cccf88181408f19'
        encrypted = aes_encrypt(plaintext, key, iv)
        return encrypted
    url = quote('https://v.qq.com/x/cover/mzc00200yxnj6nj/n41009m0vya.html', safe='')
    headers = {
        'Host': '122.228.8.29:4433',
        'Origin': 'https://jx.xmflv.com',
        'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:128.0) Gecko/20100101 Firefox/128.0',
    }
    tm = int(round(time.time() * 1000))
    payload = {
        'wap': 1,
        'url': url,
        'time': tm,
        'key': sign(f"{tm}{url}")
    }
    con_url = f'https://122.228.8.29:4433/xmflv.js'
    res = requests.post(con_url, headers=headers, data=payload)
    print(res.status_code)
    print(res.text)
    可以了
    leospring
    OP
      


    mythe777 发表于 2024-8-3 11:38
    已经有m3u8地址 可以直接解析吧

    文章目的是逆向分析过程,并不单纯要知道地址;浏览器抓包或安装插件等等三方好多工具都能获取地址。当然学会这个可以自己代码实现
    zhangxiaoxiao   

    对我这种菜鸟帮助很大,谢谢楼主分享
    ghtao   

    强,学习了!多谢分享
    37893202812   

    感谢分享
    ionk   

    厉害,学到了
    wild12   

    谢谢分享
    yfyh   

    辛苦了~感谢分享
    longwuling   

    分析完后,可以下载吗
    您需要登录后才可以回帖 登录 | 立即注册

    返回顶部