CN112565026B - 测试帧的生成方法、装置及设备 - Google Patents

测试帧的生成方法、装置及设备 Download PDF

Info

Publication number
CN112565026B
CN112565026B CN202110191668.9A CN202110191668A CN112565026B CN 112565026 B CN112565026 B CN 112565026B CN 202110191668 A CN202110191668 A CN 202110191668A CN 112565026 B CN112565026 B CN 112565026B
Authority
CN
China
Prior art keywords
field
length
test frame
determining
data
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
Application number
CN202110191668.9A
Other languages
English (en)
Other versions
CN112565026A (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.)
Alipay Hangzhou Information Technology Co Ltd
Original Assignee
Alipay Hangzhou Information Technology Co Ltd
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 Alipay Hangzhou Information Technology Co Ltd filed Critical Alipay Hangzhou Information Technology Co Ltd
Priority to CN202110191668.9A priority Critical patent/CN112565026B/zh
Publication of CN112565026A publication Critical patent/CN112565026A/zh
Application granted granted Critical
Publication of CN112565026B publication Critical patent/CN112565026B/zh
Priority to PCT/CN2022/076648 priority patent/WO2022174790A1/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/18Protocol analysers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/12Detection or prevention of fraud

Abstract

本说明书实施例提供了一种测试帧的生成方法、装置及设备,其中方法包括:确定待测试的无线通信协议的版本信息和待生成的测试帧的类型信息,根据版本信息和类型信息确定待处理的目标字段;基于预设的畸变策略获取目标字段对应的畸变数据,根据获取的畸变数据生测试帧;其中,测试帧用于对无线通信协议是否存在风险进行测试。

Description

测试帧的生成方法、装置及设备
技术领域
本文件涉及无线通信技术领域,尤其涉及一种测试帧的生成方法、装置及设备。
背景技术
随着互联网时代的兴起,WIFI网络成为了人们生活不可缺少的一部分,其应用也随处可见,如企业办公、智能家居等。基于WiFi网络的数据通信主要是依赖IEEE802.11协议进行,而由于该协议存在安全漏洞使得用户受到攻击,造成隐私泄漏等事件曾有发生。因此,对于IEEE802.11协议进行安全测试是有必要的,而如何生成进行测试所需的有效性的测试帧是当前急需解决的重要问题。
发明内容
本说明书一个或多个实施例提供了一种测试帧的生成方法。所述方法包括确定待测试的无线通信协议的版本信息和待生成的测试帧的类型信息。其中,所述测试帧用于对所述无线通信协议是否存在风险进行测试。根据所述版本信息和所述类型信息确定待处理的目标字段。基于预设的畸变策略获取所述目标字段对应的畸变数据。根据所述畸变数据生成所述测试帧。
本说明书一个或多个实施例提供了一种测试帧的生成装置。所述装置包括第一确定模块,其确定待测试的无线通信协议的版本信息和待生成的测试帧的类型信息。其中,所述测试帧用于对所述无线通信协议是否存在风险进行测试。所述装置还包括第二确定模块,其根据所述版本信息和所述类型信息确定待处理的目标字段。所述装置还包括获取模块,其基于预设的畸变策略获取所述目标字段对应的畸变数据。所述装置还包括生成模块,其根据所述畸变数据生成所述测试帧。
本说明书一个或多个实施例提供了一种测试帧的生成设备。所述设备包括处理器。所述设备还包括被安排成存储计算机可执行指令的存储器。所述计算机可执行指令在被执行时使所述处理器确定待测试的无线通信协议的版本信息和待生成的测试帧的类型信息。其中,所述测试帧用于对所述无线通信协议是否存在风险进行测试。根据所述版本信息和所述类型信息确定待处理的目标字段。基于预设的畸变策略获取所述目标字段对应的畸变数据。根据所述畸变数据生成所述测试帧。
本说明书一个或多个实施例提供了一种存储介质。所述存储介质用于存储计算机可执行指令。所述计算机可执行指令在被处理器执行时确定待测试的无线通信协议的版本信息和待生成的测试帧的类型信息。其中,所述测试帧用于对所述无线通信协议是否存在风险进行测试。根据所述版本信息和所述类型信息确定待处理的目标字段。基于预设的畸变策略获取所述目标字段对应的畸变数据。根据所述畸变数据生成所述测试帧。
附图说明
为了更清楚地说明本说明书一个或多个实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图;
图1为本说明书一个或多个实施例提供的一种测试帧的生成方法的第一种流程示意图;
图2为本说明书一个或多个实施例提供的一种测试帧的生成方法的第二种流程示意图;
图3为本说明书一个或多个实施例提供的一种测试帧的生成方法的第三种流程示意图;
图4为本说明书一个或多个实施例提供的一种测试帧的生成方法的第四种流程示意图;
图5为本说明书一个或多个实施例提供的一种测试帧的生成方法的第五种流程示意图;
图6为本说明书一个或多个实施例提供的一种测试帧的生成装置的模块组成示意图;
图7为本说明书一个或多个实施例提供的一种测试帧的生成设备的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本说明书一个或多个实施例中的技术方案,下面将结合本说明书一个或多个实施例中的附图,对本说明书一个或多个实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本说明书的一部分实施例,而不是全部的实施例。基于本说明书一个或多个实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都应当属于本文件的保护范围。
图1为本说明书一个或多个实施例提供的一种测试帧的生成方法的流程示意图,图1中的方法能够由测试帧的生成装置执行,如图1所示,该方法包括以下步骤:
步骤S102,确定待测试的无线通信协议的版本信息和待生成的测试帧的类型信息;其中,测试帧用于对无线通信协议是否存在风险进行测试;
随着无线通信技术的不断发展,各种无线通信协议也随之产生,如蓝牙协议、ZigBee(紫蜂)协议、IEEE802.11协议等。本申请实施例中,以待测试的无线通信协议为IEEE802.11协议为例进行说明,其他无线通信协议的测试帧的生成方式参考IEEE802.11协议的测试帧的生成方式即可。
IEEE802.11协议中定义了三种类型的帧,包括管理帧、控制帧和数据帧;其中,管理帧包括帧头(head)和帧体(body),帧体包括固定字段和信息元素;控制帧包括帧头;数据帧包括帧头和帧体,帧体主要是数据(date)。随着用户对数据传输速率、传输距离等的要求不断提升,IEEE802.11协议当前已有多个版本,如IEEE802.11a 、IEEE802.11b 、IEEE802.11g等。为了后续能够对待测试的无线通信协议进行有效测试,测试帧的生成装置首先确定待测试的无线通信协议的版本信息和待生成的测试帧的类型信息。可选地,当用户需要进行无线通信协议的测试处理时,操作测试帧的生成装置,向测试帧的生成装置发送测试帧生成请求;或者用户操作与测试帧的生成装置相连的管理设备,该管理设备响应于用户操作向测试帧的生成装置发送测试帧生成请求;相应的,测试帧的生成装置将接收到的测试帧生成请求所携带的版本信息和类型信息确定为待测试的无线通信协议的版本信息和待生成的测试帧的类型信息。或者,在测试帧的生成装置中预置待测试的无线通信协议的版本信息和待生成的测试帧的类型信息;相应的,测试帧的生成装置在确定满足测试帧的生成条件时,将该预置的版本信息和类型信息,确定为待测试的无线通信协议的版本信息和待生成的测试帧的类型信息。其中,确定满足测试帧的生成条件,如接收到用户发送的测试帧生成请求等,其可以在实际应用中根据需要自行设定。
步骤S104,根据版本信息和类型信息确定待处理的目标字段;
由于不同版本的IEEE802.11对于帧格式的规定有所不同,并且不同类型的帧中,能够进行畸变处理的字段也不同;基于此,为了生成有效的测试帧,根据待测试的无线通信协议的版本信息和待生成的测试帧的类型信息确定对应的待处理的目标字段。
步骤S106,基于预设的畸变策略获取目标字段对应的畸变数据;
步骤S108,根据畸变数据生成测试帧。
本说明书一个或多个实施例中,根据待测试的无线通信协议的版本信息和待生成的测试帧的类型信息,确定待处理的目标字段;基于预设的畸变策略获取该目标字段对应的畸变数据,并根据畸变数据生成测试帧。由此,兼顾无线通信协议的版本和帧的类型,基于畸变策略生成测试帧,使得生成的测试帧在具有有效性的基础上更具针对性,能够提升对待测试的无线通信协议的测试结果的准确性,有利于及时发现和修补无线通信协议存在的安全漏洞,从而避免给用户造成损失。
为了确保测试帧的生成装置能够准确的确定目标字段,本申请一个或多个实施例中,预设版本信息和类型信息与字段的第一关联关系,并基于该第一关联关系确定目标字段。具体的,如图2所示,步骤S104可以包括以下步骤S104-2:
步骤S104-2,根据确定的版本信息和类型信息,从预设的版本信息和类型信息与字段的第一关联关系中获取关联的字段,将获取的字段确定为待处理的目标字段。
考虑到一些类型的帧中还可能包括具有固定数据而不需要进行处理的字段,如管理帧的信息元素中的元素标识字段,对于不同的管理帧,同一个信息元素的元素标识是固定的,如为29。基于此,与步骤S104-2对应的,如图2所示,步骤S108可以包括以下步骤S108-2至步骤S108-6:
步骤S108-2,确定构成测试帧的各字段中是否包括具有固定数据的字段,是则执行步骤S108-4,否则执行步骤S108-6;
具体的,可以预设版本信息和类型信息与具有固定数据的字段的第三关联关系,测试帧的生成装置确定根据待测试的无线通信协议的版本信息和待生成的测试帧的类型信息从该第三关联关系中是否获取到关联的字段,若是,则确定构成测试帧的各字段中包括具有固定数据的字段,若否,则确定构成测试帧的各字段中不包括具有固定数据的字段。
步骤S108-4,根据待测试的无线通信协议规定的帧格式对确定的固定数据和获取的畸变数据进行拼接处理,得到测试帧;
具体的,可以从第三关联关系中获取具有固定数据的字段所对应的固定数据;或者,根据从第三关联关系中获取的字段,从预设的字段与固定数据的第四关联关系中获取关联的固定数据。根据待测试的无线通信协议规定的帧格式对获取的固定数据和畸变数据进行拼接处理,得到测试帧。
作为示例,管理帧的帧头从左向右依次是Frame control、Duration、Address1、Address2、Address3等字段,则对确定的每个字段所对应的数据按照顺序从左到右的顺序依次进行拼接处理。
步骤S108-6,根据无线通信协议规定的帧格式对获取的畸变数据进行拼接处理,得到测试帧。
由此,通过预设上述第一关联关系,基于该第一关联关系确定待处理的目标字段,并对构成测试帧的各字段所对应的固定数据或畸变数据进行拼接处理,能够保障得到的测试帧的准确性。
为了提升测试帧的生成速率,本申请一个或多个实施例中,还可以预设版本信息和类型信息与帧模板的第二关联关系,基于该第二关联关系确定目标字段。具体的,如图3所示,步骤S104可以包括以下步骤S104-4和步骤S104-6:
步骤S104-4,根据确定的版本信息和类型信息,从预设的版本信息和类型信息与帧模板的第二关联关系中获取关联的目标帧模板;
其中,目标帧模板符合待测试的无线通信协议规定的帧格式,即目标帧模板中包括构成测试帧的各个字段,且各个字段之间的位置关系符合无线通信协议规定的帧格式;对于具有固定数据的字段,相应的字段位置是该固定数据。
步骤S104-6,将目标帧模板中处于待处理状态的字段确定为待处理的目标字段。
与步骤S104-4和步骤S104-6对应的,步骤S108可以包括以下步骤S108-8:
步骤S108-8,将畸变数据填充至目标帧模板中的相应位置,将填充完成的目标帧模板确定为测试帧。
由此,通过预设上述第二关联关系,并基于该第二关联关系确定目标帧模板,基于该目标帧模版生成测试帧;由于帧模版符合无线通信协议规定的帧格式,且对于固定数据的字段,已预先填充完成,因此在确保了生成的测试帧的准确性的基础上,能够提升测试帧的生成速率。
为了满足用户对无线通信协议的测试需求,通常的,用户会指定或预设一些字段数据供测试帧的生成装置在生成测试帧时对相应的字段进行填充,同时由测试帧的生成装置生成目标字段中除前述字段之外的字段所对应的字段数据。为了便于区分,本申请实施例中,将需要测试帧的生成装置根据用户指定的或预设的字段数据进行填充的字段称为填充字段,将需要测试帧的生成装置生成相应字段数据的字段称为畸变字段。与之对应的,如图4所示,步骤S106可以包括以下步骤S106-2至步骤S106-8:
步骤S106-2,确定目标字段中的填充字段和畸变字段;
具体的,将接收到的测试帧生成请求所包括的字段数据和/或预设的字段数据所对应的字段确定为填充字段,并将目标字段中除填充字段以外的字段确定为畸变字段。其中,当测试帧的类型为管理帧时,填充字段可以包括帧头的部分字段、帧体的固定字段和信息元素中的部分字段,畸变字段可以包括帧体的固定字段和信息元素中的部分字段;当测试帧的类型为数据帧时,填充字段可以包括帧头的部分字段和帧体中部分数据字段,畸变字段可以包括帧体的部分数据字段;当测试帧的类型为控制帧时,填充字段可以包括帧头的部分字段,畸变字段可以包括拼接在帧头之后的字段。需要指出的是,为了确保在测试过程中,测试帧能够被被测设备有效的接收,畸变字段不包括帧头中的字段;当然若有相应的测试需求,畸变字段也可以包括帧头中的字段,其在实际应用中可以根据需要自行设定。
作为示例,当测试帧的类型为管理帧时,填充字段可以包括帧头的Address1、Address2、Address3等字段,帧体的Beacon interval、Service Set Identity、DSParameter Set字段等;畸变字段可以包括帧体的Supported Rates、FH Parameter Set等信息元素字段。
步骤S106-4,根据第一预设方式获取填充字段对应的第一数据;
具体的,接收测试帧生成请求,从测试帧生成请求中获取第一数据;和/或,从指定位置获取预设的第一数据。
步骤S106-6,根据第二预设方式生成畸变字段对应的第二数据;
具体的,当确定的类型信息表征测试帧为管理帧时,畸变字段包括多个信息元素,该信息元素包括元素标识字段、长度字段和内容字段;相应的,步骤S106-6可以包括以下步骤S106-62至步骤S106-66:
步骤S106-62,根据无线通信协议对信息元素的格式规定,基于预设的第一变异策略确定长度字段对应的长度数据;
步骤S106-64,根据长度数据随机生成内容字段对应的内容数据,将长度数据和内容数据确定为第二数据。
具体的,若确定第一预设长度与当前待生成测试帧的各字段的总长度的差值未超过长度阈值、且基于第一变异策略处理过的信息元素的数量未超过预设数量,则从当前未处理的信息元素中随机选择一个目标信息元素;确定预设的多个第一变异策略中与目标信息元素相匹配的目标变异策略,基于目标变异策略确定目标信息元素的长度字段对应的长度数据。根据确定的长度数据随机生成内容字段对应的内容数据,将长度数据和内容数据确定为第二数据。
更加具体的,当确定目标字段中的畸变字段之后,将畸变字段中的各信息元素确定为当前未处理的信息元素,从当前未处理的信息元素中随机选择一个目标信息元素,确定预设的多个第一变异策略中与目标信息元素相匹配的目标变异策略,基于目标变异策略确定目标信息元素的长度字段对应的长度数据,根据确定的长度数据随机生成内容字段对应的内容数据;此时,第一个信息元素的畸变处理完成;确定当前待生成测试帧的各字段的总长度,并确定第一预设长度与该总长度的差值是否超过预设的长度阈值,若是,则将得到的长度数据和内容数据确定为第二数据;若否,则确定基于第一变异策略处理过的信息元素的数量未超过预设数量;若是,则将得到的长度数据和内容数据确定为第二数据;若否,则从当前未处理的信息元素中随机选择一个目标信息元素,按照前述方式对该目标信息元素进行处理。其中,第一预设长度可以为无线通信协议规定的管理帧的最大长度,当确定第一预设长度与当前待生成测试帧的各字段的总长度的差值超过预设的长度阈值时,表征该总长度临近最大长度,总长度与最大长度的长度差异已不足以在添加信息元素。长度阈值和预设数量均可在实际应用中根据需要自行设定。需要指出的是,当长度数据为零时,没有内容数据。
进一步的,考虑到在实际应用中,无线通信协议规定了一些信息元素之间具有关联关系,如必须同时出现等;为了满足协议规定,本申请一个或多个实施例中,前述从当前未处理的信息元素中随机选择一个目标信息元素,可以包括:
从当前未处理的信息元素中随机选择一个信息元素作为候选信息元素;确定当前未处理的信息元素中是否存在与候选信息元素相关联的关联信息元素;若存在关联信息元素、且推算第一预设长度与基于第一变异策略处理后的候选信息元素和关联信息元素及当前待生成测试帧的各字段的总长度的差值未超过长度阈值、基于第一变异策略处理过的信息元素与候选信息元素和关联信息元素的总数量未超过预设数量,则将候选信息元素确定为目标信息元素,并将关联信息元素确定为下一个目标信息元素;若不存在关联信息元素,则将候选信息元素确定为目标信息元素。
通过确定是否存在关联信息元素,并在存在关联信息元素时,进行长度推算,能够确保生成的测试帧符合无线通信协议的相关规定,从而在无线通信的测试过程中,可确保测试帧能够被被测设备成功接收,而不会被被测设备确定为是无效帧而丢弃,确保了无线通信协议的有效测试。
进一步的,为了避免后续进行无线通信协议的盲目测试,上述第一变异策略包括以下中的任意一个或多个:
将无线通信协议规定的信息元素的长度与第二预设长度的加和确定为长度字段对应的长度数据;
将无线通信协议规定的信息元素的长度与第三预设长度的差确定为长度字段对应的长度数据;
将无线通信协议规定的信息元素的长度范围中的最小长度确定为长度字段对应的长度数据;
将无线通信协议规定的信息元素的长度范围中的最大长度确定为长度字段对应的长度数据;
将无线通信协议规定的信息元素的长度范围中的任意长度确定为长度字段对应的长度数据;
将无线通信协议规定的信息元素的长度范围中的最小长度与第四预设长度的加和确定为长度字段对应的长度数据;
将无线通信协议规定的信息元素的长度范围中的最大长度与第五预设长度的差确定为长度字段对应的长度数据;
将零确定为长度字段对应的长度数据;
将指定数据确定为长度字段对应的长度数据。
其中,第二预设长度至第五预设长度可以相同也可以不同,例如第二预设长度至第五预设长度相同,均为1。通过预设上述第一畸变策略,能够生成长度字段和内容字段畸变的信息元素,从而可通过该畸变的信息元素对无线通信协议的实现中对于不同的信息元素的解析是否存在安全漏洞进行针对性的测试。
进一步的,上述确定预设的多个第一变异策略中与目标信息元素相匹配的目标变异策略,可以包括:确定待测试的无线通信协议对目标信息元素的长度规定,若该规定是长度范围,则可以从上述与长度范围相关的第一变异策略中随机选择一个变异策略确定为目标变异策略;若该规定是固定长度,则可以从上述除长度范围相关的第一变异策略之外的第一变异策略中随机选择一个变异策略确定为目标变异策略。
作为示例,生成的管理帧为50 00 3a 01 80 7d 3a 84 35 f8 04 d9 f5 26 ffc0 04 d9 f5 26 ff c0 f0 5f 00 20 49 05 00 00 00 00 64 00 f1 ff 00 0a 77 66 5f74 65 73 74 69 6e 67 01 08 82 84 8b 96 12 24 48 6c 00 01 0b 05 04 00 01 00 1829 00,其中29 00是畸变处理后的一个信息元素,其中,29是元素标识信息,00是长度数据,由于长度为0,因此没有内容数据。
进一步的,为了确保后续测试的全面性,本申请一个或多个实施例中,还可以对信息元素的整体进行变异处理,具体的,方法还可以包括:
根据预设的第二变异策略对信息元素进行整体变异处理;其中,第二变异策略包括复制信息元素、删除不可缺少的信息元素中的一个或多个等。
对于管理帧的固定字段中的畸变字段,可以随机生成符合无线通信协议规定的格式的数据。
以上是测试帧的类型为管理帧时,基于变异策略生成畸变字段的第二数据的过程,不仅确保了生成的第二数据符合无线通信协议的规定,而且,基于该第二数据生成的测试帧能够对待测试的无线通信协议进行针对性的有效测试。
进一步的,当确定的类型信息表征测试帧为数据帧时,步骤S106-6可以包括以下步骤S106-66:
步骤S106-66,随机生成畸变字段对应的第二数据,或者根据无线通信协议对畸变字段的格式规定随机生成符合该格式规定的第二数据;其中,基于第二数据生成的测试帧的长度不超过第二预设长度。
具体的,确定待测试的无线通信协议对畸变字段是否有格式规定,若否,则随机生成畸变字段对应的第二数据,且确保第二数据与当前待生成测试帧的各字段的总长度不超过第二预设长度;若是,则根据格式规定,随机生成符合该格式规定的第二数据,且确保第二数据与当前待生成测试帧的各字段的总长度不超过第二预设长度。例如对于认证场景的数据帧,无线通信协议对其中的密钥数据具有格式规定,可以根据该格式规定随机生成相应的密钥数据。第二预设长度可以是待测试的无线通信协议所规定的数据帧的最大长度。
进一步的,当确定的类型信息表征测试帧为控制帧时,步骤S106-6可以包括以下步骤S106-68:
步骤S106-68,随机生成畸变字段对应的第二数据;其中,基于第二数据生成的测试帧的长度不超过第三预设长度。
由于控制帧仅有帧头,因此可以在帧头的后面添加畸变字段并随机生成该畸变字段对应的第二数据。
步骤S106-8,将第一数据和第二数据确定为畸变数据。
以上根据不同类型的测试帧的不同格式,采用相应的畸变策略实现了相应畸变数据的相关处理,即实现了测试帧的有效生成。
在生成测试帧之后,即可基于测试帧对待测试的无线通信协议进行测试处理;具体的,如图5所示,步骤S108之后还可以包括以下步骤S110:
步骤S110,根据测试帧对待测试的无线通信协议是否存在风险进行测试处理。
具体的,向基于待测试的无线通信协议进行数据通信的被测设备发送测试帧;获取被测设备对测试帧的解析日志,根据解析日志确定无线通信协议是否存在风险。其中,根据解析日志确定无线通信协议是否存在风险,可以包括确定被测设备对于畸变字段所对应的第二数据是否进行了解析处理,若是,则确定待测试的无线通信协议不存在风险,若否,则确定待测试的无线通信协议存在风险。由于被测设备对畸变字段没有进行解析而是直接作为正确的字段,认为数据有效时,攻击者可以利用该漏洞进行病毒、木马等的植入,从而对设备进行攻击等操作,因此当确定被测设备对于畸变字段所对应的第二数据没有进行解析处理时,确定待测试的无线通信协议存在风险。由此能够实现无线通信协议的安全测试。
本申请一个或多个实施例中,根据待测试的无线通信协议的版本信息和待生成的测试帧的类型信息,确定待处理的目标字段;基于预设的畸变策略获取该目标字段对应的畸变数据,并根据畸变数据生成测试帧。由此,兼顾无线通信协议的版本和帧的类型,基于畸变策略生成测试帧,使得生成的测试帧在具有有效性的基础上更具针对性,能够提升对待测试的无线通信协议的测试结果的准确性,有利于及时发现和修补无线通信协议存在的安全漏洞,从而避免给用户造成损失。
对应上述描述的测试帧的生成方法,基于相同的技术构思,本说明书一个或多个实施例还提供一种测试帧的生成装置。图6为本说明书一个或多个实施例提供的一种测试帧的生成装置的模块组成示意图,如图6所示,该装置包括:
第一确定模块201,确定待测试的无线通信协议的版本信息和待生成的测试帧的类型信息;其中,所述测试帧用于对所述无线通信协议是否存在风险进行测试;
第二确定模块202,根据所述版本信息和所述类型信息确定待处理的目标字段;
获取模块203,基于预设的畸变策略获取所述目标字段对应的畸变数据;
生成模块204,根据所述畸变数据生成所述测试帧。
本说明书一个或多个实施例提供的测试帧的生成装置,根据待测试的无线通信协议的版本信息和待生成的测试帧的类型信息,确定待处理的目标字段;基于预设的畸变策略获取该目标字段对应的畸变数据,并根据畸变数据生成测试帧。由此,兼顾无线通信协议的版本和帧的类型,基于畸变策略生成测试帧,使得生成的测试帧在具有有效性的基础上更具针对性,能够提升对待测试的无线通信协议的测试结果的准确性,有利于及时发现和修补无线通信协议存在的安全漏洞,从而避免给用户造成损失。
可选地,所述获取模块203,确定所述目标字段中的填充字段和畸变字段;以及,
根据第一预设方式获取所述填充字段对应的第一数据;
根据第二预设方式生成所述畸变字段对应的第二数据;
将所述第一数据和所述第二数据确定为所述畸变数据。
可选地,所述类型信息表征所述测试帧为管理帧,所述畸变字段包括多个信息元素,所述信息元素包括长度字段和内容字段;
相应地,所述获取模块203,根据所述无线通信协议对所述信息元素的格式规定,基于预设的第一变异策略确定所述长度字段对应的长度数据;以及,
根据所述长度数据随机生成所述内容字段对应的内容数据;
将所述长度数据和所述内容数据确定为所述第二数据。
可选地,所述类型信息表征所述测试帧为数据帧;
相应地,所述获取模块203,随机生成所述畸变字段对应的第二数据;其中,基于所述第二数据生成的所述测试帧的长度不超过第二预设长度;或者,
根据所述无线通信协议对所述畸变字段的格式规定,随机生成符合所述格式规定的第二数据;其中,基于所述第二数据生成的所述测试帧的长度不超过第二预设长度。
可选地,所述类型信息表征所述测试帧为控制帧;
相应地,所述获取模块203,随机生成所述畸变字段对应的第二数据;其中,基于所述第二数据生成的所述测试帧的长度不超过第三预设长度。
可选地,所述装置还包括:测试模块;
所述测试模块,根据所述测试帧对所述无线通信协议是否存在风险进行测试处理。
可选地,所述测试模块,向基于所述无线通信协议进行数据通信的被测设备发送所述测试帧;以及,
获取所述被测设备对所述测试帧的解析日志;
根据所述解析日志确定所述无线通信协议是否存在风险。
本说明书一个或多个实施例提供的测试帧的生成装置,根据待测试的无线通信协议的版本信息和待生成的测试帧的类型信息,确定待处理的目标字段;基于预设的畸变策略获取该目标字段对应的畸变数据,并根据畸变数据生成测试帧。由此,兼顾无线通信协议的版本和帧的类型,基于畸变策略生成测试帧,使得生成的测试帧在具有有效性的基础上更具针对性,能够提升对待测试的无线通信协议的测试结果的准确性,有利于及时发现和修补无线通信协议存在的安全漏洞,从而避免给用户造成损失。
需要说明的是,本说明书中关于测试帧的生成装置的实施例与本说明书中关于测试帧的生成方法的实施例基于同一发明构思,因此该实施例的具体实施可以参见前述对应的测试帧的生成方法的实施,重复之处不再赘述。
进一步地,对应上述描述的测试帧的生成方法,基于相同的技术构思,本说明书一个或多个实施例还提供一种测试帧的生成设备,该设备用于执行上述的测试帧的生成方法,图7为本说明书一个或多个实施例提供的一种测试帧的生成设备的结构示意图。
如图7所示,测试帧的生成设备可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上的处理器301和存储器302,存储器302中可以存储有一个或一个以上存储应用程序或数据。其中,存储器302可以是短暂存储或持久存储。存储在存储器302的应用程序可以包括一个或一个以上模块(图示未示出),每个模块可以包括测试帧的生成设备中的一系列计算机可执行指令。更进一步地,处理器301可以设置为与存储器302通信,在测试帧的生成设备上执行存储器302中的一系列计算机可执行指令。测试帧的生成设备还可以包括一个或一个以上电源303,一个或一个以上有线或无线网络接口304,一个或一个以上输入输出接口305,一个或一个以上键盘306等。
在一个具体的实施例中,测试帧的生成设备包括有存储器,以及一个或一个以上的程序,其中一个或者一个以上程序存储于存储器中,且一个或者一个以上程序可以包括一个或一个以上模块,且每个模块可以包括对测试帧的生成设备中的一系列计算机可执行指令,且经配置以由一个或者一个以上处理器执行该一个或者一个以上程序包含用于进行以下计算机可执行指令:
确定待测试的无线通信协议的版本信息和待生成的测试帧的类型信息;其中,所述测试帧用于对所述无线通信协议是否存在风险进行测试;
根据所述版本信息和所述类型信息确定待处理的目标字段;
基于预设的畸变策略获取所述目标字段对应的畸变数据;
根据所述畸变数据生成所述测试帧。
可选地,计算机可执行指令在被执行时,所述基于预设的畸变策略获取所述目标字段对应的畸变数据,包括:
确定所述目标字段中的填充字段和畸变字段;
根据第一预设方式获取所述填充字段对应的第一数据;
根据第二预设方式生成所述畸变字段对应的第二数据;
将所述第一数据和所述第二数据确定为所述畸变数据。
可选地,计算机可执行指令在被执行时,所述类型信息表征所述测试帧为管理帧,所述畸变字段包括多个信息元素,所述信息元素包括长度字段和内容字段;
所述根据第二预设方式生成所述畸变字段对应的第二数据,包括:
根据所述无线通信协议对所述信息元素的格式规定,基于预设的第一变异策略确定所述长度字段对应的长度数据;
根据所述长度数据随机生成所述内容字段对应的内容数据;
将所述长度数据和所述内容数据确定为所述第二数据。
可选地,计算机可执行指令在被执行时,所述类型信息表征所述测试帧为数据帧,所述根据第二预设方式生成所述畸变字段对应的第二数据,包括:
随机生成所述畸变字段对应的第二数据;其中,基于所述第二数据生成的所述测试帧的长度不超过第二预设长度;或者,
根据所述无线通信协议对所述畸变字段的格式规定,随机生成符合所述格式规定的第二数据;其中,基于所述第二数据生成的所述测试帧的长度不超过第二预设长度。
可选地,计算机可执行指令在被执行时,所述类型信息表征所述测试帧为控制帧,所述根据第二预设方式生成所述畸变字段对应的第二数据,包括:
随机生成所述畸变字段对应的第二数据;其中,基于所述第二数据生成的所述测试帧的长度不超过第三预设长度。
可选地,计算机可执行指令在被执行时,所述根据所述畸变数据生成所述测试帧之后,还包括:
根据所述测试帧对所述无线通信协议是否存在风险进行测试处理。
本说明书一个或多个实施例提供的测试帧的生成设备,根据待测试的无线通信协议的版本信息和待生成的测试帧的类型信息,确定待处理的目标字段;基于预设的畸变策略获取该目标字段对应的畸变数据,并根据畸变数据生成测试帧。由此,兼顾无线通信协议的版本和帧的类型,基于畸变策略生成测试帧,使得生成的测试帧在具有有效性的基础上更具针对性,能够提升对待测试的无线通信协议的测试结果的准确性,有利于及时发现和修补无线通信协议存在的安全漏洞,从而避免给用户造成损失。
需要说明的是,本说明书中关于测试帧的生成设备的实施例与本说明书中关于测试帧的生成方法的实施例基于同一发明构思,因此该实施例的具体实施可以参见前述对应的测试帧的生成方法的实施,重复之处不再赘述。
进一步地,对应上述描述的测试帧的生成方法,基于相同的技术构思,本说明书一个或多个实施例还提供了一种存储介质,用于存储计算机可执行指令,一个具体的实施例中,该存储介质可以为U盘、光盘、硬盘等,该存储介质存储的计算机可执行指令在被处理器执行时,能实现以下流程:
确定待测试的无线通信协议的版本信息和待生成的测试帧的类型信息;其中,所述测试帧用于对所述无线通信协议是否存在风险进行测试;
根据所述版本信息和所述类型信息确定待处理的目标字段;
基于预设的畸变策略获取所述目标字段对应的畸变数据;
根据所述畸变数据生成所述测试帧。
可选地,该存储介质存储的计算机可执行指令在被处理器执行时,所述基于预设的畸变策略获取所述目标字段对应的畸变数据,包括:
确定所述目标字段中的填充字段和畸变字段;
根据第一预设方式获取所述填充字段对应的第一数据;
根据第二预设方式生成所述畸变字段对应的第二数据;
将所述第一数据和所述第二数据确定为所述畸变数据。
可选地,该存储介质存储的计算机可执行指令在被处理器执行时,所述类型信息表征所述测试帧为管理帧,所述畸变字段包括多个信息元素,所述信息元素包括长度字段和内容字段;
所述根据第二预设方式生成所述畸变字段对应的第二数据,包括:
根据所述无线通信协议对所述信息元素的格式规定,基于预设的第一变异策略确定所述长度字段对应的长度数据;
根据所述长度数据随机生成所述内容字段对应的内容数据;
将所述长度数据和所述内容数据确定为所述第二数据。
可选地,该存储介质存储的计算机可执行指令在被处理器执行时,所述类型信息表征所述测试帧为数据帧,所述根据第二预设方式生成所述畸变字段对应的第二数据,包括:
随机生成所述畸变字段对应的第二数据;其中,基于所述第二数据生成的所述测试帧的长度不超过第二预设长度;或者,
根据所述无线通信协议对所述畸变字段的格式规定,随机生成符合所述格式规定的第二数据;其中,基于所述第二数据生成的所述测试帧的长度不超过第二预设长度。
可选地,该存储介质存储的计算机可执行指令在被处理器执行时,所述类型信息表征所述测试帧为控制帧,所述根据第二预设方式生成所述畸变字段对应的第二数据,包括:
随机生成所述畸变字段对应的第二数据;其中,基于所述第二数据生成的所述测试帧的长度不超过第三预设长度。
可选地,该存储介质存储的计算机可执行指令在被处理器执行时,所述根据所述畸变数据生成所述测试帧之后,还包括:
根据所述测试帧对所述无线通信协议是否存在风险进行测试处理。
可选地,该存储介质存储的计算机可执行指令在被处理器执行时,所述根据所述测试帧对所述无线通信协议是否存在风险进行测试处理,包括:
向基于所述无线通信协议进行数据通信的被测设备发送所述测试帧;
获取所述被测设备对所述测试帧的解析日志;
根据所述解析日志确定所述无线通信协议是否存在风险。
本说明书一个或多个实施例提供的存储介质存储的计算机可执行指令在被处理器执行时,根据待测试的无线通信协议的版本信息和待生成的测试帧的类型信息,确定待处理的目标字段;基于预设的畸变策略获取该目标字段对应的畸变数据,并根据畸变数据生成测试帧。由此,兼顾无线通信协议的版本和帧的类型,基于畸变策略生成测试帧,使得生成的测试帧在具有有效性的基础上更具针对性,能够提升对待测试的无线通信协议的测试结果的准确性,有利于及时发现和修补无线通信协议存在的安全漏洞,从而避免给用户造成损失。
需要说明的是,本说明书中关于存储介质的实施例与本说明书中关于测试帧的生成方法的实施例基于同一发明构思,因此该实施例的具体实施可以参见前述对应的测试帧的生成方法的实施,重复之处不再赘述。
上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
在20世纪90年代,对于一个技术的改进可以很明显地区分是硬件上的改进(例如,对二极管、晶体管、开关等电路结构的改进)还是软件上的改进(对于方法流程的改进)。然而,随着技术的发展,当今的很多方法流程的改进已经可以视为硬件电路结构的直接改进。设计人员几乎都通过将改进的方法流程编程到硬件电路中来得到相应的硬件电路结构。因此,不能说一个方法流程的改进就不能用硬件实体模块来实现。例如,可编程逻辑器件(Programmable Logic Device,PLD)(例如现场可编程门阵列(Field Programmable GateArray,FPGA))就是这样一种集成电路,其逻辑功能由用户对器件编程来确定。由设计人员自行编程来把一个数字系统“集成”在一片PLD上,而不需要请芯片制造厂商来设计和制作专用的集成电路芯片。而且,如今,取代手工地制作集成电路芯片,这种编程也多半改用“逻辑编译器(logic compiler)”软件来实现,它与程序开发撰写时所用的软件编译器相类似,而要编译之前的原始代码也得用特定的编程语言来撰写,此称之为硬件描述语言(Hardware Description Language,HDL),而HDL也并非仅有一种,而是有许多种,如ABEL(Advanced Boolean Expression Language)、AHDL(Altera Hardware DescriptionLanguage)、Confluence、CUPL(Cornell University Programming Language)、HDCal、JHDL(Java Hardware Description Language)、Lava、Lola、MyHDL、PALASM、RHDL(RubyHardware Description Language)等,目前最普遍使用的是VHDL(Very-High-SpeedIntegrated Circuit Hardware Description Language)与Verilog。本领域技术人员也应该清楚,只需要将方法流程用上述几种硬件描述语言稍作逻辑编程并编程到集成电路中,就可以很容易得到实现该逻辑方法流程的硬件电路。
控制器可以按任何适当的方式实现,例如,控制器可以采取例如微处理器或处理器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(Application Specific Integrated Circuit,ASIC)、可编程逻辑控制器和嵌入微控制器的形式,控制器的例子包括但不限于以下微控制器:ARC 625D、Atmel AT91SAM、Microchip PIC18F26K20 以及Silicone Labs C8051F320,存储器控制器还可以被实现为存储器的控制逻辑的一部分。本领域技术人员也知道,除了以纯计算机可读程序代码方式实现控制器以外,完全可以通过将方法步骤进行逻辑编程来使得控制器以逻辑门、开关、专用集成电路、可编程逻辑控制器和嵌入微控制器等的形式来实现相同功能。因此这种控制器可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置也可以视为硬件部件内的结构。或者甚至,可以将用于实现各种功能的装置视为既可以是实现方法的软件模块又可以是硬件部件内的结构。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本说明书实施例时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
本领域内的技术人员应明白,本说明书一个或多个实施例可提供为方法、系统或计算机程序产品。因此,本说明书一个或多个实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本说明书可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本说明书是参照根据本说明书实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
本说明书一个或多个实施例可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本说明书的一个或多个实施例,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本文件的实施例而已,并不用于限制本文件。对于本领域技术人员来说,本文件可以有各种更改和变化。凡在本文件的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本文件的权利要求范围之内。

