CN115001771B - 基于自动更新的验证码防御方法、***、设备及存储介质 - Google Patents
基于自动更新的验证码防御方法、***、设备及存储介质 Download PDFInfo
- Publication number
- CN115001771B CN115001771B CN202210579836.6A CN202210579836A CN115001771B CN 115001771 B CN115001771 B CN 115001771B CN 202210579836 A CN202210579836 A CN 202210579836A CN 115001771 B CN115001771 B CN 115001771B
- Authority
- CN
- China
- Prior art keywords
- model
- verification code
- verification
- acquiring
- configuration file
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000012795 verification Methods 0.000 title claims abstract description 313
- 238000000034 method Methods 0.000 title claims abstract description 44
- 238000003860 storage Methods 0.000 title claims abstract description 15
- 238000012549 training Methods 0.000 claims abstract description 61
- 230000015556 catabolic process Effects 0.000 claims abstract description 52
- 238000006731 degradation reaction Methods 0.000 claims abstract description 52
- 230000000694 effects Effects 0.000 claims abstract description 52
- 230000007123 defense Effects 0.000 claims description 63
- 230000006870 function Effects 0.000 claims description 16
- 238000001514 detection method Methods 0.000 claims description 12
- 238000013145 classification model Methods 0.000 claims description 10
- 238000013508 migration Methods 0.000 claims description 3
- 230000005012 migration Effects 0.000 claims description 3
- 230000001960 triggered effect Effects 0.000 abstract description 3
- 238000010586 diagram Methods 0.000 description 21
- 238000012544 monitoring process Methods 0.000 description 12
- 238000004590 computer program Methods 0.000 description 11
- 208000003443 Unconsciousness Diseases 0.000 description 9
- 238000005516 engineering process Methods 0.000 description 7
- 230000008569 process Effects 0.000 description 7
- 230000002159 abnormal effect Effects 0.000 description 6
- 238000012545 processing Methods 0.000 description 6
- 238000011156 evaluation Methods 0.000 description 5
- 238000012986 modification Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 238000012360 testing method Methods 0.000 description 4
- 238000013210 evaluation model Methods 0.000 description 3
- 230000006698 induction Effects 0.000 description 3
- 239000000463 material Substances 0.000 description 3
- 230000004075 alteration Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000005336 cracking Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000018109 developmental process Effects 0.000 description 2
- 210000005069 ears Anatomy 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 238000010200 validation analysis Methods 0.000 description 2
- 206010033799 Paralysis Diseases 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000013136 deep learning model Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/10—Network architectures or network communication protocols for network security for controlling access to devices or network resources
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/06—Network architectures or network communication protocols for network security for supporting key management in a packet data network
- H04L63/068—Network architectures or network communication protocols for network security for supporting key management in a packet data network using time-dependent keys, e.g. periodically changing keys
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/2866—Architectures; Arrangements
- H04L67/30—Profiles
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Debugging And Monitoring (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明提供一种基于自动更新的验证码防御方法、***、设备及存储介质,方法包括:实时获取各验证形式的验证码的对抗效果退化等级;在对抗效果退化等级大于预设阈值时,获取对应的生成模型和历史验证码数据;获取生成模型对应的配置文件和训练模型组;根据配置文件、训练模型组和历史验证码数据更新生成模型用以生成验证码;本发明通过获取验证码的对抗效果等级触发生成模型更新,并通过当前生成模型和对应的历史验证码训练得到新的生成模型,从而有效的防止验证码生成模型无法自动更新导致的对抗效果退化,解决了现阶段由于管理员判断标准不一致、受外界因素影响导致的生成模型更新不及时的问题。
Description
技术领域
本发明涉及大数据处理领域,更具体地,涉及一种基于自动更新的验证码防御方法、***、设备及存储介质。
背景技术
验证码是通过图灵测试的方式识别正常用户还是黑产恶意访问的一种防御手段,可以防止:恶意破解密码、恶意访问目标程序,有效防止某个黑客对某一个特定注册用户用特定程序包里破解的方式进行不段登陆尝试,从而避免由于以上情况对程序访问造成网络拥堵,甚至是服务瘫痪的情况。
但是随着计算机水平的快速发展,尤其是神经网络技术的快速发展,图像识别技术日益成熟,传统的验证码防御技术已经无法对黑产恶意访问进行有效的拦截,验证码防御技术逐渐失去了它应有的功能。
现阶段为了提高验证码的防御安全性,往往都需要管理员定期主动去判断识别是否需要进行生成模型更新,并且由于需要管理员来定期判断,所以会出现由于管理员判断标准不一致、受外界因素影响导致的生成模型更新不及时,从而降低生成模型的安全性。故而,如何在解决由于管理员判断标准不一致、受外界因素影响导致的生成模型更新不及时是亟待解决的问题。
发明内容
本发明针对现有技术中存在的技术问题,提供一种基于自动更新的验证码防御方法、***、设备及存储介质,解决由于管理员判断标准不一致、受外界因素影响导致的生成模型更新不及时的问题。
根据本发明的第一方面,提供了一种基于自动更新的验证码防御方法,包括:
实时获取各验证形式的验证码的对抗效果退化等级;
在所述对抗效果退化等级大于预设阈值时,获取对应的生成模型和历史验证码数据;
获取所述生成模型对应的配置文件和训练模型组;
根据所述配置文件、所述训练模型组和所述历史验证码数据更新所述生成模型用以生成验证码。
在上述技术方案的基础上,本发明还可以作出如下改进。
可选的,所述实时获取各验证形式的验证码的对抗效果退化等级的步骤,包括:
获取所述各验证形式的验证码对应的使用序号;
获取所述各验证形式的验证码对应的通过数量;
根据所述使用序号和所述通过数量计算所述各验证形式的验证码对应的对抗效果退化等级。
可选的,所述根据所述配置文件、所述训练模型组和所述历史验证码数据更新所述生成模型的步骤,包括:
获取所述配置文件中防御等级,对所述防御等级进行调整,得到调整后的防御等级并更新所述配置文件;
根据更新后的所述配置文件构建损失函数;
根据更新后的所述配置文件迭代所述训练模型组,最小化损失函数,输出并更新所述生成模型。
可选的,所述获取所述生成模型对应的配置文件和训练模型组的步骤的步骤,包括:
获取所述生成模型对应的配置文件;
获取预设模型池,根据所述配置文件抽取所述预设模型池中模型构建训练模型组。
可选的,所述获取预设模型池的步骤之前,还包括:
根据所述配置文件获取识别模型库中对应的识别模型,构建识别模型池;
获取获取历史验证码数据,根据所述历史验证码数据对所述识别模型池中各识别模型进行迁移训练,更新所述识别模型池。
可选的,所述识别模型中包括:图片分类模型簇、目标检测模型簇、语序识别模型簇和语音识别模型簇。
可选的,所述各验证形式的验证码包括:九宫格验证码、字符验证码、点选验证码和语音验证码。
根据本发明的第二方面,提供一种基于自动更新的验证码防御***,包括:
效果获取模块,用于实实时获取各验证形式的验证码的对抗效果退化等级;
数据获取模块,用于在所述对抗效果退化等级大于预设阈值时,获取对应的生成模型和历史验证码数据;
模型获取模块,用于获取所述生成模型对应的配置文件和训练模型组;
模型更新模块,用于根据所述配置文件、所述训练模型组和所述历史验证码数据更新所述生成模型用以生成验证码。
根据本发明的第三方面,提供了一种设备,包括存储器、处理器,所述处理器用于执行存储器中存储的计算机管理类程序时实现上述第一方面中任一基于自动更新的验证码防御方法的步骤。
根据本发明的第四方面,提供了一种计算机可读存储介质,其上存储有计算机管理类程序,所述计算机管理类程序被处理器执行时实现上述第一方面中任一基于自动更新的验证码防御方法的步骤。
本发明提供一种基于自动更新的验证码防御方法、***、设备及存储介质,通过实时获取各验证形式的验证码的对抗效果退化等级;在上述对抗效果退化等级大于预设阈值时,获取对应的生成模型和历史验证码数据;获取上述生成模型对应的配置文件和训练模型组;根据上述配置文件、上述训练模型组和上述历史验证码数据更新上述生成模型用以生成验证码。本发明通过获取对抗效果退化等级作为触发条件,在上述对抗效果退化等级大于预设阈值时,获取当前对抗验证码的生成模型,通过生成模型获取对应的配置信息,将上述配置信息作为配置基准,并获取第一生成模型生成的历史验证码,通过上述配置基准信息和全部验证码训练得到新的更新生成模型,从而可以实现生成模型的自动更新,并且由于是使用了历史验证码作为训练样本数据,所以可以有效提升生成模型的安全性上得到进一步提升,减少用户手动参与更新的情况,从而大大的提高了用户体验,以及验证码的安全性。
附图说明
图1为本发明提供的一种基于自动更新的验证码防御方法流程图;
图2为本发明提供的一种基于自动更新的验证码防御***的架构示意图;
图3为本发明提供的攻击模块的工作流程图;
图4为本发明提供的自动更新模块的工作流程图;
图5为本发明提供的普通用户访问示意图;
图6为本发明提供的黑产用户访问示意图;
图7为本发明提供的诱导环境用户访问示意图;
图8为本发明提供的模型库更新示意图;
图9为本发明提供的一种基于自动更新的验证码防御***结构图;
图10为本发明提供的一种可能的设备的硬件结构示意图;
图11为本发明提供的一种可能的计算机可读存储介质的硬件结构示意图。
具体实施方式
下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。以下实施例用于说明本发明,但不用来限制本发明的范围。
图1为本发明提供的一种基于自动更新的验证码防御方法流程图,如图1所示,方法包括:
步骤S100:实时获取各验证形式的验证码的对抗效果退化等级;
需要说明的是,本实施例方法的执行主体可以是具有数据处理、网络通信及程序运行功能的计算机终端设备,例如:电脑、平板电脑等;也可以是具有相同相似功能的服务器设备,还可以是具有相同相似功能的云服务器虚拟设备,本实施例对此不做限制。为了便于理解,本实施例及下述各实施例将以服务器设备为例进行说明。
可以理解的是,上述验证码可以是生成模型输出的,上述生成模型可以是包含有主流的图片分类模型簇、目标检测模型簇、语序识别模型簇和/或语音识别模型簇等;上述生成模型可以用于对九宫格验证码、字符验证码、语序验证码和/或语音验证码等作出识别,本实施例对此不作限制,例如:图片分类模型簇,可以包含vit/resnet/inception等系列的模型,目标检测模型簇可以包含yolov3、yolov4、yolov5等。
还可以理解的是,上述对抗效果退化等级的计算方式可以是管理员设定的,例如:计算个验证码的通过率,并将上述通过率的区间分段设置程对应的等级。
应理解的是,上述对抗效果退化等级是通过统计用户反馈识别到的验证的准确度,上述对抗效果退化等级的统计时间间隔可以是根据用户访问量设定的,例如:1天、2天或者是一周,本实施例对此不作限制。
步骤S200:在所述对抗效果退化等级大于预设阈值时,获取对应的生成模型和历史验证码数据;
需要说明的是,上述预设阈值可以是管理员通过配置设定的,也可以是根据历史记录计算得到的,本实施例对此不作限制。
步骤S300:获取所述生成模型对应的配置文件和训练模型组。
需要说明的是,上述训练模型组可以是用于生成当前生成模型的训练模型组,上述训练模型组可以是根据配置文件从预设模型池中抽取构建的。
可以理解的是,上述预设模型池可以是提前构建的模型池,上述模型池中包括但不限于:主流的图片分类模型簇,目标检测模型簇,语序识别模型簇,语音识别模型簇。每个模型簇中包含不同结构的模型,以增加同簇模型的多样化。
步骤S400:根据所述配置文件、所述训练模型组和所述历史验证码数据更新所述生成模型用以生成验证码。
可以理解的是,基于背景技术中的缺陷,本发明实施例提出了一种基于自动更新的验证码防御方法。本发明实施例通过实时获取各验证形式的验证码的对抗效果退化等级;在上述对抗效果退化等级大于预设阈值时,获取对应的生成模型和历史验证码数据;获取上述生成模型对应的配置文件和训练模型组;根据上述配置文件、上述训练模型组和上述历史验证码数据更新上述生成模型用以生成验证码。本发明通过获取对抗效果退化等级作为触发条件,在上述对抗效果退化等级大于预设阈值时,获取当前对抗验证码的生成模型,通过生成模型获取对应的配置信息,将上述配置信息作为配置基准,并获取第一生成模型生成的历史验证码,通过上述配置基准信息和全部验证码训练得到新的更新生成模型,从而可以实现生成模型的自动更新,并且由于是使用了历史验证码作为训练样本数据,所以可以有效提升生成模型的安全性上得到进一步提升,减少用户手动参与更新的情况,从而大大的提高了用户体验,以及验证码的安全性。
在一种可能的实施例方式中,为了便于理解,所述实时获取各验证形式的验证码的对抗效果退化等级的步骤,包括:
步骤S101:获取所述各验证形式的验证码对应的使用序号;
需要说明的是,上述使用序号可以是上述验证码已被使用的序列号,。
步骤S102:获取所述各验证形式的验证码对应的通过数量;
步骤S103:根据所述使用序号和所述通过数量计算所述各验证形式的验证码对应的对抗效果退化等级。
需要说明的是,服务器中存储有退化效果对照表,上述对照表存储有验证码对抗效果退化等级的对应关系。
在具体实现中,通过获取上述使用序列号即可获得验证码生成的总数,然后根据通过数量和生成的总数计算对应的通过率,然后根据通过率去匹配服务器中的存储的对照表中获取对应的对抗效果退化等级。
本发明实施例中,通过计算验证码的使用通过率获取对应的对抗效果退化等级,从而为本发明方法的后续步骤提供的基础。
在一种可能的实施例方式中,为了便于理解,所述根据所述配置文件、所述训练模型组和所述历史验证码数据更新所述生成模型的步骤,包括:
步骤S401:获取所述配置文件中防御等级,对所述防御等级进行调整,得到调整后的防御等级并更新所述配置文件;
步骤S402:根据更新后的所述配置文件构建损失函数;
步骤S403:根据更新后的所述配置文件迭代所述训练模型组,最小化损失函数,输出并更新所述生成模型。
本发明实施例中,通过调整配置文件中的防御等级,并根据调整后的配置文件重新对训练模型组训练,用以得到新的生成模型,从而对生成模型的安全等级进行自动调整,降低了人员的参与度,进一步提升验证码的安全性。
在一种可能的实施例方式中,为了便于理解,所述所述获取所述生成模型对应的配置文件和训练模型组的步骤,包括:
步骤S301:获取所述生成模型对应的配置文件;
步骤S302:获取预设模型池,根据所述配置文件抽取所述预设模型池中模型构建训练模型组。
需要说明的是,上述预设模型池可以是管理员提升设定好的,也可以时通过抽取历史模型池中的识别模型构建的,本实施例对此不作限制。
可以理解的是上述历史模型池可以是在输出生成模型的过程中构建的,上述历史模型池可以是包含有主流的图片分类模型簇、目标检测模型簇、语序识别模型簇和/或语音识别模型簇等;上述历史模型池中的识别模型可以用于对九宫格验证码、字符验证码、语序验证码和/或语音验证码等作出识别,本实施例对此不作限制,例如:图片分类模型簇,可以包含vit/resnet/inception等系列的模型,目标检测模型簇可以包含yolov3、yolov4、yolov5等。
在一种可能的实施例方式中,为了便于理解,所述获取预设模型池的步骤之前,还包括:
步骤S3021:根据所述配置文件获取识别模型库中对应的识别模型,构建识别模型池;
步骤S3022:获取获取历史验证码数据,根据所述历史验证码数据对所述识别模型池中各识别模型进行迁移训练,更新所述识别模型池。
在一种可能实施例方式中,所述识别模型包括:图片分类模型簇、目标检测模型簇、语序识别模型簇和语音识别模型簇
在一种可能的实施例方式中,所述各验证形式的验证码包括:九宫格验证码、字符验证码、点选验证码和语音验证码。
在一种可能的实施例方式中,为了便于理解,本发明实施例还提供了一种基于自动更新的验证码防御***的***架构图,参见图2,图2为本发明提供的一种基于自动更新的验证码防御***的架构示意图。在上述基于自动更新的验证码防御***的***中包括:模型池、配置模块、攻击模块、评估模块、监控模块和自动更新模块。模型池用于使用初始验证码对识别模型进行训练,并将得到的训练后的模型进行存储;配置模块可以用于配置任务类型,可以用于配置需要生成的对抗验证码类型,例如:九宫格、文字点选或者语音识别以及人脸识别,也用于配置对抗干扰的最大L-p约束(控制人眼/耳可接受的最大干扰噪声),还可用于配置测试评估阈值;攻击模块用于根据配置模块的相关参数输出生成模型,评估模块用于对生成模型生成的对抗验证码进行评估;监控模块用于实时监控线上验证码的识别情况;自动更新模块用于判断是否需要触发生成模型进行更新。
在一种可能的应用场景中包括模型池的构建:模型池是指可用于识别验证码的模型集合,其中包括:主流的图片分类模型簇、目标检测模型簇、语序识别模型簇和/或语音识别模型簇。每个模型簇中包含有不同结构的模型,用以增加同簇模型的多样化。如图片分类模型簇,可以包含vit/resnet/inception等系列的模型,目标检测模型簇可以包含yolov3、yolov4、yolov5,fast-rcnn,ssd等。
其中,模型池中的模型可以是管理员事先选定好的,也可以是在输出生成模型过程中产生的,还可以是管理员根据当前最新的识别模型不断的更新的。
由于初始的未经过训练的模型直接用于参与生成对抗样本以及输出生成模型时,会导致对抗样本质量降低,生成模型最终生成的验证码安全性不稳定,所以并不能直接用于参与生成对抗样本以及输出生成模型的过程中,在本实施例中,首先通过历史验证码素材库中的验证码对上述未经过训练的模型进行训练,从而得到初步训练过的模型。
其中,模型池中的识别模型用于根据需求生成对应的训练模型、攻击模型和验证模型。
在一种可能的应用场景中包括配置模块的配置:配置模块为用户提供了本实施例***中用户交互的入口,为用户提供:任务类型、对抗验证码类型、对抗干扰约束和/或评估阈值。
由于人眼和/或人耳对验证码的识别图与验证码的安全性是一个互相对立、相互制约的两个条件,并且在不同的场景中人对验证码的识别度也不尽相同,故而需要通过配置一个初始的对抗干扰约束来设定人可接受的最大干扰噪声,该最大干扰噪声可以通过在实际生产环境中生成模型输出的验证码识别准确率来进行判断优化。
同时,评估阈值可以是在配置模块上通过用户进行配置的,是作为生成模型生成的对抗样本效果评判的一个标准,计算评估模型对生成模型输出的对抗样本的识别率,评估阈值用于与上述识别率进行比较,以此判断上述生成模型的安全等级。
在一种可能的应用场景中包括攻击模块输出生成模型G的过程:参见图3,图3为本发明提供的攻击模块的工作流程图;其中攻击模块输出生成模型的步骤包括:
步骤S1001:获取配置参数信息,验证码类型,对抗噪声L-P约束;
需要说明的是,上述配置参数信息可以是配置模块中配置的任务类型和/或对抗验证码类型,也可以是管理员根据服务器性能配置的本***的运行环境参数。
可以理解的是,上述验证码类型可以包括:图片验证码、文字点选性验证码、图标点选验证码和/或语音验证码。
步骤S1002:根据验证码类型,从模型池中抽取训练模型A和验证模型B;
需要说明的是,上述训练模型A和验证模型B是模型池中已进行初始训练的模型,上述根据验证码类型抽取模型的过程,可以理解为根据需要生成验证码的类型抽取对应的模型,例如:针对字符验证和图标点选的验证码选择目标检测模型,九宫格验证码选择图标识别模型,针对语音验证码选择语音识别模型。
步骤S1003:加载所有该类型验证码的全部数据,初始化迭代次数iter为0;
可以理解的是,上述全部数据可以是基础验证码数据库可以是预先准备的验证码素材库,也可以是通过人工手动的方式实时从第三方素材库中获取的,本实施例对此不作限制。
步骤S1004:利用GAN在训练出针对识别模型A的对抗验证码生成网络G;
需要说明的是,GAN(Generative Adversarial Nets,对抗式生成网络)是一种基于对抗样本生成技术的深度学习模型。
在具体实现中,GAN根据识别模型A构建对应的生成模型G和损失函数L,迭代运行训练程序,最小化损失函数L,直到生成模型G输出的对抗样本能够误导验证模型B,停止迭代,输出此时的生成模型G。
步骤S1005:利用生成网络G生成1000张针对识别模型A的对抗验证码;
步骤S1006:计算1000张对抗验证码在验证模型B上的准确度acc,在上述准确度acc不小于预设阈值时,设置迭代次数增一,并重新执行步骤S1004;
步骤S1007:在上述准确度acc小于预设阈值时,输出生成模型G。
在上述应用场景中,本发明实施例通过从模型池中抽取训练模型A和验证模型B,并在GAN上迭代识别模型输出满足需求的生成模型G,并通过验证模型B对生成模型G进行验证,在生成模型G生成的对抗验证码符合需求时输出生成模型G;从而将对抗样本技术运用到验证码的攻防对抗场景中,增加了验证码的安全性,并且利用基于GAN的对抗验证码生成架构,解耦对抗验证码的训练和生成工作,减小工程化成本。由于训练模型中包括了目标检测模型、图标识别模型和/或语音识别模型,故而,输出的生成模型G的类型可以根据需求进行自动切换,进而可以满足不同用户的需求。
在一种可能的应用场景中还包括评估模型:评估模型是从模型池中抽取的测试模型C,其中测试模型C是不同于训练模型A和验证模型B的识别模型,评估模型用于识别生成模型G生成的对抗验证码,并计算识别准确。
在一种可能的应用场景中还包括监控模块,上述监控模块用于实时监控线上验证码情况,统计每个验证码形式的验证通过两占比,并进行可视化展示;还用于监控每天中每小时内地通过量环比增长情况,并在通过量环比增长情况超过预设阈值时发送超限报警至自动更新模块。上述预设阈值可以是管理员进行***初始化时设置的。
在一种可能的应用场景中还包括自动更新模块,上述自动更新模块用与在接收到超限报警触发更新,也即如果监控模块发现某一个验证码形式的通过量剧增,则触发自动更新模块进行生成模型G进行更新。
参见图4,图4为本发明提供的自动更新模块的工作流程图。
在一种可能的应用场景中自动更新模块的工作流程包括:
步骤S2001:监控并统计各个验证形式的通过量和通过量的环比增长;
步骤S2002:在通过量环比增长超过阈值时,获取当前的生成模型和配置参数;
步骤S2003:将所述生成模型和配置参数提交训练模块中重新训练。
在上述应用场景中,本发明实施例通过监控各个验证形式的通过量和通过量环比增长,从而判断出生成模型生程的对抗验证码的对抗效果,在通过量环比增长超过阈值时,判定生成模型生成的对抗验证码的对抗效果出现严重退化,将生成模型和配置参数提交到训练模型中,更新配置模块中配置参数信息,从而使得生成模型可以应对对不同的破解模型,并在出现对抗效果退化时自动更新生成模型,无需人工干扰,降低人工参与度,增加了验证码的安全性。
在一种可能的应用场景中包括普通用户访问目标***的场景,参见图5,图5位本发明提供的普通用户访问示意图。图中,用户A为正常的普通用户,用户A通过客户端访问部署在云端的目标***,云端部署有本实施基于自动更新的验证码防御***和目标***;其中访问过程可以为:用户A通过客户端发出访问请求至目标***,上述访问被转发至基于自动更新的验证码防御***,基于自动更新的验证码防御***输出对抗验证码,用户A识别对抗验证码并根据基于自动更新的验证码防御***提示输入对抗验证码,基于自动更新的验证码防御***在判断用户A输出入验证码正确后允许用户A继续访问目标***,并将访问请求转发至目标***。
在一种可能的应用场景中,用户A被基于自动更新的验证码防御***标记为正常用户,用户A出现一天内在输入其识别的对抗验证码时多次输入错误的答案,基于自动更新的验证码防御***记录判定对抗干扰的最大L-p约束值过大,基于自动更新的验证码防御***自动降低对抗干扰的最大L-p约束值,更新配置模块中配置参数,并重新训练生成模型,进而保证正常用户可以非常容易的识别出生成模型生成的验证码,提高验证码的可用性。
在一种可能的应用场景中,基于自动更新的验证码防御***记录每个被标记为正常用户的验证码通过率,在出现十天内通过率为100%的情况时,判定对抗干扰的最大L-p约束值过小,基于自动更新的验证码防御***自动增加对抗干扰的最大L-p约束值,更新配置模块中配置参数,并重新训练生成模型,进而增加生成模型生成的验证码的安全性。
在一种可能的应用场景中包括黑产用户访问目标***的情况,参见图6,图6位本发明提供的黑产用户访问示意图。图中,黑产B为异常的黑产用户,黑产B通过客户端访问部署在云端的目标***,云端部署有本实施基于自动更新的验证码防御***和目标***;其中访问过程可以为:黑产用户B通过客户段发出访问请求至目标***,上述访问请求被转发至基于自动更新的验证码防御***,基于自动更新的验证码防御***输出对抗验证码,黑产用户B识别对抗验证码并根据基于自动更新的验证码防御***提示输入对抗验证码,基于自动更新的验证码防御***在判断黑产用户B输入验证码异常后禁止黑产用户B继续访问目标***。
在一种可能的应用场景中包括正常用户和黑产用户同时访问目标***的情况。参见图7,图7为本发明提供的诱导环境用户访问示意图。图中,用户A为正常访问用户,黑产B为异常访问用户,目标***、诱导***和基于自动更新的验证码防御***部署在云服务器端,用户A和黑产B通过客户端访问部署在云端的目标***,其中访问过程可以为:用户A和黑产B通过客户端发出访问请求至目标***,上述访问被转发至基于自动更新的验证码防御***,基于自动更新的验证码防御***输出对抗验证码,用户A和黑产B识别对抗验证码并根据基于自动更新的验证码防御***提示输入对抗验证码,基于自动更新的验证码防御***在判断用户A输出入验证码正确后允许用户A继续访问目标***,并将访问请求转发至目标***,基于自动更新的验证码防御***在判断黑产B输出入验证码异常后禁止黑产用户B继续访问目标***。
在一种可能的应用场景中,黑产用户B访问目标***时,基于自动更新的验证码防御***监测黑产用户B全部验证码的通过率以及输入验证码的时间,在上述通过率大于设定阈值时以及上述时间在正常范围时,判定对抗干扰的最大L-p约束值过小,基于自动更新的验证码防御***自动增加对抗干扰的最大L-p约束值,更新配置模块中配置参数,并重新训练生成模型并更新生成模型,继续检测黑产用户B的验证码通过率以及验证码输入时间,在黑产用户B的验证码的通过率出现明显下降时,判定黑产用户B为异常用户,将黑产用户B的IP地址和账号设定为异常用户;并在黑产用户B通过验证码验证时,将黑产用户的访问请求转发至诱导***,其中诱导***中每个模块的访问需要再次进行使用验证码进行验证,基于自动更新的验证码防御***监测黑产用户B对不同验证码识别的识别情况进行自学习,进一步对生成模型进行优化,从而有效的应对无休无止的黑产攻击,提高验证码的安全性。
可以理解的是,上述通过率对应的设定阈值可以是通过计算所有用户平均通过率得到的,也可以是管理员初始化时设定的,一般可以为:90%、85%或者80%。
应理解的是,上述时间对应的正常范围可以是统计所有用户输入验证码的时间,也可以是管理员初始化时设定的,一般可以为:10s、20s或者30s。
在一种可能的应用场景中包括模型库自动更新的情况。参见图8,图8为本发明提供的模型库更新示意图。图中,基于自动更新的验证码防御***是部署在云端的服务器端,客户A、客户B。。。客户N为部署有基于自动更新的验证码防御***客户端的客户服务器。由于黑产用户用于攻击验证码的模型也是在不停迭代更新的,而客户使用本发明提供的基于自动更新的验证码防御***时,可能会考虑到成本因素会选择简化部署,其简化部署的形式一般为:客户端部署有生成模型、数据发送模块和数据接收模块,云服务器部署有完整的基于自动更新的验证码防御***。
在一种可能的应用场景中,云服务器段部署的基于自动更新的验证码防御***通过与客户端进行数据通信,获取客户端中验证码的情况,判断是否出现验证码对抗效果是否出现退化情况,并在出现退化时更新客户端中生成模型。
图9为本发明实施例提供的一种基于自动更新的验证码防御***结构图,如图9所示,一种基于自动更新的验证码防御***,包括效果获取模块100、数据获取模块200、模型获取模块300和模型更新模块400,其中:
效果获取模块100,用于实实时获取各验证形式的验证码的对抗效果退化等级;
数据获取模块200,用于在所述对抗效果退化等级大于预设阈值时,获取对应的生成模型和历史验证码数据;
模型获取模块300,用于获取所述生成模型对应的配置文件和训练模型组;
模型更新模块400,用于根据所述配置文件、所述训练模型组和所述历史验证码数据更新所述生成模型用以生成验证码。
本发明实施例提供一种基于自动更新的验证码防御***,通过实时获取各验证形式的验证码的对抗效果退化等级;在上述对抗效果退化等级大于预设阈值时,获取对应的生成模型和历史验证码数据;获取上述生成模型对应的配置文件和训练模型组;根据上述配置文件、上述训练模型组和上述历史验证码数据更新上述生成模型用以生成验证码。本发明通过获取对抗效果退化等级作为触发条件,在上述对抗效果退化等级大于预设阈值时,获取当前对抗验证码的生成模型,通过生成模型获取对应的配置信息,将上述配置信息作为配置基准,并获取第一生成模型生成的历史验证码,通过上述配置基准信息和全部验证码训练得到新的更新生成模型,从而可以实现生成模型的自动更新,并且由于是使用了历史验证码作为训练样本数据,所以可以有效提升生成模型的安全性上得到进一步提升,减少用户手动参与更新的情况,从而大大的提高了用户体验,以及验证码的安全性。
可以理解的是,本发明提供的一种基于自动更新的验证码防御***与前述各实施例提供的基于自动更新的验证码防御方法相对应,基于自动更新的验证码防御***的相关技术特征可参考基于自动更新的验证码防御方法的相关技术特征,在此不再赘述。
请参阅图10,图10为本发明实施例提供的设备的实施例示意图。如图10所示,本发明实施例提了一种设备,包括存储器1310、处理器1320及存储在存储器1310上并可在处理器1320上运行的计算机程序1311,处理器1320执行计算机程序1311时实现以下步骤:实时获取各验证形式的验证码的对抗效果退化等级;在上述对抗效果退化等级大于预设阈值时,获取对应的生成模型和历史验证码数据;获取上述生成模型对应的配置文件和训练模型组;根据上述配置文件、上述训练模型组和上述历史验证码数据更新上述生成模型用以生成验证码。
可以理解的是,本发明提供的一种设备,用于执行前述各实施例提供的基于自动更新的验证码防御方法相对应,其相关技术特征可参考基于自动更新的验证码防御方法的相关技术特征,在此不再赘述。
请参阅图11,图11为本发明提供的一种计算机可读存储介质的实施例示意图。如图11所示,本实施例提供了一种计算机可读存储介质1400,其上存储有计算机程序1411,该计算机程序1411被处理器执行时实现如下步骤:实时获取各验证形式的验证码的对抗效果退化等级;在上述对抗效果退化等级大于预设阈值时,获取对应的生成模型和历史验证码数据;获取上述生成模型对应的配置文件和训练模型组;根据上述配置文件、上述训练模型组和上述历史验证码数据更新上述生成模型用以生成验证码。
本发明提供一种基于自动更新的验证码防御方法、***、设备及存储介质,通过实时获取各验证形式的验证码的对抗效果退化等级;在上述对抗效果退化等级大于预设阈值时,获取对应的生成模型和历史验证码数据;获取上述生成模型对应的配置文件和训练模型组;根据上述配置文件、上述训练模型组和上述历史验证码数据更新上述生成模型用以生成验证码。本发明通过获取对抗效果退化等级作为触发条件,在上述对抗效果退化等级大于预设阈值时,获取当前对抗验证码的生成模型,通过生成模型获取对应的配置信息,将上述配置信息作为配置基准,并获取第一生成模型生成的历史验证码,通过上述配置基准信息和全部验证码训练得到新的更新生成模型,从而可以实现生成模型的自动更新,并且由于是使用了历史验证码作为训练样本数据,所以可以有效提升生成模型的安全性上得到进一步提升,减少用户手动参与更新的情况,从而大大的提高了用户体验,以及验证码的安全性。
需要说明的是,在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详细描述的部分,可以参见其它实施例的相关描述。
本领域内的技术人员应明白,本发明的实施例可提供为方法、***、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(***)、和计算机程序产品的流程图和/或方框图来描述。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式计算机或者其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包括这些改动和变型在内。
Claims (9)
1.一种基于自动更新的验证码防御方法,其特征在于,所述方法包括:
实时获取各验证形式的验证码的对抗效果退化等级,其中所述实时获取各验证形式的验证码的对抗效果退化等级的步骤包括:获取所述各验证形式的验证码对应的使用序号,得到验证码生成的总数;获取所述各验证形式的验证码对应的通过数量;根据所述通过数量和所述验证码生成的总数计算所述各验证形式的验证码的通过率,得到对抗效果退化等级;
在所述对抗效果退化等级大于预设阈值时,获取对应的生成模型和历史验证码数据;
获取所述生成模型对应的配置文件和训练模型组;
根据所述配置文件、所述训练模型组和所述历史验证码数据更新所述生成模型用以生成验证码。
2.根据权利要求1所述的基于自动更新的验证码防御方法,其特征在于,所述根据所述配置文件、所述训练模型组和所述历史验证码数据更新所述生成模型的步骤,包括:
获取所述配置文件中防御等级,对所述防御等级进行调整,得到调整后的防御等级并更新所述配置文件;
根据更新后的所述配置文件构建损失函数;
根据更新后的所述配置文件迭代所述训练模型组,最小化损失函数,输出并更新所述生成模型。
3.根据权利要求1所述的基于自动更新的验证码防御方法,其特征在于,所述获取所述生成模型对应的配置文件和训练模型组的步骤,包括:
获取所述生成模型对应的配置文件;
获取预设模型池,根据所述配置文件抽取所述预设模型池中模型构建训练模型组。
4.根据权利要求3所述的基于自动更新的验证码防御方法,其特征在于,所述获取预设模型池的步骤之前,还包括:
根据所述配置文件获取识别模型库中对应的识别模型,构建识别模型池;
获取获取历史验证码数据,根据所述历史验证码数据对所述识别模型池中各识别模型进行迁移训练,更新所述识别模型池。
5.根据权利要求4所述的基于自动更新的验证码防御方法,其特征在于,所述识别模型包括:图片分类模型簇、目标检测模型簇、语序识别模型簇和语音识别模型簇。
6.根据权利要求1所述的基于自动更新的验证码防御方法,其特征在于,所述各验证形式的验证码包括:九宫格验证码、字符验证码、点选验证码和语音验证码。
7.一种基于自动更新的验证码防御***,其特征在于,包括
效果获取模块,用于实实时获取各验证形式的验证码的对抗效果退化等级,其中所述实时获取各验证形式的验证码的对抗效果退化等级的步骤包括:获取所述各验证形式的验证码对应的使用序号,得到验证码生成的总数;获取所述各验证形式的验证码对应的通过数量;根据所述通过数量和所述验证码生成的总数计算所述各验证形式的验证码的通过率,得到对抗效果退化等级;
数据获取模块,用于在所述对抗效果退化等级大于预设阈值时,获取对应的生成模型和历史验证码数据;
模型获取模块,用于获取所述生成模型对应的配置文件和训练模型组;
模型更新模块,用于根据所述配置文件、所述训练模型组和所述历史验证码数据更新所述生成模型用以生成验证码。
8.一种设备,其特征在于,包括存储器、处理器,所述处理器用于执行存储器中存储的计算机管理类程序时实现如权利要求1-6任一项所述的基于自动更新的验证码防御方法的步骤。
9.一种计算机可读存储介质,其特征在于,其上存储有计算机管理类程序,所述计算机管理类程序被处理器执行时实现如权利要求1-6任一项所述的基于自动更新的验证码防御方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210579836.6A CN115001771B (zh) | 2022-05-25 | 2022-05-25 | 基于自动更新的验证码防御方法、***、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210579836.6A CN115001771B (zh) | 2022-05-25 | 2022-05-25 | 基于自动更新的验证码防御方法、***、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115001771A CN115001771A (zh) | 2022-09-02 |
CN115001771B true CN115001771B (zh) | 2024-01-26 |
Family
ID=83028320
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210579836.6A Active CN115001771B (zh) | 2022-05-25 | 2022-05-25 | 基于自动更新的验证码防御方法、***、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115001771B (zh) |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108763915A (zh) * | 2018-05-18 | 2018-11-06 | 百度在线网络技术(北京)有限公司 | 建立验证码生成模型以及生成验证码的方法、装置 |
CN109600336A (zh) * | 2017-09-30 | 2019-04-09 | 武汉极意网络科技有限公司 | 存储设备、验证码应用方法和装置 |
CN109660343A (zh) * | 2019-01-17 | 2019-04-19 | 平安科技(深圳)有限公司 | 令牌更新方法、装置、计算机设备及存储介质 |
WO2020015140A1 (zh) * | 2018-07-18 | 2020-01-23 | 平安科技(深圳)有限公司 | 旅客评级模型生成方法、装置、计算机设备和存储介质 |
CN110909807A (zh) * | 2019-11-26 | 2020-03-24 | 深圳市信联征信有限公司 | 基于深度学习的网络验证码识别方法、装置及计算机设备 |
US10614382B1 (en) * | 2019-07-12 | 2020-04-07 | Capital One Services, Llc | Computer-based systems and methods configured to utilize automating deployment of predictive models for machine learning tasks |
CN111460426A (zh) * | 2020-04-02 | 2020-07-28 | 武汉大学 | 基于对抗演化框架的抗深度学习文本验证码生成***及方法 |
CN112115452A (zh) * | 2019-06-20 | 2020-12-22 | 北京京东尚科信息技术有限公司 | 用于生成验证码图像的方法和装置 |
CN114036495A (zh) * | 2022-01-11 | 2022-02-11 | 北京顶象技术有限公司 | 一种更新私有化部署验证码***的方法及装置 |
-
2022
- 2022-05-25 CN CN202210579836.6A patent/CN115001771B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109600336A (zh) * | 2017-09-30 | 2019-04-09 | 武汉极意网络科技有限公司 | 存储设备、验证码应用方法和装置 |
CN108763915A (zh) * | 2018-05-18 | 2018-11-06 | 百度在线网络技术(北京)有限公司 | 建立验证码生成模型以及生成验证码的方法、装置 |
WO2020015140A1 (zh) * | 2018-07-18 | 2020-01-23 | 平安科技(深圳)有限公司 | 旅客评级模型生成方法、装置、计算机设备和存储介质 |
CN109660343A (zh) * | 2019-01-17 | 2019-04-19 | 平安科技(深圳)有限公司 | 令牌更新方法、装置、计算机设备及存储介质 |
CN112115452A (zh) * | 2019-06-20 | 2020-12-22 | 北京京东尚科信息技术有限公司 | 用于生成验证码图像的方法和装置 |
US10614382B1 (en) * | 2019-07-12 | 2020-04-07 | Capital One Services, Llc | Computer-based systems and methods configured to utilize automating deployment of predictive models for machine learning tasks |
CN110909807A (zh) * | 2019-11-26 | 2020-03-24 | 深圳市信联征信有限公司 | 基于深度学习的网络验证码识别方法、装置及计算机设备 |
CN111460426A (zh) * | 2020-04-02 | 2020-07-28 | 武汉大学 | 基于对抗演化框架的抗深度学习文本验证码生成***及方法 |
CN114036495A (zh) * | 2022-01-11 | 2022-02-11 | 北京顶象技术有限公司 | 一种更新私有化部署验证码***的方法及装置 |
Non-Patent Citations (2)
Title |
---|
O. Tkachuk ; M.B. Dwyer ; C.S. Pasareanu ; .Automated environment generation for software model checking.《18th IEEE International Conference on Automated Software Engineering》.2003,全文. * |
基于局部分块和模型更新的视觉跟踪算法;侯志强;黄安奇;余旺盛;刘翔;;《电子与信息学报》;第37卷(第06期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN115001771A (zh) | 2022-09-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10516698B2 (en) | Honeypot computing services that include simulated computing resources | |
EP3872665A1 (en) | Cyber digital twin simulator for security controls requirements | |
US20210021636A1 (en) | Automated Real-time Multi-dimensional Cybersecurity Threat Modeling | |
US10320841B1 (en) | Fraud score heuristic for identifying fradulent requests or sets of requests | |
CN103065088B (zh) | 基于计算机用户的裁决检测计算机安全威胁的***和方法 | |
CN109861985A (zh) | 基于风险等级划分的ip风控方法、装置、设备和存储介质 | |
EP3789896A1 (en) | Method and system for managing security vulnerability in host system using artificial neural network | |
KR101796205B1 (ko) | 보안 강화를 위해 입력된 명령어 학습 기반 이상 사용자를 탐지하는 서버 접근 통제 시스템 | |
CN109690545A (zh) | Plc虚拟补丁和安全上下文的自动分发 | |
KR102419451B1 (ko) | 인공지능 기반 위협 분석 자동화 시스템 및 방법 | |
RU2728505C1 (ru) | Система и способ обеспечения информационной безопасности на основании антропной защиты | |
KR102230441B1 (ko) | 보안 취약점 진단 결과를 기반으로 보안 조치 보고서를 생성하는 방법, 장치 및 프로그램 | |
CN111510339A (zh) | 一种工业互联网数据监测方法和装置 | |
US11290486B1 (en) | Allocating defective computing resources for honeypot services | |
US20210075812A1 (en) | A system and a method for sequential anomaly revealing in a computer network | |
CN115001771B (zh) | 基于自动更新的验证码防御方法、***、设备及存储介质 | |
RU2716735C1 (ru) | Система и способ отложенной авторизации пользователя на вычислительном устройстве | |
KR20210046423A (ko) | 머신러닝 기반 보안관제 장치 및 방법 | |
CN112769815B (zh) | 一种智能工控安全监控与防护方法和*** | |
CN112422573B (zh) | 攻击路径还原方法、装置、设备及存储介质 | |
CN114840839A (zh) | 基于对抗学习的验证码生成方法、***、设备及存储介质 | |
CN114006735A (zh) | 一种数据保护方法、装置、计算机设备和存储介质 | |
CN114039837A (zh) | 告警数据处理方法、装置、***、设备和存储介质 | |
CN111917801A (zh) | 私有云环境下基于Petri网的用户行为认证方法 | |
CN113542204A (zh) | 防护规则生成方法、装置和存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |