自学内容网 自学内容网

数美滑块研究

周一,在清晨的阳光照耀下,逆向山脚下的小镇宁静而安详。居民们忙碌地开始一天的生活,而在爬虫镇子的边缘,一座古朴的道观显得格外神秘。

阿羊正静静地坐在青石长凳上,摸鱼养神。突然,一道清脆的声音在他耳边响起:“羊,有任务传下来了。”

他微微睁开双眼,站起身来。一位道童递来一枚闪烁着淡蓝光芒的玉牌,上面刻着一道base64的密文

aHR0cHM6Ly93d3cuaXNodW1laS5jb20vdHJpYWwvY2FwdGNoYS5odG1s

阿羊接过玉牌,心中一动。这气息,数美滑块!?这个任务似乎充满了未知的挑战和机遇。

读取了上面的地址,突然,一阵神秘的机关符文从玉牌上跃然而起,是一个滑块验证

https://captcha1.fengkongcloud.cn/ca/v1/register?

翻开背面一道禁制赫然眼前,想必这就是展示滑块机关的地方,一番探查。原来其余参数都是假的唯独这个captchaUuid是解开禁制的关键

展开神识搜索:captchaUuid,直接发现了 getCaptchaUuid ? !

取出代码,挨个取出替换

    def gen_captcha_uuid():
        total_string = "ABCDEFGHJKMNPQRSTWXYZabcdefhijkmnprstwxyz2345678"
        part = "".join([random.choice(total_string) for _ in range(18)])
        ctime = datetime.datetime.now().strftime("%Y%m%d%H%M%S")
        captcha_uuid = f"{ctime}{part}"
        return captcha_uuid

原来如此,是时间加上随机数,带上captcha_uuid,发出请求,ok成功返回

阿羊继续研究,既然怎么展示机关知道了,那么怎么通过机关呢,尝试滑动一下

https://captcha1.fengkongcloud.cn/ca/v2/fverify?

看来就是就是轨迹的校验了,一眼看去密密麻麻的参数

阿羊知道,但凡滑块,必然就是肯定有一个轨迹,再与其他或是配合浏览器指纹,或是随机一些字符串拼接,再加密炼制而成

多滑几次,原来只有je,mu,ww三个参数变动

点卡一看密密麻麻的混淆和控制流,不多说使用v神插件ast还原一下本地替换。

然后刷新一下,点堆栈一进去的地方断点,全局搜‘getEncryptContent’ 

je,mu,ww都在这

 _.je = this.getEncryptContent(v / d, '5ea96022')   
_.mu = this.getEncryptContent(f, 'e7e1eb0d')        
_.ww = this.getEncryptContent(h - l, "17a94a08")   

早有传闻数美是des,然后动态加密,看来动态的是被加密的参数,分别查看

mu是轨迹的加密

ww是结束时间-开始时间

je是 距离 / 宽度  保留17位小数

其他参数就是一些环境和默认值的加密。一起带上,配合上生成的轨迹,终于解开


原文地址:https://blog.csdn.net/paycho/article/details/139175006

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!