某东cfe验证流程分析

声明

本文章中所有内容仅供学习交流,抓包内容、敏感网址、数据接口均已做脱敏处理,严禁用于商业用途和非法用途,否则由此产生的一切后果均与作者无关,若有侵权,请联系我立即删除!

前言

本文详细解读以及算法如下

https://articles.zsxq.com/id_btz5zrd0pr5m.html

公众号文章如下

https://mp.weixin.qq.com/s/uPAmOIeafudlstOjcB6BFw

目标网站

aHR0cHM6Ly9jZmUubS5qZC5jb20vcHJpdmF0ZWRvbWFpbi9yaXNrX2hhbmRsZXIvMDMxMDE5MDAvP3JldHVybnVybD1odHRwcyUzQSUyRiUyRml0ZW0uamQuY29tJTJGMTAwMDQ4MjcyNzYyLmh0bWwmcnFob3N0PWh0dHBzJTNBJTJGJTJGYXBpLm0uamQuY29tJnJwaWQ9cnAtMTg2NTQ5NDkwLTEwMDU2LTE3MDk3MTMyMDgzNzEmZXZ0eXBlPTImZXZhcGk9Y29sb3JfcGNfZGV0YWlscGFnZV93YXJlQnVzaW5lc3Mmc291cmNlPTEmZm9yY2VDdXJyZW50Vmlldz0x

验证码分析

当出现了这个验证码的时候。代表出现了风控验证码。可能说已经检测到你是个爬虫了。

image-20240311151518565

这里点快速验证。会出现两种验证码

第一种验证码 我称为t30验证码 即滑块验证码

image-20240311151728470

第二种验证码 我称为t22验证码 即文字点选验证码

image-20240311151746741

两种验证码 按账号等级而定。以及按风控等级来定。

一般来说大部分常遇见的都是第一种t30验证码

今天我们来简单的都分析一波。

文中JS分析与接口分析皆为t30验证码

接口分析

这里发现 我们点击上文的快速验证。这里出现验证码。

先不要着急去划。

image-20240311152113483

上图有四个接口,需要我们去逆向。分别为

  • api_1
  • api_2
  • fp
  • check

这里我们挨个去看。先从下往上看。

先看check

image-20240311152414985

这里看到 响应是个图片。后面肯定是提取这组图片并通过识别这个图片。来完成请求

image-20240311152437839

这里请求是三个值

  • si
  • tk
  • ct

很好。我们这里继续往上看。

fp请求

请求参数 是 si 和 ct

image-20240311152712303

响应值是个fp以及st

image-20240311153419153

继续往上看

第二个api请求。

image-20240311152842193

响应值无内容

继续往上看

image-20240311152912890

响应值好像是s1

image-20240311152932424

至此 四个请求分析完毕。

这个时候我们只是出了图片。还没有滑动验证码。

这个时候我们拖动验证码

这里再次出现check请求。不同的是 这次是滑动验证码后发起的请求。

image-20240311153128053

这个时候五个请求。全部过了一遍。简单捋一遍。

  1. 分析两次API的enbody加密前是什么
  2. 通过api1返回的s1 去分析tk的生成。
  3. 通过fp请求请求出fp 和 st
  4. 构造请求 分析si tk ct如何加密得来
  5. 构造请求。得到图片
  6. 得到图片。进行识别 构造请求 完成流程。

详细的流程分析 我后续会发在星球里。

https://t.zsxq.com/17OvVkJha

JS分析

这里直接就开干了吧。

这里从JS开始。我们就直接顺着来。先从API请求开始。

第一次API请求

这里直接搜索enbody

image-20240311153705915

这里发现搜不出来任何东西 只有一个webapck打包的虚拟代码

image-20240311153820235

没关系 我们在这个地方打上debugger。

然后跳到另一个文件

这里路过了跳过了无数个栈(当然可以直接搜索enbody)

image-20240311153944575

这里重新刷新 网页。

得到加密的值。这个加密的值。

requestID 就是请求的ID值。每次出现605会返回。

这里的话。shshfpx和encrypt算法的话。在本人星球 需要的可以自取

https://t.zsxq.com/17OvVkJha

encrypt 自己去抠。

image-20240311155315342

第二次api请求

上文得到加密的值。然后第二次API请求还有个enbody。

这里我们放开断点。

发现 这里传值好像就是第一次请求的响应值。

image-20240311155439069

fp请求

fp请求 就跟栈吧。我也没想到有什么好的方法。想要快速找到同学

可以试一下搜索 f.si 加空格

这里fp请求的断点如下。

image-20240311160018668

里面的JS还是很简单的。

主要方法就是围绕着这个X方法。把这个方法抠出来就行了。

这里全部抠出来的话 大概不到三百行代码。

获取check请求

这里第一次获取check请求和第二次获取check请求

所在位置都是一样的。

如下图所示。不一样的就是传入的轨迹不同。

相同的地方 也是这个X方法。同样加密就行了。

image-20240311160436211

轨迹

说实话 这个整体分析下来都不难。

唯一难的就是这个轨迹。

如下图所示。

基本上对这个轨迹的检测是很严格的。

包括这是个双缺口的验证码,可能相对的会占用一些时间。

image-20240311160604524

b22 文字点选验证码

上文讲过这个有两个验证码

这里t22验证码 和上文大部分地方都是大同小异。

这里唯一不同的可以就是这个轨迹。这里不是轨迹 而是点选的四个点的坐标。

image-20240311161005791

结果

image-20240311161230839

结语

这里需要接单的可以找一下 洋哥

https://m.tb.cn/h.5EBifsr?tk=S7kbWN8Gerw

另外本文某些算法 在本人星球里。有需要的小伙伴可以加一下

https://t.zsxq.com/17OvVkJha

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值