以子之矛攻子之盾:新型对抗性验证码
Thu Jan 10 10:43:00 CST 2019

        验证码作为区分人与机器操作的工具,在网络安全中扮演着重要的角色。但是近几年,不断发展的人工智能技术也被不法分子用于破解验证码以非法牟利。不法分子通过各种手段收集大量的验证码后,利用机器学习技术进行OCR(光学字符识别)模型的训练,从而实现对验证码的自动识别。盗取用户账号、恶意注册、薅羊毛等一系列犯罪行为可进而由此产生。针对这样的现象,AZFT研究中心网络空间安全实验室的纪守领研究员团队——NESA Lab提出了一种新型的对抗性验证码,其遵循以子之矛攻子之盾的想法,应用最新的对抗学习技术,在原始验证码图像中有针对性的添加扰动,使得人眼识别过程不受影响,但能显著降低人工智能模型的识别率,从而在保持用户体验的同时,防范来自打码平台等黑灰产的破解。


         在图像中添加少量的扰动就能让识别模型分类错误?没错!根据目前的研究显示,这是机器学习算法的基本缺陷。只需要获得目标模型对于输入图像的梯度信息,就可以通过梯度信息计算出一个特定的扰动,在输入图像中添加这个扰动后即可欺骗目标模型,我们一般将这种添加了特殊扰动的图片称为对抗性样例。举一个实际例子,比如一张熊猫的图片,通过上述方法加入干扰后,人眼依然可以正常识别,但模型就会将其错误识别为长臂猿。


        已有的对抗样例生成方法可分为两类:白盒对抗样例生成方法和黑盒对抗样例生成方法。白盒对抗样例生成方法需要事先了解目标识别模型(即黑灰产实际使用模型)的内部参数,这在实际中显然不太可能 。黑盒对抗样例生成方法不需要事先了解目标识别模型的内部参数,只需维持一个与目标识别模型效果类似的本地模型。但在实际应用中,验证码破解团伙的数量多、模型更新快,这类方法很难保持持续的对抗效果。而且黑灰产破解团伙在将验证码输入模型前,一般会对验证码进行图像预处理,现有的对抗样例生成方法都未考虑该情况。

        针对现存方法的不足,NESA Lab提出了对抗性验证码生成框架——Adversarial CAPTCHA (aCAPTCHA)。该框架中包含了多种适用于实际的对抗性验证码生成方法,通过这些方法生成的验证码图片在经过图像预处理后,仍然保留有很强的对抗性。同时针对无法直接获得黑灰产模型内部参数的问题,aCAPTCHA通过不断记录黑灰产模型破解验证码时提交的答案,可间接获得目标模型的内部参数。aCATPCHA系统不仅能用于生成对抗性验证码,还可以用于评估生成验证码的安全性和可用性,同时还可以兼容包括文字和图像验证码在内的多种验证码类型。目前,该成果所形成的论文已经在投安全顶级期刊TDSC。NESA Lab还与阿里安全部门积极合作,共同研发人工智能安全技术,开展验证码领域的AI对抗AI。目前,共同研发的对抗性验证码产品已在阿里巴巴正式上线,淘宝、天猫等业务场景均可使用。实际效果显示,该产品可有效降低打码平台的通过率,下降幅度达50%以上。


阿里技术 | 达摩院 copyright@2017-2018 阿里巴巴-浙江大学前沿技术联合研究中心《法律声明》
浙公网安备: 33010002000092号
| ICP备案网站信息: 浙B2-20120091-4