记一次查询网站备案中滑块验证码的逆向分析

滑块验证码逆向记录

近期闲来无事,正好拿这个滑块验证码练练手,顺便打发打发时间

当我们进行网站查询时,会触发下面的验证码

Snipaste_2023-11-19_21-18-57.jpg

我们先进行 F12 抓包,看一下他的请求参数

Snipaste_2023-11-19_21-19-32.jpg

Snipaste_2023-11-19_21-20-26.jpg

通过抓包发现,只有 pointJ­son 是一个未知的加密参数,我们对该参数进行 base64 解密,发现解码失败,这时我们可以确定这是一个加密参数。

Snipaste_2023-11-19_21-20-58.jpg

全局搜索关键字,找到两处结果,进去看一看,打上断点

[Snipaste_2023-11-19_21-21-22.jpg

再次点击提交,嘿!您猜怎么着,断住了!

[Snipaste_2023-11-19_21-21-35.jpg

这个地方是一个三元运算符,前面的 se­cretKey 我们确定这是已知的,所有直接看后面的内容就行,后面两个东西长得一样啊,那我们直接看前面的

直接把鼠标放上去,看看里面是个嘛

Snipaste_2023-11-19_21-22-06.jpg

进去一看,是个很简短的加密。

Snipaste_2023-11-19_21-22-32.jpg

我们先打印一下看看这个 y 算出来是什么东西,顺便把里面的也打印一下

Snipaste_2023-11-19_21-23-39.jpg

Snipaste_2023-11-19_21-24-05.jpg

x 后面这个变量能在上面看到,是个计算后的值,说的是,获取移动坐标,然后去掉 px,下面的 t 是去掉 px 之后,乘除一下。

Snipaste_2023-11-19_21-24-30.jpg

Snipaste_2023-11-19_21-24-43.jpg

Snipaste_2023-11-19_21-24-49.jpg

好了,现在我们知道 y 是怎么算的,也知道里面的参数是什么意思,咱直接给他抠出来看看怎么个事。
我这里直接把 w () 替换成 cry­pot-js 了,这里明眼人都知道,猜都不用猜,这地球还有别的加密函数长这样吗 😃

Snipaste_2023-11-19_21-25-14.jpg

把刚才的参数放进去,打印一下看看对不对

Snipaste_2023-11-19_21-30-54.jpg

嘿,算对了,是不是一毛一样

你以为到这里就完了吗,就光分析这个那也忒简单了。
连传的参数都分析出来了,这不模拟一下,不就浪费了吗

我们都知道滑块验证码需要把图片移动到对应的缺口上,通过刚才的分析,需要提交的参数只有 x 轴的坐标。

Snipaste_2023-11-19_21-40-46.jpg

F12 看一下验证码图片,发现原图和接口传来的尺寸不一样,我们需要先对获取图片的接口进行 base64 解码,然后修改尺寸

Snipaste_2023-11-19_22-12-24.jpg

Snipaste_2023-11-19_22-12-30.jpg

然后我们使用 opencv 中的模板匹配来,确定缺口的位置

Snipaste_2023-11-19_21-47-07.jpg

然后运行一次看看

Snipaste_2023-11-19_21-48-13.jpg

嘿,匹配上了!

最后整合一下代码,查询一下阿里的域名

Snipaste_2023-11-19_21-47-54.jpg

Snipaste_2023-11-19_21-37-21.jpg

嗯,只能说一毛一样。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值