数美滑块逆向分析

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

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

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就是成功通过了

相关推荐
2501_944521591 小时前
Ramda 跨端三方库仓颉适配全流程
开发语言·javascript·flutter·php
Ken_11153 小时前
小体积附件下载正常,大附件下载异常
javascript
wangchunyu1143 小时前
JAVA CompletableFuture异步编程实战
java·开发语言·python
变与不变8064 小时前
jQuery怎么使用
前端·javascript
paopaokaka_luck4 小时前
流浪动物救助与收养系统(DeepSeek AI对话、 ECharts多维分析、救助流程衔接、领养与回访衔接、 捐赠确认与公示、志愿者协作)
java·前端·javascript·人工智能·mysql·echarts·推荐算法
仰望.4 小时前
vue 表格组件 vxe-table 树表格懒加载支持拖拽排序的详细用法
前端·javascript·vue.js·vxe-table
2501_944521595 小时前
Immer 跨端三方库仓颉适配全流程
python·eclipse·django
信誓旦旦的程序猿5 小时前
【Python量化实战宝典 #26】止损与回撤控制手册:移动止损、最大回撤(Python 可跑)
python·1024程序员节·股票数据api·股票数据api接口·股票api数据接口·股票量化数据api·股票量化数据接口
2501_944521595 小时前
Deepmerge 跨端三方库仓颉适配全流程
java·python·eclipse·github
Patrick在香港5 小时前
同一行 strftime,两台机器跑出两种日期
python·datetime·时区·locale·日期处理