数美滑块验证码分析
文章目录[*]1.验证码申请
2.提取js参数
2.验证码注册
3.计算滑块位置
4.验证
5.完整代码
数美验证码官网:https://www.ishumei.com/trial/captcha.html
https://img-blog.csdnimg.cn/20210113100914342.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MzU4MjEwMQ==,size_16,color_FFFFFF,t_70
1.验证码申请
打开控制台多看几遍请求过程,就大抵明白请求步骤了,这里就不再细说。
api: ‘https://captcha.fengkongcloud.com/ca/v1/conf?’
https://img-blog.csdnimg.cn/20210113100938545.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MzU4MjEwMQ==,size_16,color_FFFFFF,t_70
params= {
'organization': 'RlokQwRlVjUrTUlkIqOg',
'model': 'slide',
'sdkver': '1.1.3',
'rversion': '1.0.3',
'appId': 'default',
'lang': 'zh-cn',
'channel': 'YingYongBao',
'callback': 'sm_{}'.format(int(time.time() * 1000))
}
该接口返回的js参数,是下一步需要请求的目标。
https://img-blog.csdnimg.cn/20210113093317582.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MzU4MjEwMQ==,size_16,color_FFFFFF,t_70
2.提取js参数
js地址:https://castatic.fengkongcloud.com/pr/auto-build/v1.0.3-70/captcha-sdk.min.js
需要提取该js中的参数名,会在最后验证的时候使用。
不过一般情况下参数名不会变,也可以省略此处,在后面写死。
https://img-blog.csdnimg.cn/20210113110113722.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MzU4MjEwMQ==,size_16,color_FFFFFF,t_70
在该js文件中的参数是倒序的
https://img-blog.csdnimg.cn/20210113110457862.png
2.验证码注册
api: https://captcha.fengkongcloud.com/ca/v1/register?
https://img-blog.csdnimg.cn/20210113095411896.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MzU4MjEwMQ==,size_16,color_FFFFFF,t_70
bg和fg是验证码图片地址。 https://castatic.fengkongcloud.com/crb/+bg
https://img-blog.csdnimg.cn/20210113100241281.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MzU4MjEwMQ==,size_16,color_FFFFFF,t_70
3.计算滑块位置
根据上一步可以得到验证图片的地址。
验证码图片:https://castatic.fengkongcloud.com/crb/set-000006/v2/a13e3325e9f864fa42a94a6e07cd95fc_bg.jpg
滑块图片:https://castatic.fengkongcloud.com/crb/set-000006/v2/a13e3325e9f864fa42a94a6e07cd95fc_fg.png
https://img-blog.csdnimg.cn/20210113100819146.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MzU4MjEwMQ==,size_16,color_FFFFFF,t_70
使用opencv查找并匹配图像模板中的滑块。
需要注意的是,这里是以原图计算的,而页面上的图片大小只有(300,150),(应用不同的产品时图片大小可能也不同)
所以需要按比例进行缩小。
4.验证
api:https://captcha.fengkongcloud.com/ca/v2/fverify?
params = {
'protocol': '70',
'organization': 'RlokQwRlVjUrTUlkIqOg',
'rversion': '1.0.3',
'oe': 'V/QxFC7ISm1=',
'nj': '1ISY9IKNM+OGjwl0F7LP...省略...7VOki5p4sm+h/qMX2QAhN/4w',
'zl': '8LwMmaImogs=',
'sq': '14RHMSbfhJU=',
'kh': 'qCcI31wL/Fs=',
'mn': '4AAyKWNy6K0=',
'rid': '20210113105643e313f68a420c9d240d',
'ch': 'uiJ+hjbCOka=',
'yv': 'b9NFDsBKGcg=',
'ga': 'WssDiJ1wOQI=',
'ko': '14bDqW72JnI=',
'callback': 'sm_1610506618948',
'act.os': 'web_pc',
'vj': 'IFXKu8Pjb3k=',
'ostype': 'web',
'sdkver': '1.1.3'
}
params参数里的 oe,mn,kh等等,都经过了DES加密。
验证后会返回,
https://img-blog.csdnimg.cn/20210113112901882.png
message = success,riskLevel=PASS 说明验证通过
5.完整代码
这里没有文章修改权限,代码放在别的平台方便更新。
https://blog.csdn.net/weixin_43582101/article/details/112553479
大佬的文章永远不会让人失望 优秀 666 666 666 1 666
-------------------------------------
作者: 冬晨夕阳
来源: 夜幕爬虫安全论坛
原文链接: https://bbs.nightteam.cn/thread-1065.htm
版权声明: 若无额外声明,本帖为作者原创帖,转载请附上帖子链接! 666 666