目录
通常的协议模糊测试是模糊测试工具模拟client或者server的一端,来测试协议的另一端。这样需要模糊测试工具实现较完整的协议交互状态
本测试套采用另一种测试方式,模糊测试工具充当中间人角色,接收client发送来的数据 ,变异后发送给server。
这种测试方法省略了状态模型的实现,但是想要测试充分仍然要实现通用的数据模型。
标准名称 | 标准说明 |
名称 | 说明 | 例如 |
server_dstIp | 测试目标ip地址 | 192.168.3.1 |
server_dstPort | 测试目标端口 | 53 |
client_srcIp | Client端的ip地址 | 192.168.3.231 |
client_srcPort | 监听端口,一般与测试目标端口相同 | 53 |
timeout | 3 | |
outputCount | 一次完整交互从client到server的报文数量 | 1 |
inputCount | 一次完整交互从server到client的报文数量 | 1 |
send_server | 从client发送到server的所有 报文 | |
//下面配置用来告诉工具一次完整交互收发包数量,以便工具找到一次完整交互的结尾。
outputCount
inputCount
注:
需要client端将server配置成本机
测试时需要反复触发client,并且每次测试触发同一协议流程,不同协议流程需要分别测试
client测试触发间隔必须大于timeout设置时长,以便同步
针对具体协议测试,需要测试人员根据协议标准将send_server数据模型补充完整,并且模型实现的尽量通用(所有数据包一个模型都能解析)
(当然也可以不补充,直接变异)
。
想要使用tcp还是udp或者tls,需要将发包器的名字改成server,client才能生效
其他类型可以手动修改本测试套public类型,并根据需要手动增删配置
客服1