最新要闻
- 赫德-德普官司以一百万美元赔偿和解
- 百度地图首发自研“北斗高精”技术 升级“真”车道级导航
- 【环球时快讯】中国版“猛禽”!长城山海炮大型皮卡实车现身:配自研3.0T、9AT
- 上海首张城市高级辅助驾驶地图许可来了 百度率先获批
- 环球快看点丨伊朗男子65厘米创吉尼斯最矮纪录:站起来才到到成人膝盖处
- 【世界时快讯】安卓抄错了?iPhone 15 Pro最新概念图:告别纯直边
- 当前关注:网络谣言别再传了!短视频中梅西抱的不是母亲:是阿根廷队女厨师
- 天天通讯!微软、谷歌之后 欧盟反垄断又对美国Meta下手:可罚款上百亿美元
- 每日视讯:4K游戏串流没了 NVIDIA删除使用9年的GameStream功能引用户不满
- 2022最后一跌!今起油价下调:加满一箱92号汽油少花19.5元
- 消息!苹果App Store被法国罚款100万美元:Epic CEO、扎克伯格都曾痛批
- 多次骂新能源!丰田再度质疑汽车全面电动化:中国品牌弯道超车
- 35岁本泽马宣布从法国队退役:球迷唏嘘 祝福俱乐部继续精彩
- 环球播报:北京等多地天空疑现震撼的火箭夜光云:原理科普
- 年出货3亿只、逛店必买的一次性碱性电池:被宜家正式停售了
- 环球新资讯:抖音在世界杯上下的功夫 远不止撒币10亿买版权这么简单
手机
iphone11大小尺寸是多少?苹果iPhone11和iPhone13的区别是什么?
警方通报辅警执法直播中被撞飞:犯罪嫌疑人已投案
- iphone11大小尺寸是多少?苹果iPhone11和iPhone13的区别是什么?
- 警方通报辅警执法直播中被撞飞:犯罪嫌疑人已投案
- 男子被关545天申国赔:获赔18万多 驳回精神抚慰金
- 3天内26名本土感染者,辽宁确诊人数已超安徽
- 广西柳州一男子因纠纷杀害三人后自首
- 洱海坠机4名机组人员被批准为烈士 数千干部群众悼念
家电
环球快报:【验证码逆向专栏】某片滑块、点选验证码逆向分析
声明
本文章中所有内容仅供学习交流使用,不用于其他任何目的,不提供完整代码,抓包内容、敏感网址、数据接口等均已做脱敏处理,严禁用于商业用途和非法用途,否则由此产生的一切后果均与作者无关!
本文章未经许可禁止转载,禁止任何修改后二次传播,擅自使用本文讲解的技术而导致的任何意外,作者均不负责,若有侵权,请在公众号【K哥爬虫】联系作者立即删除!
(资料图片)
逆向目标
- 目标:某片的滑动验证码和点选验证码逆向
- 主页:
aHR0cHM6Ly93d3cueXVucGlhbi5jb20vcHJvZHVjdC9jYXB0Y2hh
抓包分析
验证码图片获取接口,GET 请求,包含四个参数:cb
、i
、k
、captchaId
,有时候可能也会有 token
参数,那是因为不是第一次加载图片,比如刷新图片,会将之前接口的 token
值带上。
接口返回,如果是滑动验证码,则 bg
是背景图,front
是滑块图,还有个 token
值后续会用到。
如果是点选验证码,则 captchaImage
是底图,wordsImage
是需要点击的文字,同样的有个 token
值后续会用到。
验证接口,包含五个参数:cb
、i
、k
、token
、captchaId
,其中 token
就是获取验证码接口返回的。
逆向分析
图片接口
先来看看获取验证码图片的接口,全局搜索关键字 captchaId
即可定位到 key 为 jsonpRequest
的地方,下图中的 t
就是完整的接口 URL 了:
往上挨个找,先看看 captchaId
,其实就是 this.APP_ID
,多次刷新你会发现,对于滑块来讲,是定值 974cd565f11545b6a5006d10dc324281
,对于点选来讲,是定值 e1e7be036f9242c7aed023438af66f46
,这两个值在一个 JS 里是写死的,如下图所示:
再往上看,HOSTS
啥的是定值就不用说了,cb
就是 r
,i
就是 a.i
,k
就是 a.k
,通过 concat()
方法连接起来,所以只需要搞定 r
和 a
的值就行了,如下图所示:
a
的值是通过 encrypt(e)
得到的,e
里面有 fp
、address
、yp_riddler_id
等值,如下图所示:
先看看这个 encrypt
方法,最终返回的是 i
和 k
,瞧瞧这熟悉的 iv
、parse
,一看就是 AES、DES 之类的,试一下就知道了,或者跟进 lt.a.encrypt()
看看他的源码,对比一下标准算法里的源码,就可以发现是 AES,k
就很明显了,RSA 加密,公钥啥的一搜就有。
然后往上有个 yp_riddler_id
,貌似是从 cookie 中拿的,直接搜索这个关键字,可以找到其设置值的地方,就是一个 UUID,其中有个 window.performance.now()
方法,其作用是返回一个当前页面执行的时间的时间戳,用来精确计算程序执行时间,在 node 实现方法如下:
var perf = require("perf_hooks");performance = perf.performance.now()console.log(performance);
然后再往上有个 e.fp = this.fingerprint
,这里用到的应该是一个指纹库:https://github.com/fingerprintjs/fingerprintjs ,感兴趣的可以了解一下,同一个浏览器得到的指纹是一样的,这里固定即可。
然后就是 r
的值,preAdd
方法,直接扣就行了
然后这个 e
的值,再传到 jsonpRequest
之前就已经有一些值了,所以我们还得往前跟栈看看:
来到 getCaptcha
这里,没啥特别的,扣就完事儿了,其中有个 browserInfo
是浏览器的一些东西,copy 下来就行了。
验证接口
验证接口最后也是走的 jsonpRequest
,和前面的获取图片接口类似,不同之处就是传入的 e
里面包含的值不一样,先来看看滑块:
包含 distanceX
和 points
,很明显 points
就是轨迹了,再往前跟看看,如下图所示,我们只需要 i
和 r
参数就行了,参数是一些图片高宽,固定就行,offsetX
是滑动的距离。
主要看看这个轨迹 i = this.reducePoints()
,跟进 reducePoints()
方法里,this.position
是轨迹信息,这个方法对轨迹做了一些处理再返回的,直接把逻辑扣下来即可。
滑块就到这儿了,再来看看点选验证,同样的还是 jsonpRequest
,传入的 e
包含了三个点的坐标。
同样往上跟栈,这里的 this.position
才是真实坐标,后面每个坐标分别对 x 和 y 与图片的宽和高进行相除,如下图所示:
结果验证
-
环球热议:别再用 JWT 作为 Session 系统了,问题重重,后果很危险!
JSONWebTokens,又称JWT。本文将详解:为何JWT不适合存储Session,以及JWT引发的安全隐患。望各位对JWT...
来源: 环球快报:【验证码逆向专栏】某片滑块、点选验证码逆向分析
环球热议:别再用 JWT 作为 Session 系统了,问题重重,后果很危险!
全球球精选!Osx10.14升级watchman踩坑记
时讯:二分法
用Python来写个小型购物车程序
天天观速讯丨基于 Dubbo Admin 动态进行流量隔离
赫德-德普官司以一百万美元赔偿和解
百度地图首发自研“北斗高精”技术 升级“真”车道级导航
【环球时快讯】中国版“猛禽”!长城山海炮大型皮卡实车现身:配自研3.0T、9AT
上海首张城市高级辅助驾驶地图许可来了 百度率先获批
环球快看点丨伊朗男子65厘米创吉尼斯最矮纪录:站起来才到到成人膝盖处
热门:如何基于 Spring Boot 快速开发一个 Dubbo 微服务应用
【世界时快讯】安卓抄错了?iPhone 15 Pro最新概念图:告别纯直边
当前关注:网络谣言别再传了!短视频中梅西抱的不是母亲:是阿根廷队女厨师
天天通讯!微软、谷歌之后 欧盟反垄断又对美国Meta下手:可罚款上百亿美元
每日视讯:4K游戏串流没了 NVIDIA删除使用9年的GameStream功能引用户不满
2022最后一跌!今起油价下调:加满一箱92号汽油少花19.5元
消息!苹果App Store被法国罚款100万美元:Epic CEO、扎克伯格都曾痛批
多次骂新能源!丰田再度质疑汽车全面电动化:中国品牌弯道超车
35岁本泽马宣布从法国队退役:球迷唏嘘 祝福俱乐部继续精彩
Python单元测试框架unittest
环球播报:北京等多地天空疑现震撼的火箭夜光云:原理科普
年出货3亿只、逛店必买的一次性碱性电池:被宜家正式停售了
环球新资讯:抖音在世界杯上下的功夫 远不止撒币10亿买版权这么简单
差评如潮!《三体》动画评分暴跌至6.4:网友"口吐芬芳"
快讯:Epic与美国FTC和解:36.6亿元摆平两起官司
Spring IOC官方文档学习笔记(二)之Bean概述
焦点观察:FreeSWITCH学习笔记:通道变量
焦点关注:32开书本大小!华硕新款12代酷睿i7迷你机PC发布:零噪音
环球即时:内蒙古上空巨大发光体划破天际 网友:像手电筒一样
192个框框的怪兽!AMD Zen4线程撕裂者7000来了
世界快报:Django框架:9、Ajax简介、基本语法、数据编码格式、携带文件数据
马斯克现身世界杯观战阿根廷对法国:赛后发出灵魂拷问
【环球播资讯】梅西夺冠穿的黑纱是什么登上热搜:官方科普涨知识 意义非凡
今日快讯:小米13 Pro 8.38mm机身塞入太多强悍功能!雷军:相当不容易
当前快播:明年初亮相 全新东风标致408X即将发布:最美法系车来了
被裁员工报仇?近60%人赞成!马斯克将卸任推特CEO 没继承者还是我掌权
今日快讯:真值200+一张票价吗?《阿凡达2》用户评分:特效很棒 剧情稀烂
观察:小姐姐最爱!小米米家首款无线直板夹上架:30秒速热 369元
环球速看:Java关键词final解读
环球视点!简单排序
全球观焦点:数据结构与算法概念
AMD/Intel CES 2023新品发布会官宣:5大CPU齐飞
《阿凡达2:水之道》若大卖 《阿丽塔:战斗天使》续作可能有戏了!
OPPO首款竖向折叠屏Find N2 Flip评测:电池不再是遗憾 媲美传统直板手机
【环球播资讯】你能接受么?微软计划推出更廉价XGP:广告是代价
确认了!小米13系列没有砍掉Wi-Fi 7:将择机打开功能
安装VScode
linux设备树实现多个中断父(interrupt-parent)节点
当前观点:阿根廷夺冠 花16万现场看世界杯决赛的男子哭着说值了
热文:家长注意!2岁男童将硬币塞进电动车充电口 手被炸黑
天天最新:手工耿自制钓鱼佬智能快乐竿:外形酷似大狙 上钩主动提醒
当前头条:【活动预告】网易数帆首场低代码线上沙龙即将开启,报名从速!
全球头条:美国核聚变重要突破 “人造太阳”10年后有望实现发电 我国企业呢?
天天报道:联想USB 3.0扩展坞仅29元:4个USB接口 支持Type-C供电
环球滚动:颠覆认知的研究!人类可能在树上就学会了直立行走
天天快资讯:温和洁肤 六神茗茶植萃沐浴露:25.9元买一送一
满满维生素 乐源100%纯果汁大促:到手每瓶3块钱
全球头条:java中的代码块
天天观点:大数据 - DWD&DIM 业务数据
环球热点!springboot通过Referer防止跨站点请求伪造
天天微动态丨Tarjan算法求割点
最新快讯!腾讯游戏AI能帮医生看片了:超大尺寸扫描病理图像诊断成功验证
【天天报资讯】号称可以火星上穿的衣服全网首开:胸前一个大洞 自带呕吐袋
环球讯息:管好右手 摩托车弯道狂飙超车撞上护栏:骑手生死未卜
【全球聚看点】2022第三季度耳机手环出货量都跌了!因为苹果 手表逆势增长
国产龙鳞甲电池2023年装车量产:续航可达1000公里 安全没问题
环球最新:零基础入门 Java 后端开发,有哪些值得看的视频?
NVIDIA CES新品发布会官宣:RTX 4070 Ti、RTX 40笔记本显卡要来了
当前关注:美国侧目:俄罗斯生产首颗百分百国产通信卫星
观点:226MB你用吗?微信键盘正式版上线 张小龙:更好保护用户隐私
快报:新的全球制造中心越南、印度正崛起:想取代我们为时尚早
环球微资讯!30万级美系大SUV 福特探险者混动版曝光:电池来自比亚迪
天天热资讯!SIT-board 远程交互式白板的实现
洛谷 P6580 [Ynoi 2019] 美好的每一天~ 不连续的存在 题解
热头条丨火山引擎 DataTester 科普:A/B 实验常见名词解释
世界报道:Shell 变量知多少?
全球今头条!在Windows Linux中 安装 anaconda
讯息:无线投屏(智慧教室)
天天看热讯:二分的边界问题
Controller 层代码就该这么写,简洁又优雅!
SAP根据excel表格数据将数据导入表中
全球快看:JS中的相等性判断
半夜是指什么时间?半夜是指什么生肖?
三浴是什么意思?三浴锻炼是指哪三浴?
45号钢抗拉强度极限是多少?45号钢抗拉强度极限一览
今日看点:Redis——01 学习
每日看点!基于 Dubbo Admin 临时踢除问题服务实例
教材是什么意思?教材的作用有哪些?
受权人是什么意思?被授权人与受权人的区别是什么?
春风十里不如你结局是什么?春风十里不如你演员表
什么是环保型材料?环保型材料有哪些?
美团外卖超时怎么赔付?美团外卖超时了骑手会扣钱吗?
市政协委员相当于什么官?市政协委员有什么用?
顺丰速运公众号怎么修改手机号?顺丰速运公众号运费支付在哪里?
每日资讯:【算法训练营day22】LeetCode235. 二叉搜索树的最近公共祖先 LeetCode701. 二叉搜索树中的插入操作 LeetCode450.
【全球新视野】教你用JavaScript实现表情评级
环球要闻:基于 Dubbo Admin 动态调整服务超时时间
每日报道:JNPF实操│来,一起体验一流程多表单到底有多便捷
环球看点!DOM 之 Node和Element的区别