数美滑块逆向分析

本篇文章仅用于交流与学习,严禁用于任何商业与非法用途!否则由此产生的一切后果均与作者无关!如有侵权,请联系作者本人进行删除。

感谢关注!您的关注和点赞就是我的动力

1.逆向目标

aHR0cHM6Ly93d3cuaXNodW1laS5jb20vdHJpYWwvY2FwdGNoYS5odG1s

2.逆向分析

先看发包接口,不需要逆向,把图片下载下来识别缺口距离(最后需要除以2),把返回的rid保存下来,后面的验证接口需要

网页上的图片进行了缩放

python 复制代码
def verify():
    det=ddddocr.DdddOcr(det=False,ocr=False)
    with open("bg.png", "rb") as f:
        bg_img = f.read()
    with open("fg.png", "rb") as f:
        slice_img = f.read()
    res = det.slide_match(slice_img, bg_img)
    return round(res["target"][0]/2)

看验证接口,有三个参数需要逆向,rid是上个接口返回的,

打断点跟栈,到这里的时候参数已经生成,继续往上跟

到这里,找_0x593816的生成位置

在这里

进入方法内部后,找到了目标参数的加密位置,把这三行手动解一下混淆,

解完后如下所示,wi的入参需要滑块滑动的距离,gq的入参需要滑动轨迹,vs的入参需要滑动时间,自己造一个就行,现在主要看getEncryptContent这个方法,

进入方法内,发现是一堆控制流,自己手动解一下混淆再简化一下,现在主要是找_0x1bc64e和_0x504466这两个方法,把这两个方法扣下来,该缺的东西再补上就行了

轨迹代码如下

python 复制代码
def generate_track(target_distance: int):
    """
    【唯一入参】滑动的目标距离(整数,如 90、215、109)
    【固定规则】轨迹点数:15~18个(随机)
    【轨迹格式】[x偏移, y偏移, 时间戳(毫秒)]
    """
    # 1. 严格控制点数:随机15-18个点
    total_points = random.randint(20, 22)
    track = []
    x = 0
    timestamp = 0
    mid_point = total_points // 2  # 加速/减速分界点

    # 2. 生成精准步长(总和=目标距离,前快后慢)
    steps = []
    for i in range(total_points):
        # 前半段加速(大步长),后半段减速(小步长)
        if i < mid_point:
            step = random.randint(3, 6)
        else:
            step = random.randint(1, 4)
        steps.append(step)

    # 调整步长总和,确保刚好等于目标距离
    sum_steps = sum(steps)
    diff = target_distance - sum_steps
    if diff != 0:
        steps[-1] += diff  # 最后一个点补齐距离

    # 3. 生成完整轨迹
    for step in steps:
        x += step
        # Y轴:真人滑动微小波动(-2 ~ 2)
        y = random.randint(-2, 2)
        # 时间戳:每点递增80-120ms
        timestamp += random.randint(99, 102)
        track.append([x, y, timestamp])

    return track

3.逆向结果

最后返回的结果是pass就是成功通过了

相关推荐
yuhuofei202115 分钟前
【Python入门】了解掌握Python中函数的基本使用
python
shuaijie05181 小时前
强制修改调用接口的api地址。
javascript·vue.js·ecmascript
JerrySir1 小时前
恶意 npm 包只活了 17 分钟:技术面试里,为什么“升级依赖”还不算止血?
javascript·安全
白帽小阳2 小时前
2026前端面试题!(附答案及解析)
javascript·网络·python·安全·web安全·网络安全·护网行动
这是个栗子2 小时前
前端开发中的常用工具函数(八)
开发语言·前端·javascript
Hilaku2 小时前
Vue 和 React 真正的差距,不在语法,而在团队犯错成本
前端·javascript·程序员
研☆香2 小时前
为什么变量声明在赋值前也能使用?—— 深入理解 JavaScript 变量提升与作用域
开发语言·前端·javascript
乱写代码2 小时前
Python开发技巧--类型注解Literal
python
卷无止境2 小时前
Python FFI 技术深度解析:ctypes、cffi 与 pybind11 的性能差异与实践挑战
后端·python