Claims (21)

1.一种测试帧的生成方法,包括:
确定待测试的无线通信协议的版本信息和待生成的测试帧的类型信息;其中,所述测试帧用于对所述无线通信协议是否存在风险进行测试;
基于预设的关联关系,根据所述版本信息和所述类型信息确定待处理的目标字段;
基于预设的畸变策略获取所述目标字段对应的畸变数据;
确定构成所述测试帧的各字段,基于所述无线通信协议规定的帧格式,根据确定的所述字段和获取的所述畸变数据生成所述测试帧。
2.根据权利要求1所述的方法,所述基于预设的关联关系,根据所述版本信息和所述类型信息确定待处理的目标字段,包括:
根据所述版本信息和所述类型信息,从预设的版本信息和类型信息与字段的第一关联关系中获取关联的字段,将获取的所述字段确定为待处理的目标字段。
3.根据权利要求2所述的方法,所述确定构成所述测试帧的各字段,基于所述无线通信协议规定的帧格式,根据确定的所述字段和获取的所述畸变数据生成所述测试帧,包括:
确定所述测试帧中是否包括具有固定数据的字段;
若是,则将所述固定数据的字段和所述畸变数据对应的字段确定为构成所述测试帧的各字段,根据所述无线通信协议规定的帧格式对所述固定数据和所述畸变数据进行拼接处理,得到所述测试帧;
若否,则将所述畸变数据对应的字段确定为构成所述测试帧的各字段,根据所述无线通信协议规定的帧格式对所述畸变数据进行拼接处理,得到所述测试帧。
4.根据权利要求1所述的方法,所述基于预设的关联关系,根据所述版本信息和所述类型信息确定待处理的目标字段,包括:
根据所述版本信息和所述类型信息,从预设的版本信息和类型信息与帧模板的第二关联关系中获取关联的目标帧模板;所述目标帧模板符合所述无线通信协议规定的帧格式;
将所述目标帧模板中处于待处理状态的字段确定为待处理的目标字段。
5.根据权利要求4所述的方法,所述确定构成所述测试帧的各字段,基于所述无线通信协议规定的帧格式,根据确定的所述字段和获取的所述畸变数据生成所述测试帧,包括:
将所述目标帧模板包括的字段确定为构成所述测试帧的字段,并将所述畸变数据填充至所述目标帧模板中的相应位置,将填充完成的所述目标帧模板确定为所述测试帧。
6.根据权利要求1所述的方法,所述基于预设的畸变策略获取所述目标字段对应的畸变数据,包括:
确定所述目标字段中的填充字段和畸变字段;
根据第一预设方式获取所述填充字段对应的第一数据;
根据第二预设方式生成所述畸变字段对应的第二数据;
将所述第一数据和所述第二数据确定为所述畸变数据。
7.根据权利要求6所述的方法,所述根据第一预设方式获取所述填充字段对应的第一数据,包括:
接收测试帧生成请求,从所述测试帧生成请求中获取所述第一数据;和/或,从指定位置获取预设的第一数据。
8.根据权利要求6所述的方法,所述类型信息表征所述测试帧为管理帧,所述畸变字段包括多个信息元素,所述信息元素包括长度字段和内容字段;
所述根据第二预设方式生成所述畸变字段对应的第二数据,包括:
根据所述无线通信协议对所述信息元素的格式规定,基于预设的第一变异策略确定所述长度字段对应的长度数据;
根据所述长度数据随机生成所述内容字段对应的内容数据;
将所述长度数据和所述内容数据确定为所述第二数据。
9.根据权利要求8所述的方法,所述基于预设的第一变异策略确定所述长度字段对应的长度数据,包括:
若确定第一预设长度与当前待生成所述测试帧的各字段的总长度的差值未超过长度阈值、且基于所述第一变异策略处理过的信息元素的数量未超过预设数量,则从当前未处理的信息元素中随机选择一个目标信息元素;
确定预设的多个第一变异策略中与所述目标信息元素相匹配的目标变异策略,基于所述目标变异策略确定所述目标信息元素的所述长度字段对应的长度数据。
10.根据权利要求9所述的方法,所述从当前未处理的信息元素中随机选择一个目标信息元素,包括:
从当前未处理的信息元素中随机选择一个信息元素作为候选信息元素;
确定所述当前未处理的信息元素中是否存在与所述候选信息元素相关联的关联信息元素;
若存在所述关联信息元素、且推算所述第一预设长度与基于所述第一变异策略处理后的所述候选信息元素和所述关联信息元素及当前待生成所述测试帧的各字段的总长度的差值未超过所述长度阈值、基于所述第一变异策略处理过的信息元素与所述候选信息元素和所述关联信息元素的总数量未超过预设数量,则将所述候选信息元素确定为目标信息元素,并将所述关联信息元素确定为下一个目标信息元素;
若不存在所述关联信息元素,则将所述候选信息元素确定为目标信息元素。
11.根据权利要求8所述的方法,所述第一变异策略包括以下中的任意一个或多个:
将所述无线通信协议规定的信息元素的长度与第二预设长度的加和确定为所述长度字段对应的长度数据;
将所述无线通信协议规定的信息元素的长度与第三预设长度的差确定为所述长度字段对应的长度数据;
将所述无线通信协议规定的信息元素的长度范围中的最小长度确定为所述长度字段对应的长度数据;
将所述无线通信协议规定的信息元素的长度范围中的最大长度确定为所述长度字段对应的长度数据;
将所述无线通信协议规定的信息元素的长度范围中的任意长度确定为所述长度字段对应的长度数据;
将所述无线通信协议规定的信息元素的长度范围中的最小长度与第四预设长度的加和确定为所述长度字段对应的长度数据;
将所述无线通信协议规定的信息元素的长度范围中的最大长度与第五预设长度的差确定为所述长度字段对应的长度数据;
将零确定为所述长度字段对应的长度数据;
将指定数据确定为所述长度字段对应的长度数据。
12.根据权利要求8所述的方法,所述方法还包括:
根据预设的第二变异策略对所述信息元素进行整体变异处理;其中,所述第二变异策略包括复制所述信息元素、删除不可缺少的信息元素中的一个或多个。
13.根据权利要求6所述的方法,所述类型信息表征所述测试帧为数据帧,所述根据第二预设方式生成所述畸变字段对应的第二数据,包括:
随机生成所述畸变字段对应的第二数据;其中,基于所述第二数据生成的所述测试帧的长度不超过第二预设长度;或者,
根据所述无线通信协议对所述畸变字段的格式规定,随机生成符合所述格式规定的第二数据;其中,基于所述第二数据生成的所述测试帧的长度不超过第二预设长度。
14.根据权利要求6所述的方法,所述类型信息表征所述测试帧为控制帧,所述根据第二预设方式生成所述畸变字段对应的第二数据,包括:
随机生成所述畸变字段对应的第二数据;其中,基于所述第二数据生成的所述测试帧的长度不超过第三预设长度。
15.根据权利要求1所述的方法,所述根据所述畸变数据生成所述测试帧之后,还包括:
根据所述测试帧对所述无线通信协议是否存在风险进行测试处理。
16.根据权利要求15所述的方法,所述根据所述测试帧对所述无线通信协议是否存在风险进行测试处理,包括:
向基于所述无线通信协议进行数据通信的被测设备发送所述测试帧;
获取所述被测设备对所述测试帧的解析日志;
根据所述解析日志确定所述无线通信协议是否存在风险。
17.一种测试帧的生成装置,包括:
第一确定模块,确定待测试的无线通信协议的版本信息和待生成的测试帧的类型信息;其中,所述测试帧用于对所述无线通信协议是否存在风险进行测试;
第二确定模块,基于预设的关联关系,根据所述版本信息和所述类型信息确定待处理的目标字段;
获取模块,基于预设的畸变策略获取所述目标字段对应的畸变数据;
生成模块,确定构成所述测试帧的各字段,基于所述无线通信协议规定的帧格式,根据确定的所述字段和获取的所述畸变数据生成所述测试帧。
18.根据权利要求17所述的装置,
所述获取模块,确定所述目标字段中的填充字段和畸变字段;
根据第一预设方式获取所述填充字段对应的第一数据;
根据第二预设方式生成所述畸变字段对应的第二数据;
将所述第一数据和所述第二数据确定为所述畸变数据。
19.根据权利要求17所述的装置,所述装置还包括:测试模块;
所述测试模块,根据所述测试帧对所述无线通信协议的运行状态进行测试处理。
20.一种测试帧的生成设备,包括:
处理器;以及,
被安排成存储计算机可执行指令的存储器,所述计算机可执行指令在被执行时使所述处理器:
确定待测试的无线通信协议的版本信息和待生成的测试帧的类型信息;其中,所述测试帧用于对所述无线通信协议是否存在风险进行测试;
基于预设的关联关系,根据所述版本信息和所述类型信息确定待处理的目标字段;
基于预设的畸变策略获取所述目标字段对应的畸变数据;
确定构成所述测试帧的各字段,基于所述无线通信协议规定的帧格式,根据确定的所述字段和获取的所述畸变数据生成所述测试帧。
21.一种存储介质,用于存储计算机可执行指令,所述计算机可执行指令在被处理器执行时实现以下流程:
确定待测试的无线通信协议的版本信息和待生成的测试帧的类型信息;其中,所述测试帧用于对所述无线通信协议是否存在风险进行测试;
基于预设的关联关系,根据所述版本信息和所述类型信息确定待处理的目标字段;
基于预设的畸变策略获取所述目标字段对应的畸变数据;
确定构成所述测试帧的各字段,基于所述无线通信协议规定的帧格式,根据确定的所述字段和获取的所述畸变数据生成所述测试帧。
CN202110191668.9A 2021-02-20 2021-02-20 测试帧的生成方法、装置及设备 Active CN112565026B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202110191668.9A CN112565026B (zh) 2021-02-20 2021-02-20 测试帧的生成方法、装置及设备
PCT/CN2022/076648 WO2022174790A1 (zh) 2021-02-20 2022-02-17 测试帧的生成

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110191668.9A CN112565026B (zh) 2021-02-20 2021-02-20 测试帧的生成方法、装置及设备

