吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 1317|回复: 6
上一主题 下一主题
收起左侧

[Web逆向] [原创] 猿人学Web爬虫攻防第一题:js 混淆 - 源码乱码

  [复制链接]
跳转到指定楼层
楼主
ZenoMiao 发表于 2025-6-7 13:03 回帖奖励
本帖最后由 ZenoMiao 于 2025-6-7 13:05 编辑

本次解题链接地址为: https://match.yuanrenxue.cn/match/1

打开浏览器F12后  看到了一个无限的debugger, 看到控制台有一堆打印出来的信息.



为了防止他把浏览器刷爆, 打下script断点把console.log和setInterval给hook了

在翻页之后, 已知请求链接为:
https://match.yuanrenxue.cn/api/match/1?m=91bc2ee952717f069c4dded57aa16eab%E4%B8%A81749369641
https://match.yuanrenxue.cn/api/match/1?page=2&m=dccdf00ea9649eb81a75b9b912481c25%E4%B8%A81749369648
https://match.yuanrenxue.cn/api/match/1?page=3&m=945af4fe498b76666ed2369f0871e737%E4%B8%A81749369650

根据链接的分析应该是一串暂时未知的加密+|+时间戳组成, 加密参数应该是跟后面的时间戳息息相关

重新刷新网页打上script断点一步步查看运行的js有没有可疑的地方

在打script断点的过程中. 发现有部分代码是通过eval执行的, 也打上断点


当进入到名为oo0O0的方法时, 查看他的形参mw发现是时间戳, 其时间戳跟请求参数m的时间戳极为相似,则跟堆栈看一下是哪里调用了他.



在方法oo0O0的返回前一行  发现又是一行eval的代码, 跟进去后发现是一个疑似md5的加密,


而底下的window.f调用了hex_md5的参数是固定位时间戳的字符串

在控制台试一下是否标准md5加密


确认不是标准md5加密后  把js代码扣下来,然后对比一下跟浏览器运行结果是否一样



确认一样之后, 加密代码就扣完了下面是撸Python代码的时候了

[Python] 纯文本查看 复制代码
import statistics
import subprocess
import time

import requests_html

requests = requests_html.HTMLSession()
def main():
    headers = {
        'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36',
        'Cookie': 'sessionid=自己的sessionid',
    }
    avg = list()
    for i in range(1, 6):
        _time = str(int(time.time()) * 1000 + 100000000)
        m = subprocess.Popen("node 1.js混淆-源码乱码 " + _time, encoding="utf-8", stdout=subprocess.PIPE)
        m = m.stdout.read().replace('\n', '') + '丨' + _time[:10]
        url = 'https://match.yuanrenxue.cn/api/match/1'
        params = {
            'page': i,
            'm': m
        }
        response = requests.get(url, params=params, headers=headers).json()
        for j in response['data']:
            avg.append(j['value'])
        print(response)
    print(avg)
    print(statistics.mean(avg))


if __name__ == '__main__':
    main()


运行后获得结果, 大功告成打完收工!

image.png (10.67 KB, 下载次数: 0)

image.png

image.png (7.07 KB, 下载次数: 0)

image.png

免费评分

参与人数 4吾爱币 +10 热心值 +4 收起 理由
jaffa + 1 + 1 谢谢@Thanks!
liuxuming3303 + 1 + 1 谢谢@Thanks!
涛之雨 + 7 + 1 欢迎分析讨论交流,吾爱破解论坛有你更精彩!
99910369 + 1 + 1 谢谢@Thanks!

查看全部评分

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

沙发
mw26973 发表于 2025-6-9 08:03
需要学习,希望大佬能把这个系列更新下去
3#
liuhc7216 发表于 2025-6-9 16:06
4#
zZBooM 发表于 2025-6-10 12:38
5#
lxb187 发表于 2025-6-10 15:30
希望大佬一直更新下去 想学
6#
LUCKYYC1 发表于 2025-6-10 16:01
努力学习
7#
过林黑马 发表于 2025-6-10 17:13
不错,很强大
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

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

GMT+8, 2025-6-15 14:12

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

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