某象滑块逆向-滑块验证码逆向分析思路学习

一、声明!       
 
原创文章,请勿转载!

        本文内容仅限于安全研究,不公开具体源码。维护网络安全,人人有责。       

        文章中所有内容仅供学习交流使用,不用于其他任何目的,均已做脱敏处理,严禁用于商业用途和非法用途,否则由此产生的一切后果均与作者无关。

        本文章未经许可禁止转载,禁止任何修改后二次传播,擅自使用本文讲解的技术而导致的任何意外,作者均不负责,若有侵权,请联系作者立即删除,请各位自觉遵守相关法律法规

二、介绍

        滑块来源官网demo:aHR0cHM6Ly93d3cuZGluZ3hpYW5nLWluYy5jb20vYnVzaW5lc3MvY2FwdGNoYQ==

        

三、分析滑块接口

        1、请求获取验证码

                接口:https://cap.dingxiang-inc.com/api/a

                请求参数(只说需要处理的):

                        ak:当前滑块的token

                        c(校验不严):第一个c1接口返回

                        aid:由时间戳和随机数组成

                        cid(校验不严):当前滑块接口返回

                        _r:随机数

                接口返回:

        

        2、请求获取到参数c

                接口:https://constid.dingxiang-inc.com/udid/c1

                请求参数(只说需要处理的):

                        Param:index.js文件中加密得

                接口返回:

        3、校验验证码

                接口:https://cap.dingxiang-inc.com/api/v1

                请求参数(只说需要处理的):

                        ac(主要解决参数):greenseer.js文件中加密得

                        sid:请求滑块接口a返回。

                        aid:与请求滑块接口中的aid保持一致。

                接口返回:

四、底图还原

        接口返回的图片地址,是经过混淆的,如下:

        我们要还原为正常的图片,就需要逆向网页上面还原的过程:

        1、F12控制台中,勾选画布,进行debugger。

        2、然后重新加载验证码,就会断点在cavans处。

        3、到这里,大概的逻辑就是,拿到一个32长度的数组,然后根据数组循环就可以还原验证码。其中x方法就是主要还原的函数,o.drawImage就是还原操作。

五、ac参数加密

        该参数的生成,主要是在greenseer.js中实现的,而这个文件会在每天的上午10、晚上19点进行更新一次。

        找到ac参数生成位置:

                1、在校验接口,最后发包处打上断点。

                2、然后滑动验证码,触发断点。接着往上跟栈找到关键代码z.sendSA()的位置,再打上断点就可以看到ac参数等信息了。    

                3、从这里开始往上找到初始的ua生成,然后初始的ua会再经过两次加密,最后就会得到ac参数了。可以先补环境拿到加密的ac参数,没问题后再扣算法。

六、结果

 

有需求找:

var my_wx = x0082088    

创作不易求个赞再走~~~

逆向学习交流群:450297392

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值