
全文8799字,预计阅读时间约25分钟,建议收藏后阅读
验证码本质上自带一层答案的语义,这是天然的区分人和自动程序的地方。无论使用哪一种方式破解验证码,都必须识别出答案。
在多年与黑产破解者的博弈对抗的过程中,我们发现,从限制黑产获取验证码图片答案这个方向来进行防御,不仅可以减少运营成本、降低对客户的打扰率,还能掌握攻防博弈对抗过程中的主动权。经过极验十一年的黑产攻防实践总结出:黑产对于验证码图片答案的获取主要有两种手段——图片穷举破解和图片模型破解。模型破解与穷举破解的差别,本质上是黑产效率的提升。
本期,我们将针对模型破解带来攻防点:图像识别模型对抗。同样会从攻击方(黑产)、被攻方(客户)和防守方(极验)的三方视角进行深度剖析,全面的理解该攻防点。
攻防点

上一期我们讲到验证图片穷举遍历,其中提到了人工打码。人工打码,又被称作 anti-CAPTCHA ,指在进行验证码人机测试时,黑产将验证码请求发送到人工打码平台,由真实的人来完成,从而通过人肉众包的形式帮助黑产团伙通过验证码。

然而,真人在线输入验证码难以避免耗时等问题,在整个黑产作弊链路中,人工打码几乎占据了超过60%的时间。以破解一批30万张的验证图库为例,黑产下载这批图片耗时8.33小时,通过低成本的人工打码获取这批验证图片答案需要花费208.33小时。并且,图片遍历+人工打码是一个需要持续投入时间和资金的破解方法,一旦验证厂商更新了图集,黑产就需要重新下载一批新的图库,不停地重复花钱请人打码。
那么怎样才能缩减这些时间和资金成本,减少人工打码的占比呢?黑产想出了一种方式——用自动化的方式来识别图片答案。即在验证图片资源遍历批量获取到图片答案后,进行自动化的模型训练,从而实现自动对抗。

相比起图片遍历+人工打码的攻击方式会随着图集自动更新而失效,黑产只需要建立出一个准确的图片识别模型,即便后期验证厂商动态更新了图集,只要不改变图片上的图标风格,识别模型依然能精准地识别图片,效率大大提升。

更新前:图A

更新后:图B
例如,假设黑产训练出了能够识别图A的模型,那么即使验证厂商将图库更新为了图B,黑产的模型同样也能识别。且后续每次图集更新时只要不改变图标风格,黑产的模型都能持续识别这批图片。这直接帮助黑产省去了爬取、下载图库的流程,大大降低了重新寻找人工打码的时间和资金成本,提高了攻击效率。
从黑产视角看图像识别模型的收益
利用自动化的方式来识别图片答案,对攻击方而言并非必要手段。但如果能减少人工打码的占比,大部分使用自动化识别,将大大缩短黑产的攻击时间,更加持续有效地识别图片答案。那么,黑产是如何得到一个准确且高效的模型,又是如何利用模型来进行自动化攻击的呢?
攻击原理
我们先来了解下图片识别模型的原理。目前,用作图片识别使用的比较多的模型是CNN。
CNN (Convolutional Neural Networks) 是一种深度学习模型,用于图像处理和分析任务。它的基本原理是通过在数据上提取特征,然后利用这些特征来识别和分类数据。它可以用于复杂的图像识别,比如影像分析,行为识别,自然语言处理等。CNN的基本原理介绍:
1.卷积层(Convolutional Layer):卷积层使用一系列的滤波器(卷积核)对输入图像进行卷积操作。滤波器在图像上滑动,并计算每个位置的卷积结果。这样可以捕捉图像的局部空间信息。卷积操作可以通过矩阵乘法和加法来实现。
2.激活函数(Activation Function):卷积层的输出经常会经过一个非线性的激活函数,如ReLU(Rectified Linear Unit),用于引入非线性变换和增加模型的表达能力。
3.池化层(Pooling Layer):池化层用于降低特征图的尺寸,并提取主要的特征。常见的池化操作包括最大池化和平均池化。池化操作可以减少参数数量,提高计算效率,并增强模型的平移不变性。
4.全连接层(Fully Connected Layer):池化层的输出通过全连接层连接到输出层,用于进行最终的分类或回归。全连接层将特征图展平为一个向量,并通过矩阵乘法和加法进行计算。
5.损失函数(Loss Function):CNN的训练过程通过最小化损失函数来优化模型。常见的损失函数包括交叉熵损失和均方误差损失,用于衡量模型的预测结果与真实标签之间的差异。
6.反向传播(Backpropagation):CNN使用反向传播算法来计算损失函数对模型参数的梯度,并通过梯度下降法来更新参数。反向传播通过链式法则将误差从输出层反向传播到输入层,以更新卷积层和全连接层的参数。
攻击流程
站在黑产的视角完整地体验一次图像识别模型训练和攻击的流程:
step 1:黑产针对某游戏公司的Web注册场景发起攻击。

step 2:黑产通过频繁向页面接口发送请求来获取验证图片地址。

step 3:批量下载存储验证图片,共需要大概5~10万张图片。

step 4:人工对验证图片中的答案进行标注。

step 5:构建模型的网络结构,编写模型训练代码。
图像识别模型攻防:黑产攻击与极验防御策略

本文围绕图像识别模型的攻防展开。黑产为提高攻击效率,采用自动化模型破解验证码,常用分类、相似和目标检测模型,降低成本且提升效率。企业面临黑产攻击时数据异常,极验通过视觉偏差对抗方案,如更新图片元素、做轮廓干扰处理等,有效防御黑产攻击。
最低0.47元/天 解锁文章
434

被折叠的 条评论
为什么被折叠?