Publications (2)

Publication Number Publication Date
CN112565026A CN112565026A (zh) 2021-03-26
CN112565026B true CN112565026B (zh) 2021-06-04

Family

ID=75036040

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110191668.9A Active CN112565026B (zh) 2021-02-20 2021-02-20 测试帧的生成方法、装置及设备

Country Status (2)

Country Link
CN (1) CN112565026B (zh)
WO (1) WO2022174790A1 (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112565026B (zh) * 2021-02-20 2021-06-04 支付宝(杭州)信息技术有限公司 测试帧的生成方法、装置及设备
CN113535585A (zh) * 2021-08-03 2021-10-22 广域铭岛数字科技有限公司 一种测试数据生成方法及系统
CN113778879B (zh) * 2021-09-13 2024-03-08 上海幻电信息科技有限公司 接口的模糊测试方法及装置
CN115842792B (zh) * 2023-02-20 2023-05-12 之江实验室 一种数据处理方法、装置、存储介质及电子设备

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106326119A (zh) * 2016-08-19 2017-01-11 北京匡恩网络科技有限责任公司 测试用例生成方法及装置
CN110401581A (zh) * 2019-07-22 2019-11-01 杭州电子科技大学 基于流量追溯的工控协议模糊测试用例生成方法
CN111711636A (zh) * 2020-06-28 2020-09-25 杭州安恒信息技术股份有限公司 一种主机存活检测的方法、系统、设备及可读存储介质

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FI20080095A0 (fi) * 2008-02-11 2008-02-11 Codenomicon Oy Menetelmä ja järjestelmä testitapausten muodostamiseksi
KR101610916B1 (ko) * 2010-02-23 2016-04-11 삼성전자주식회사 근거리 통신을 위한 수신 장치와 그에 따른 통신 모드 검출방법
CN102437837B (zh) * 2011-08-22 2014-04-16 株洲南车时代电气股份有限公司 一种mvb和wtb测试帧的生成方法
CN104507101A (zh) * 2014-12-11 2015-04-08 华侨大学 一种异构无线传感器网络通信协议测试平台及其测试方法
KR101689795B1 (ko) * 2015-10-28 2016-12-26 아주대학교산학협력단 통신 프로토콜 소프트웨어의 취약성 검출 방법 및 시스템
CN107479531B (zh) * 2017-07-31 2019-08-20 杭州电子科技大学 嵌入式plc的接入设备通信协议帧格式信息远程确定方法
CN110474900B (zh) * 2019-08-13 2021-11-02 腾讯科技(深圳)有限公司 一种游戏协议测试方法及装置
CN111176977B (zh) * 2019-10-16 2021-08-03 腾讯科技(深圳)有限公司 一种安全漏洞自动识别方法和装置
CN111679990B (zh) * 2020-06-17 2023-08-08 北京字节跳动网络技术有限公司 测试数据生成方法、装置、可读介质及电子设备
CN112565026B (zh) * 2021-02-20 2021-06-04 支付宝(杭州)信息技术有限公司 测试帧的生成方法、装置及设备

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106326119A (zh) * 2016-08-19 2017-01-11 北京匡恩网络科技有限责任公司 测试用例生成方法及装置
CN110401581A (zh) * 2019-07-22 2019-11-01 杭州电子科技大学 基于流量追溯的工控协议模糊测试用例生成方法
CN111711636A (zh) * 2020-06-28 2020-09-25 杭州安恒信息技术股份有限公司 一种主机存活检测的方法、系统、设备及可读存储介质

Also Published As

Publication number Publication date
WO2022174790A1 (zh) 2022-08-25
CN112565026A (zh) 2021-03-26

Similar Documents

Publication Publication Date Title
CN112565026B (zh) 测试帧的生成方法、装置及设备
US9686023B2 (en) Methods and systems of dynamically generating and using device-specific and device-state-specific classifier models for the efficient classification of mobile device behaviors
US9141801B2 (en) Apparatus and method for analyzing permission of application for mobile devices and detecting risk
KR101373986B1 (ko) 모델을 사용하여 실행가능 프로그램을 조사하는 방법 및 장치
US10481964B2 (en) Monitoring activity of software development kits using stack trace analysis
US9998488B2 (en) Protection system including machine learning snapshot evaluation
CN109214632B (zh) 一种风险控制方法及设备
CN110445769B (zh) 业务系统的访问方法及装置
US9811605B2 (en) Methods, apparatuses and computer program products for automated learning of data models
EP3401823B1 (en) Security verification method and device for smart card application
CN113079200A (zh) 一种数据处理的方法、装置及系统
US10867050B2 (en) Method and apparatus for generating dynamic security module
CN110781192B (zh) 区块链数据的验证方法、装置及设备
US20190325134A1 (en) Neural network detection of malicious activity
CN105812313B (zh) 恢复会话的方法和服务器、生成会话凭证的方法和装置
CN109145589B (zh) 应用程序获取方法及装置
CN114546639A (zh) 服务调用处理方法及装置
CN111737304B (zh) 一种区块链数据的处理方法、装置及设备
CN111078435A (zh) 业务处理方法、装置及电子设备
CN111753270A (zh) 应用程序登录验证方法、装置、设备和存储介质
KR102106484B1 (ko) 정보 표시 방법, 단말 및 서버
CN112182509A (zh) 一种合规数据的异常检测方法、装置及设备
CN113282628A (zh) 大数据平台访问方法、装置及大数据平台、电子设备
CN107451050B (zh) 函数获取方法和装置、服务器
CN110737911A (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