CN111931188A - 登陆场景下漏洞测试方法及系统 - Google Patents

登陆场景下漏洞测试方法及系统 Download PDF

Info

Publication number
CN111931188A
CN111931188A CN202010812880.8A CN202010812880A CN111931188A CN 111931188 A CN111931188 A CN 111931188A CN 202010812880 A CN202010812880 A CN 202010812880A CN 111931188 A CN111931188 A CN 111931188A
Authority
CN
China
Prior art keywords
login
request message
scene
message
response message
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.)
Granted
Application number
CN202010812880.8A
Other languages
English (en)
Other versions
CN111931188B (zh
Inventor
范鑫禹
吕博良
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Industrial and Commercial Bank of China Ltd ICBC
Original Assignee
Industrial and Commercial Bank of China Ltd ICBC
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Industrial and Commercial Bank of China Ltd ICBC filed Critical Industrial and Commercial Bank of China Ltd ICBC
Priority to CN202010812880.8A priority Critical patent/CN111931188B/zh
Publication of CN111931188A publication Critical patent/CN111931188A/zh
Application granted granted Critical
Publication of CN111931188B publication Critical patent/CN111931188B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • G06F21/577Assessing vulnerabilities and evaluating computer system security
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/35Clustering; Classification
    • G06F16/353Clustering; Classification into predefined classes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/03Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
    • G06F2221/033Test or assess software

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Computing Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Biophysics (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Biomedical Technology (AREA)
  • Computational Linguistics (AREA)
  • Evolutionary Computation (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Mathematical Physics (AREA)
  • Databases & Information Systems (AREA)
  • Computer And Data Communications (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明提供的一种登陆场景下漏洞测试方法及系统,可应用于信息安全技术领域,首先通过转发所述登陆场景请求报文和所述验证码请求报文至目标服务器,以获得第一响应报文和对应的包括登陆验证码的验证文件;然后解析所述验证文件,重构得到重构请求报文,并发送至目标服务器,以获得对应的第二响应报文;最后比对所述第一响应报文和所述第二响应报文,若比对不通过,则该测试终端的重放漏洞测试通过。可以看出,本发明通过从报文库中识别登陆场景报文,同时还可识别出不同种类的验证码机制并解析验证码(包括在验证文件中),最后通过智能对比报文方式决策重构报文是否登陆成功,进而测试出测试终端的重放漏洞。

Description

登陆场景下漏洞测试方法及系统
技术领域
本发明涉及软件技术领域,尤其涉及一种登陆场景下漏洞测试方法及系统。
背景技术
本部分旨在为权利要求书中陈述的本发明实施例提供背景或上下文。此处的描述不因为包括在本部分中就承认是现有技术。
登录场景作为一个web应用的用户入口,起到至关紧要的作用,主要面临登陆身份冒用和资源控制不足风险。若网站的登录功能存在漏洞,那么网站所有用户的账号密码以及个人身份信息都将面临巨大的风险。
登陆身份冒用主要通过登陆重放漏洞这种攻击手段实现,攻击者通过网络监听、植入木马等方式截获到被害者发送到认证服务器的登陆请求报文,将报文进行一定的处理后,再把它重新发给认证服务器,从而达到欺骗认证服务器的目的,进而伪装成被害者登陆应用系统并代替被害者做出一些操作。此种攻击手段会不断恶意或欺诈性的重复一个有效的数据传输,在应用服务器的身份认证过程中,破坏认证的安全性。
发明内容
为了解决上述问题的至少一个,本发明实施例提供了一种登陆场景下漏洞测试方法及系统。
本发明实施例提供了一种登陆场景下漏洞测试方法,包括:
接收测试终端发送的请求报文,所述请求报文的类型包括验证码请求报文和登陆场景请求报文;
转发所述登陆场景请求报文和所述验证码请求报文至目标服务器,以获得第一响应报文和对应的包括登陆验证码的验证文件;
解析所述验证文件,并将所述登陆场景请求报文和解析得到的所述登陆验证码组合重构得到重构请求报文,并发送至目标服务器,以获得对应的第二响应报文;
比对所述第一响应报文和所述第二响应报文,若比对不通过,则该测试终端的重放漏洞测试通过。
在优选的实施例中,还包括:
根据所述请求报文的分词特征和登陆行为分布特征,确定每个所述请求报文的场景类型,所述场景类型包括登陆场景和非登陆场景。
在优选的实施例中,所述根据所述请求报文的分词特征和登陆行为分布特征,确定每个所述请求报文的类型,包括:
将所述请求报文的请求头和请求体以字符为分词的最小单位进行分词,得到分词集合;
通过设定算法计算分词集合得到请求的分词特征和登陆类型分布特征;
对已标记分词特征和登陆类型分布特征的所述请求报文进行分词特征和登陆类型分布特征的特征向量映射,得到映射特征向量集;
将所述映射特征向量输入到预设的机器学习分类模型,输出请求报文的场景类型标识。
在优选的实施例中,还包括:
建立所述机器学习分类模型;
利用多个已标定场景类型标识的映射特征向量集组成的训练集训练所述机器学习分类模型。
在优选的实施例中,所述验证文件为图像,所述解析所述验证文件,包括:
对所述验证文件进行切割,得到所述登陆验证码的多个字符图片;
将每个所述字符图片输入至预设的深度卷积神经网络,得到识别出的登陆验证码。
在优选的实施例中,还包括:
建立所述深度卷积神经网络;
利用多个已标记字符的字符图片组成的训练集训练所述深度卷积神经网络。
在优选的实施例中,还包括:
采用中值滤波对所述验证文件进行处理;
对中值滤波后的所述验证文件进行二值化处理。
在优选的实施例中,所述比对所述第一响应报文和所述第二响应报文,包括:
判断所述第二响应报文中是否包括登陆凭证;
若不包括,判断所述第一响应报文和所述第二响应报文的格式和大小是否一致;
若一致,则计算所述第一响应报文和所述第二响应报文的差异度,若所述差异度大于等于设定阈值,则比对不通过。
在优选的实施例中,还包括:
查询所述登陆凭证是否包括在所述目标服务器中,若否则排除资源控制风险。
本发明实施例提供了一种登陆场景下漏洞测试系统,包括:
接收模块,接收测试终端发送的请求报文,所述请求报文的类型包括验证码请求报文和登陆场景请求报文;
转发模块,转发所述登陆场景请求报文和所述验证码请求报文至目标服务器,以获得第一响应报文和对应的包括登陆验证码的验证文件;
解析模块,解析所述验证文件,并将所述登陆场景请求报文和解析得到的所述登陆验证码组合重构得到重构请求报文,并发送至目标服务器,以获得对应的第二响应报文;
比对模块,比对所述第一响应报文和所述第二响应报文,若比对不通过,则该测试终端的重放漏洞测试通过。
在优选的实施例中,还包括:
场景类型确定模块,根据所述请求报文的分词特征和登陆行为分布特征,确定每个所述请求报文的场景类型,所述场景类型包括登陆场景和非登陆场景。
在优选的实施例中,所述场景类型确定模块,包括:
分词单元,将所述请求报文的请求头和请求体以字符为分词的最小单位进行分词,得到分词集合;
特征计算单元,通过设定算法计算分词集合得到请求的分词特征和登陆类型分布特征;
映射单元,对已标记分词特征和登陆类型分布特征的所述请求报文进行分词特征和登陆类型分布特征的特征向量映射,得到映射特征向量集;
模型输入单元,将所述映射特征向量输入到预设的机器学习分类模型,输出请求报文的场景类型标识。
在优选的实施例中,还包括:
模型建立模块,建立所述机器学习分类模型;
利用多个已标定场景类型标识的映射特征向量集组成的训练集训练所述机器学习分类模型。
在优选的实施例中,所述验证文件为图像,所述解析模块,包括:
对所述验证文件进行切割,得到所述登陆验证码的多个字符图片;
将每个所述字符图片输入至预设的深度卷积神经网络,得到识别出的登陆验证码。
在优选的实施例中,还包括:
深度卷积神经网络建立模块,建立所述深度卷积神经网络;
训练模块,利用多个已标记字符的字符图片组成的训练集训练所述深度卷积神经网络。
在优选的实施例中,还包括:
中值滤波处理模块,采用中值滤波对所述验证文件进行处理;
二值化处理模块,对中值滤波后的所述验证文件进行二值化处理。
在优选的实施例中,所述比对模块,包括:
第一判断单元,判断所述第二响应报文中是否包括登陆凭证;
第二判断单元,若不包括,判断所述第一响应报文和所述第二响应报文的格式和大小是否一致;
计算单元,若一致,则计算所述第一响应报文和所述第二响应报文的差异度,若所述差异度大于等于设定阈值,则比对不通过。
在优选的实施例中,还包括:
查询模块,查询所述登陆凭证是否包括在所述目标服务器中,若否则排除资源控制风险。
本发明实施例提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述第一方面任一所述方法。
本发明实施例提供了一种计算机可读存储介质,所述计算机可读存储介质存储有执行上述第一方面任一所述方法的计算机程序。
综上所述,本发明提供的一种登陆场景下漏洞测试方法及系统,首先通过转发所述登陆场景请求报文和所述验证码请求报文至目标服务器,以获得第一响应报文和对应的包括登陆验证码的验证文件;然后解析所述验证文件,并将所述登陆场景请求报文和解析得到的所述登陆验证码组合重构得到重构请求报文,并发送至目标服务器,以获得对应的第二响应报文;最后比对所述第一响应报文和所述第二响应报文,若比对不通过,则该测试终端的重放漏洞测试通过。可以看出,本发明通过从报文库中识别登陆场景报文,同时还可识别出不同种类的验证码机制并解析验证码(包括在验证文件中),最后通过智能对比报文方式决策重构报文是否登陆成功,进而测试出测试终端的重放漏洞。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
图1为本发明实施例中提供的一种登陆场景下漏洞测试方法流程示意图;
图2为本发明实施例中提供的一种具体场景流程示意图;
图3为本发明实施例中提供的一种登陆场景下漏洞测试系统框图。
图4为适用于实现本发明中的登陆场景下漏洞测试方法的计算机设备结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
下面参考本发明的若干代表性实施方式,详细阐释本发明的原理和精神。
虽然本发明提供了如下述实施例或附图所示的方法操作步骤或装置结构,但基于常规或者无需创造性的劳动在所述方法或装置中可以包括更多或者更少的操作步骤或模块单元。在逻辑性上不存在必要因果关系的步骤或结构中,这些步骤的执行顺序或装置的模块结构不限于本发明实施例或附图所示的执行顺序或模块结构。所述的方法或模块结构的在实际中的装置或终端产品应用时,可以按照实施例或者附图所示的方法或模块结构进行顺序执行或者并行执行。
需要说明的是,本发明可应用于信息安全技术领域,当然也可以用于人工智能技术领域或其他领域,本发明对此不做限制。
在现有技术中,登录场景作为一个web应用的用户入口,起到至关紧要的作用,主要面临登陆身份冒用和资源控制不足风险。若网站的登录功能存在漏洞,那么网站所有用户的账号密码以及个人身份信息都将面临巨大的风险。
图1示出了本发明实施例中一种登陆场景下漏洞测试方法,包括:
S1:接收测试终端发送的请求报文,所述请求报文的类型包括验证码请求报文和登陆场景请求报文;
S2:转发所述登陆场景请求报文和所述验证码请求报文至目标服务器,以获得第一响应报文和对应的包括登陆验证码的验证文件;
S3:解析所述验证文件,并将所述登陆场景请求报文和解析得到的所述登陆验证码组合重构得到重构请求报文,并发送至目标服务器,以获得对应的第二响应报文;
S4:比对所述第一响应报文和所述第二响应报文,若比对不通过,则该测试终端的重放漏洞测试通过。
本发明提供的一种登陆场景下漏洞测试方法,首先通过转发所述登陆场景请求报文和所述验证码请求报文至目标服务器,以获得第一响应报文和对应的包括登陆验证码的验证文件;然后解析所述验证文件,并将所述登陆场景请求报文和解析得到的所述登陆验证码组合重构得到重构请求报文,并发送至目标服务器,以获得对应的第二响应报文;最后比对所述第一响应报文和所述第二响应报文,若比对不通过,则该测试终端的重放漏洞测试通过。可以看出,本发明通过从报文库中识别登陆场景报文,同时还可识别出不同种类的验证码机制并解析验证码(包括在验证文件中),最后通过智能对比报文方式决策重构报文是否登陆成功,进而测试出测试终端的重放漏洞。
在一些实施例中,还包括:
S01:根据所述请求报文的分词特征和登陆行为分布特征,确定每个所述请求报文的场景类型,所述场景类型包括登陆场景和非登陆场景。
该实施例中,具体的,步骤S01具体包括:
S011:将所述请求报文的请求头和请求体以字符为分词的最小单位进行分词,得到分词集合;
S012:通过设定算法计算分词集合得到请求的分词特征和登陆类型分布特征;
S013:对已标记分词特征和登陆类型分布特征的所述请求报文进行分词特征和登陆类型分布特征的特征向量映射,得到映射特征向量集;
S014:将所述映射特征向量输入到预设的机器学习分类模型,输出请求报文的场景类型标识。
此外,在一些实施例中,还包括:
S021:建立所述机器学习分类模型;
S022:利用多个已标定场景类型的请求报文组成的训练集训练所述机器学习分类模型。
进一步的,所述验证文件为图像,所述解析所述验证文件,包括:
对所述验证文件进行切割,得到所述登陆验证码的多个字符图片;
将每个所述字符图片输入至预设的深度卷积神经网络,得到识别出的登陆验证码。
举例而言,验证码为一张长方形图片,图片内包含验证码内容,如“EQ26”这种,为识别图片上的每个字符需先将该验证码图片进行切割,此处可以用等距法、水滴法等,将一张包含“EQ26”内容的图片切割为“E”“Q”“2”“6”四张图片送入深度学习模型,模型识别EQ26四个字符并拼接。
在一些实施例中,还包括:
建立所述深度卷积神经网络;
利用多个已标记字符的字符图片组成的训练集训练所述深度卷积神经网络。
此外,一些实施例中,还包括:
采用中值滤波对所述验证文件进行处理;
对中值滤波后的所述验证文件进行二值化处理。
举例而言,首先将请求头URL和请求体以字符为分词的最小单位进行n-gram分词,随后通过TF-IDF算法计算得到请求的分词特征;登陆行为分布字典包含但不限于[login,loginname,password]等登陆行为相关内容,将标记好的登陆报文与其他报文一起进行分词特征、登陆类型分布特征的特征向量映射,并送入机器学习分类,如梯度下降树算法(GBDT)算法模型、随机森林(Random Forest)等,进行分类识别,识别类型包括登陆类、非登陆类测试场景,并将识别结果送入105验证码识别模块,便于该单元基于识别结果构造测试请求。
之后重发登陆报文前的验证码获取请求拿到新的图片验证码,采用滤波和等距切割方式对验证码图片进行预处理,并将预处理后的图片使用深度卷积神经网络进行字符级的识别,并将识别结果进行组合,以从而读取图片验证码结果。本方法中采用中值滤波对图像进行预处理,把输入的数字图像中一点的值用该点的一个邻域中各点值的中值代替,让周围的像素值接近的真实值,从而消除孤立的噪声点。然后进行二值化处理将图像上的像素点的灰度值设置为0或255使图像呈现出明显的黑白效果,减少使图像中数据量,凸显出目标的轮廓,最后对图片进行等宽切割,以切除验证码中的单个字符,将切割后的数据送入卷积神经网络进行识别。
在一些优选的实施例中,所述比对所述第一响应报文和所述第二响应报文,包括:
判断所述第二响应报文中是否包括登陆凭证;
若不包括,判断所述第一响应报文和所述第二响应报文的格式和大小是否一致;
若一致,则计算所述第一响应报文和所述第二响应报文的差异度,若所述差异度大于等于设定阈值,则比对不通过。
返回报文格式常见的有jason,html,jsp等其报文长度和大小也不一样,该步骤采用递进的方式进行排查,首先排查两次返回的报文格式是否相同,若不同则说明两次返回的内容不同,若相同在判别报文大小即报文长度,若上述两个环节均无差异则进入报文差异度评判。具体的,首先,判断测试响应报文中是否包含登陆凭证,包括但不限于session、cookie等信息,若存在,则直接判断重放成功;若不存在则判断原始响应报文和测试响应报文的格式及大小,如报文的格式及大小不一致不存在风险;如报文的格式及大小一致,则根据具体报文格式计算差异度:对于HTML等结构化响应报文,根据原始响应报文和测试响应报文的DOM树和CSS-DOM树的树编辑距离计算差异度,如差异度小于给定阈值则存在风险;对于XML等半结构化响应报文,根据原始响应报文和测试响应报文的DOM树的树编辑距离计算差异度,如差异度小于给定阈值则存在风险;对于字符串、二进制数据等非结构化响应报文,根据原始响应报文和测试响应报文的SimHash值计算差异度,如差异度小于给定阈值则存在风险。
进一步的,本发明还包括资源控制风险漏洞的识别,若目标服务器包含该凭证,则上报资源控制风险,反之,则不存在此风险。
下面示出具体实施例,如图2所示。
S11:测试人员通过点击业务功能发送http请求,然后服务器转发请求并从目的服务器获取对应的响应报文,整个过程顺序存储请求与响应报文和用户登录凭证。
S12:确定存储请求报文是否为登陆场景报文,若是登陆场景报文,执行S13,则若报文不是登陆场景报文,则继续顺序从103报文处理模块获取请求报文。
S13:识别判断是否存在验证码机制,识别方式为关键字匹配,匹配关键字包含并不仅限于VerifyCode,若存在验证码机制,则存储登陆请求前的获取验证码请求报文,若不存在验证码机制,则执行S15直接发送到目标服务器。
S14:通过105验证码智能识别模块识别判断验证码种类与解析验证码。
S15:若承接S13步骤,则直接将报文重发到107目标服务器,若承接S14步骤,则拿到S14步骤解析后的验证码重构登陆报文并发送到107目标服务器,并接收存储响应报文。
S16:调用602对比报文单元将S15步骤存储的响应报文与103报文处理模块存储的原始登陆响应报文进行智能比对。
S17:分析S16步骤对比结果判断是否登陆成功,若成功将结果反馈给S19步骤,若不成功则继续从103报文处理模块获取请求报文。
S18:调用603登录凭证查询单元,查看是否存在资源控制漏洞风险,将结果反馈给S19步骤。
S19:调用604上报风险单元通过页面显示方式向测试人员进行测试结果展示。
可以看出,本发明提出了一种智能化检测登陆场景下漏洞的方法及装置,基于多种智能算法代替了人工的繁琐操作,既弥补了当下自动化安全测试工具无法高效精准的检测出登陆漏洞这一缺陷。又有效提高了测试人员的测试效率,主要有以下优点:
1、检测过程中无需人工干预,测试人员通过点击业务功能后只需要等待该检测装置回馈安全漏洞信息即可。
2、通过智能算法从报文库中识别登陆场景报文,同时还可识别出不同种类的验证码机制并解析验证码,最后还可通过智能对比报文方式决策重构报文是否登陆成功并检测资源控制漏洞。
3、简化统代手工测试的繁琐,节省测试人员的时间。
4、降低测试门槛,即便不是安全从业者使用该检测装置也可轻松测试出登陆漏洞。
基于相同的发明构思,本发明进一步提供一种登陆场景下漏洞测试系统,如图3所示,包括:
接收模块1,接收测试终端发送的请求报文,所述请求报文的类型包括验证码请求报文和登陆场景请求报文;
转发模块2,转发所述登陆场景请求报文和所述验证码请求报文至目标服务器,以获得第一响应报文和对应的包括登陆验证码的验证文件;
解析模块3,解析所述验证文件,并将所述登陆场景请求报文和解析得到的所述登陆验证码组合重构得到重构请求报文,并发送至目标服务器,以获得对应的第二响应报文;
比对模块4,比对所述第一响应报文和所述第二响应报文,若比对不通过,则该测试终端的重放漏洞测试通过。
本发明提供的一种登陆场景下漏洞测试系统,首先通过转发所述登陆场景请求报文和所述验证码请求报文至目标服务器,以获得第一响应报文和对应的包括登陆验证码的验证文件;然后解析所述验证文件,并将所述登陆场景请求报文和解析得到的所述登陆验证码组合重构得到重构请求报文,并发送至目标服务器,以获得对应的第二响应报文;最后比对所述第一响应报文和所述第二响应报文,若比对不通过,则该测试终端的重放漏洞测试通过。可以看出,本发明通过从报文库中识别登陆场景报文,同时还可识别出不同种类的验证码机制并解析验证码(包括在验证文件中),最后通过智能对比报文方式决策重构报文是否登陆成功,进而测试出测试终端的重放漏洞。
基于相同的发明构思,在优选的实施例中,还包括:
场景类型确定模块,根据所述请求报文的分词特征和登陆行为分布特征,确定每个所述请求报文的场景类型,所述场景类型包括登陆场景和非登陆场景。
基于相同的发明构思,在优选的实施例中,所述场景类型确定模块,包括:
分词单元,将所述请求报文的请求头和请求体以字符为分词的最小单位进行分词,得到分词集合;
特征计算单元,通过设定算法计算分词集合得到请求的分词特征和登陆类型分布特征;
映射单元,对已标记分词特征和登陆类型分布特征的所述请求报文进行分词特征和登陆类型分布特征的特征向量映射,得到映射特征向量集;
模型输入单元,将所述映射特征向量输入到预设的机器学习分类模型,输出请求报文的场景类型标识。
基于相同的发明构思,在优选的实施例中,还包括:
模型建立模块,建立所述机器学习分类模型;
利用多个已标定场景类型标识的映射特征向量集组成的训练集训练所述机器学习分类模型。
基于相同的发明构思,在优选的实施例中,所述验证文件为图像,所述解析模块,包括:
对所述验证文件进行切割,得到所述登陆验证码的多个字符图片;
将每个所述字符图片输入至预设的深度卷积神经网络,得到识别出的登陆验证码。
基于相同的发明构思,在优选的实施例中,还包括:
深度卷积神经网络建立模块,建立所述深度卷积神经网络;
训练模块,利用多个已标记字符的字符图片组成的训练集训练所述深度卷积神经网络。
基于相同的发明构思,在优选的实施例中,还包括:
中值滤波处理模块,采用中值滤波对所述验证文件进行处理;
二值化处理模块,对中值滤波后的所述验证文件进行二值化处理。
基于相同的发明构思,在优选的实施例中,所述比对模块,包括:
第一判断单元,判断所述第二响应报文中是否包括登陆凭证;
第二判断单元,若不包括,判断所述第一响应报文和所述第二响应报文的格式和大小是否一致;
计算单元,若一致,则计算所述第一响应报文和所述第二响应报文的差异度,若所述差异度大于等于设定阈值,则比对不通过。
基于相同的发明构思,在优选的实施例中,还包括:
查询模块,查询所述登陆凭证是否包括在所述目标服务器中,若否则排除资源控制风险。
从硬件层面来说,为了本发明提供一种用于实现所述登陆场景下漏洞测试方法中的全部或部分内容的电子设备的实施例,所述电子设备具体包含有如下内容:
处理器(processor)、存储器(memory)、通信接口(Communications Interface)和总线;其中,所述处理器、存储器、通信接口通过所述总线完成相互间的通信;所述通信接口用于实现服务器、装置、分布式消息中间件集群装置、各类数据库以及用户终端等相关设备之间的信息传输;该电子设备可以是台式计算机、平板电脑及移动终端等,本实施例不限于此。在本实施例中,该电子设备可以参照实施例中的登陆场景下漏洞测试方法的实施例,以及,登陆场景下漏洞测试方法装置的实施例进行实施,其内容被合并于此,重复之处不再赘述。
图4为本发明实施例的电子设备9600的系统构成的示意框图。如图4所示,该电子设备9600可以包括中央处理器9100和存储器9140;存储器9140耦合到中央处理器9100。值得注意的是,该图4是示例性的;还可以使用其他类型的结构,来补充或代替该结构,以实现电信功能或其他功能。
一实施例中,登陆场景下漏洞测试方法功能可以被集成到中央处理器9100中。例如,中央处理器9100可以被配置为进行如下控制:
S1:接收测试终端发送的请求报文,所述请求报文的类型包括验证码请求报文和登陆场景请求报文;
S2:转发所述登陆场景请求报文和所述验证码请求报文至目标服务器,以获得第一响应报文和对应的包括登陆验证码的验证文件;
S3:解析所述验证文件,并将所述登陆场景请求报文和解析得到的所述登陆验证码组合重构得到重构请求报文,并发送至目标服务器,以获得对应的第二响应报文;
S4:比对所述第一响应报文和所述第二响应报文,若比对不通过,则该测试终端的重放漏洞测试通过。
从上述描述可知,本发明的实施例提供的电子设备,首先通过转发所述登陆场景请求报文和所述验证码请求报文至目标服务器,以获得第一响应报文和对应的包括登陆验证码的验证文件;然后解析所述验证文件,并将所述登陆场景请求报文和解析得到的所述登陆验证码组合重构得到重构请求报文,并发送至目标服务器,以获得对应的第二响应报文;最后比对所述第一响应报文和所述第二响应报文,若比对不通过,则该测试终端的重放漏洞测试通过。可以看出,本发明通过从报文库中识别登陆场景报文,同时还可识别出不同种类的验证码机制并解析验证码(包括在验证文件中),最后通过智能对比报文方式决策重构报文是否登陆成功,进而测试出测试终端的重放漏洞。
在另一个实施方式中,登陆场景下漏洞测试方法装置可以与中央处理器9100分开配置,例如可以将登陆场景下漏洞测试方法配置为与中央处理器9100连接的芯片,通过中央处理器的控制来实现登陆场景下漏洞测试方法功能。
如图4所示,该电子设备9600还可以包括:通信模块9110、输入单元9120、音频处理器9130、显示器9160、电源9170。值得注意的是,电子设备9600也并不是必须要包括图4中所示的所有部件;此外,电子设备9600还可以包括图4中没有示出的部件,可以参考现有技术。
如图4所示,中央处理器9100有时也称为控制器或操作控件,可以包括微处理器或其他处理器装置和/或逻辑装置,该中央处理器9100接收输入并控制电子设备9600的各个部件的操作。
其中,存储器9140,例如可以是缓存器、闪存、硬驱、可移动介质、易失性存储器、非易失性存储器或其它合适装置中的一种或更多种。可储存上述与失败有关的信息,此外还可存储执行有关信息的程序。并且中央处理器9100可执行该存储器9140存储的该程序,以实现信息存储或处理等。
输入单元9120向中央处理器9100提供输入。该输入单元9120例如为按键或触摸输入装置。电源9170用于向电子设备9600提供电力。显示器9160用于进行图像和文字等显示对象的显示。该显示器例如可为LCD显示器,但并不限于此。
该存储器9140可以是固态存储器,例如,只读存储器(ROM)、随机存取存储器(RAM)、SIM卡等。还可以是这样的存储器,其即使在断电时也保存信息,可被选择性地擦除且设有更多数据,该存储器的示例有时被称为EPROM等。存储器9140还可以是某种其它类型的装置。存储器9140包括缓冲存储器9141(有时被称为缓冲器)。存储器9140可以包括应用/功能存储部9142,该应用/功能存储部9142用于存储应用程序和功能程序或用于通过中央处理器9100执行电子设备9600的操作的流程。
存储器9140还可以包括数据存储部9143,该数据存储部9143用于存储数据,例如联系人、数字数据、图片、声音和/或任何其他由电子设备使用的数据。存储器9140的驱动程序存储部9144可以包括电子设备的用于通信功能和/或用于执行电子设备的其他功能(如消息传送应用、通讯录应用等)的各种驱动程序。
通信模块9110即为经由天线9111发送和接收信号的发送机/接收机9110。通信模块(发送机/接收机)9110耦合到中央处理器9100,以提供输入信号和接收输出信号,这可以和常规移动通信终端的情况相同。
基于不同的通信技术,在同一电子设备中,可以设置有多个通信模块9110,如蜂窝网络模块、蓝牙模块和/或无线局域网模块等。通信模块(发送机/接收机)9110还经由音频处理器9130耦合到扬声器9131和麦克风9132,以经由扬声器9131提供音频输出,并接收来自麦克风9132的音频输入,从而实现通常的电信功能。音频处理器9130可以包括任何合适的缓冲器、解码器、放大器等。另外,音频处理器9130还耦合到中央处理器9100,从而使得可以通过麦克风9132能够在本机上录音,且使得可以通过扬声器9131来播放本机上存储的声音。
本发明的实施例还提供能够实现上述实施例中的执行主体可以为服务器的登陆场景下漏洞测试方法中全部步骤的一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现上述实施例中的登陆场景下漏洞测试方法的全部步骤。
从上述描述可知,本发明的实施例提供的计算机可读存储介质,首先通过转发所述登陆场景请求报文和所述验证码请求报文至目标服务器,以获得第一响应报文和对应的包括登陆验证码的验证文件;然后解析所述验证文件,并将所述登陆场景请求报文和解析得到的所述登陆验证码组合重构得到重构请求报文,并发送至目标服务器,以获得对应的第二响应报文;最后比对所述第一响应报文和所述第二响应报文,若比对不通过,则该测试终端的重放漏洞测试通过。可以看出,本发明通过从报文库中识别登陆场景报文,同时还可识别出不同种类的验证码机制并解析验证码(包括在验证文件中),最后通过智能对比报文方式决策重构报文是否登陆成功,进而测试出测试终端的重放漏洞。
本领域内的技术人员应明白,本发明的实施例可提供为方法、装置、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(装置)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
本发明中应用了具体实施例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

Claims (12)

1.一种登陆场景下漏洞测试方法,其特征在于,包括:
接收测试终端发送的请求报文,所述请求报文的类型包括验证码请求报文和登陆场景请求报文;
转发所述登陆场景请求报文和所述验证码请求报文至目标服务器,以获得第一响应报文和对应的包括登陆验证码的验证文件;
解析所述验证文件,并将所述登陆场景请求报文和解析得到的所述登陆验证码组合重构得到重构请求报文,并发送至目标服务器,以获得对应的第二响应报文;
比对所述第一响应报文和所述第二响应报文,若比对不通过,则该测试终端的重放漏洞测试通过。
2.根据权利要求1所述的登陆场景下漏洞测试方法,其特征在于,还包括:
根据所述请求报文的分词特征和登陆行为分布特征,确定每个所述请求报文的场景类型,所述场景类型包括登陆场景和非登陆场景。
3.根据权利要求2所述的登陆场景下漏洞测试方法,其特征在于,所述根据所述请求报文的分词特征和登陆行为分布特征,确定每个所述请求报文的类型,包括:
将所述请求报文的请求头和请求体以字符为分词的最小单位进行分词,得到分词集合;
通过设定算法计算分词集合得到请求的分词特征和登陆类型分布特征;
对已标记分词特征和登陆类型分布特征的所述请求报文进行分词特征和登陆类型分布特征的特征向量映射,得到映射特征向量集;
将所述映射特征向量输入到预设的机器学习分类模型,输出请求报文的场景类型标识。
4.根据权利要求3所述的登陆场景下漏洞测试方法,其特征在于,还包括:
建立所述机器学习分类模型;
利用多个已标定场景类型标识的映射特征向量集组成的训练集训练所述机器学习分类模型。
5.根据权利要求1所述的登陆场景下漏洞测试方法,其特征在于,所述验证文件为图像,所述解析所述验证文件,包括:
对所述验证文件进行切割,得到所述登陆验证码的多个字符图片;
将每个所述字符图片输入至预设的深度卷积神经网络,得到识别出的登陆验证码。
6.根据权利要求5所述的登陆场景下漏洞测试方法,其特征在于,还包括:
建立所述深度卷积神经网络;
利用多个已标记字符的字符图片组成的训练集训练所述深度卷积神经网络。
7.根据权利要求5所述的登陆场景下漏洞测试方法,其特征在于,还包括:
采用中值滤波对所述验证文件进行处理;
对中值滤波后的所述验证文件进行二值化处理。
8.根据权利要求1-7任一项所述的登陆场景下漏洞测试方法,其特征在于,所述比对所述第一响应报文和所述第二响应报文,包括:
判断所述第二响应报文中是否包括登陆凭证;
若不包括,判断所述第一响应报文和所述第二响应报文的格式和大小是否一致;
若一致,则计算所述第一响应报文和所述第二响应报文的差异度,若所述差异度大于等于设定阈值,则比对不通过。
9.根据权利要求1-7任一项所述的登陆场景下漏洞测试方法,其特征在于,还包括:
查询所述登陆凭证是否包括在所述目标服务器中,若否则排除资源控制风险。
10.一种登陆场景下漏洞测试系统,其特征在于,包括:
接收模块,接收测试终端发送的请求报文,所述请求报文的类型包括验证码请求报文和登陆场景请求报文;
转发模块,转发所述登陆场景请求报文和所述验证码请求报文至目标服务器,以获得第一响应报文和对应的包括登陆验证码的验证文件;
解析模块,解析所述验证文件,并将所述登陆场景请求报文和解析得到的所述登陆验证码组合重构得到重构请求报文,并发送至目标服务器,以获得对应的第二响应报文;
比对模块,比对所述第一响应报文和所述第二响应报文,若比对不通过,则该测试终端的重放漏洞测试通过。
11.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至9任一所述方法。
12.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有执行权利要求1至9任一所述方法的计算机程序。
CN202010812880.8A 2020-08-13 2020-08-13 登陆场景下漏洞测试方法及系统 Active CN111931188B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010812880.8A CN111931188B (zh) 2020-08-13 2020-08-13 登陆场景下漏洞测试方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010812880.8A CN111931188B (zh) 2020-08-13 2020-08-13 登陆场景下漏洞测试方法及系统

Publications (2)

Publication Number Publication Date
CN111931188A true CN111931188A (zh) 2020-11-13
CN111931188B CN111931188B (zh) 2023-09-08

Family

ID=73311685

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010812880.8A Active CN111931188B (zh) 2020-08-13 2020-08-13 登陆场景下漏洞测试方法及系统

Country Status (1)

Country Link
CN (1) CN111931188B (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112906011A (zh) * 2021-05-07 2021-06-04 北京安普诺信息技术有限公司 漏洞发现方法、测试方法、安全测试方法及相关装置、平台
CN113127370A (zh) * 2021-05-14 2021-07-16 中国工商银行股份有限公司 报表系统冒烟测试方法、rpa机器人及系统
CN113301019A (zh) * 2021-04-23 2021-08-24 杭州安恒信息技术股份有限公司 验证码漏洞检测方法、装置、电子装置和存储介质
CN114546872A (zh) * 2022-02-23 2022-05-27 吉林银行股份有限公司 一种凭证管理测试方法、装置、计算机设备及存储介质
CN114637690A (zh) * 2022-05-09 2022-06-17 北京航天驭星科技有限公司 一种api渗透测试方法、系统、电子设备及存储介质
CN115001829A (zh) * 2022-06-07 2022-09-02 中国软件评测中心(工业和信息化部软件与集成电路促进中心) 协议漏洞挖掘方法、装置、设备及存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109782989A (zh) * 2017-11-14 2019-05-21 腾讯科技(深圳)有限公司 安全验证方法及相关装置
WO2019205280A1 (zh) * 2018-04-24 2019-10-31 平安科技(深圳)有限公司 服务器的测试方法、装置、设备及计算机可读存储介质
CN110532762A (zh) * 2019-09-02 2019-12-03 四川长虹电器股份有限公司 一种获取验证码图片进行登录爆破测试的方法
CN110674506A (zh) * 2019-09-10 2020-01-10 深圳开源互联网安全技术有限公司 快速验证应用程序漏洞状态的方法及系统
CN111125718A (zh) * 2019-12-24 2020-05-08 北京三快在线科技有限公司 越权漏洞的检测方法、装置、设备及存储介质

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109782989A (zh) * 2017-11-14 2019-05-21 腾讯科技(深圳)有限公司 安全验证方法及相关装置
WO2019205280A1 (zh) * 2018-04-24 2019-10-31 平安科技(深圳)有限公司 服务器的测试方法、装置、设备及计算机可读存储介质
CN110532762A (zh) * 2019-09-02 2019-12-03 四川长虹电器股份有限公司 一种获取验证码图片进行登录爆破测试的方法
CN110674506A (zh) * 2019-09-10 2020-01-10 深圳开源互联网安全技术有限公司 快速验证应用程序漏洞状态的方法及系统
CN111125718A (zh) * 2019-12-24 2020-05-08 北京三快在线科技有限公司 越权漏洞的检测方法、装置、设备及存储介质

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
贾晓岩: "智能家居体系下攻防验证平台的设计与实现", 中国优秀硕士学位论文全文数据库(电子期刊) *

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113301019A (zh) * 2021-04-23 2021-08-24 杭州安恒信息技术股份有限公司 验证码漏洞检测方法、装置、电子装置和存储介质
CN113301019B (zh) * 2021-04-23 2023-04-07 杭州安恒信息技术股份有限公司 验证码漏洞检测方法、装置、电子装置和存储介质
CN112906011A (zh) * 2021-05-07 2021-06-04 北京安普诺信息技术有限公司 漏洞发现方法、测试方法、安全测试方法及相关装置、平台
CN113127370A (zh) * 2021-05-14 2021-07-16 中国工商银行股份有限公司 报表系统冒烟测试方法、rpa机器人及系统
CN114546872A (zh) * 2022-02-23 2022-05-27 吉林银行股份有限公司 一种凭证管理测试方法、装置、计算机设备及存储介质
CN114546872B (zh) * 2022-02-23 2023-02-17 吉林银行股份有限公司 一种凭证管理测试方法、装置、计算机设备及存储介质
CN114637690A (zh) * 2022-05-09 2022-06-17 北京航天驭星科技有限公司 一种api渗透测试方法、系统、电子设备及存储介质
CN115001829A (zh) * 2022-06-07 2022-09-02 中国软件评测中心(工业和信息化部软件与集成电路促进中心) 协议漏洞挖掘方法、装置、设备及存储介质
CN115001829B (zh) * 2022-06-07 2024-06-07 中国软件评测中心(工业和信息化部软件与集成电路促进中心) 协议漏洞挖掘方法、装置、设备及存储介质

Also Published As

Publication number Publication date
CN111931188B (zh) 2023-09-08

Similar Documents

Publication Publication Date Title
CN111931188B (zh) 登陆场景下漏洞测试方法及系统
CN109976995B (zh) 用于测试的方法和装置
CN108667770B (zh) 一种网站的漏洞测试方法、服务器及系统
CN112291271B (zh) 一种移动设备自动登录服务器的方法、系统、介质
CN110855676A (zh) 网络攻击的处理方法、装置及存储介质
CN111163095B (zh) 网络攻击分析方法、网络攻击分析装置、计算设备和介质
CN111953668B (zh) 网络安全信息处理方法及装置
KR20210047350A (ko) 출석 관리 시스템, 방법 및 전자 기기
CN111371778B (zh) 攻击团伙的识别方法、装置、计算设备以及介质
CN111414305B (zh) 测试方法、测试装置、测试设备以及介质
CN105162604A (zh) 一种基于特征图像识别的验证方法、服务器及系统
CN113922952B (zh) 访问请求响应方法、装置、计算机设备和存储介质
CN111625464A (zh) 接口的测试方法、装置、存储介质和处理器
CN112733057A (zh) 网络内容安全检测方法、电子装置和存储介质
CN111143650B (zh) 获取页面数据的方法、装置、介质及电子设备
CN104935548A (zh) 基于智能纹身设备的身份验证方法、装置及系统
CN115314268A (zh) 基于流量指纹和行为的恶意加密流量检测方法和系统
WO2017215650A1 (zh) 微端的自动登录方法、装置、程序及介质
CN114244556B (zh) 一种协议代理方法及装置
CN107145342A (zh) 应用的渠道信息的处理方法和装置
CN110752933A (zh) 一种验证码输入方法、装置、电子设备及存储介质
CN116015739A (zh) 前后端数据交互方法、装置、服务器及存储介质
CN115410201A (zh) 一种验证码字符处理方法、装置和相关设备
CN112165594A (zh) 基于视频通信的业务办理方法、装置、计算机设备
KR102001814B1 (ko) 모바일 장치 기반의 악성 스크립트 탐지 방법 및 그 장치

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