业务安全滑块

问题讨论:https://v2ex.com/t/138479

应用场景:

在这里插入图片描述
防止机器批量登,爬,刷。在识别到安全风险时返回一个滑块对抗机器。

滑块原理:

从客户端提取信息,加密后上传 后端识别这些是否机器或者是恶意行为。

1.最终停止位置xpos

每次验证请求都会得到三张图,fullbg:完整的验证图形、slice:拼图那一小块、bg:拼图对应那一块加阴影的fullbg,对比fullbg和bg,哪一列像素上开始发生较大变化那就是xpos
如果以后不提供fullbg,只要得到几张不同的bg,求它们的交集即可得到fullbg,不需要机器学习算法

2.鼠标移动轨迹a

根据xpos可以确定大概需要生成多少帧
x随帧编号产生不均匀增加,直至xpos,开始是用arctan函数模拟的,后来发现完全没必要,建个bitmap[xpos],从里面随机挑选不重复项选就行了
y用长周期小振幅的sin函数模拟
t随时间产生不均匀增加,并加入一些跳变
用以上方法填充a

3.加密

不需要破解,从js中剥离加密相关的函数,放入js虚拟机,传入xpos和a并执行,获得加密后结果

说明
go run geetest-bypass.go -c=次数 -gt=“站点的gtid” 默认尝试豆瓣的验证码100次
success = 1 message = blahblahblah 通过
success = 0 message = failed 未通过
forbidden 判定为机器人

实现方式:

https://github.com/rejiejay/captcha-slider
https://github.com/yeild/jigsaw
https://m.php.cn/article/398849.html
https://github.com/google/recaptcha/blob/master/tests/ReCaptcha/RequestMethod/PostTest.php
https://github.com/binwind8/tncode/blob/master/TnCode.class.php

破解方案

https://lengyue.me/index.php/2018/10/16/shumei/

https://medium.com/@filipvitas/how-to-bypass-slider-captcha-with-js-and-puppeteer-cd5e28105e3c

https://github.com/fvitas/slider-anti-captcha?source=post_page---------------------------

参考:

http://dun.163.com/product/captcha#scene

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值