TangGo | 模糊测试工具-混合型数据

admin 2024年2月21日23:02:56评论15 views字数 2787阅读9分17秒阅读模式
 

01 测试场景
公司给定了你一个网站,并给定了你一份包含账号和密码的数据文档,请你访问对应的网站,检测账号和密码是否具有有效性,并对有效的账号和密码进行导出。已知网站包含图片型验证码,成功登录网站后,网站会给出“登录成功”的提示。

02 测试案例
抓包数据

打开HTTP抓包测试工具,使用内置浏览器打开测试网页:

TangGo | 模糊测试工具-混合型数据

该页面由三部分组成,分别是用户名、密码和验证码,因为每次登录都需要填写验证码,因此需要抓取验证码请求的数据包来提取其中的验证码。

回到 HTTP 抓包测试工具,打开拦截请求TangGo | 模糊测试工具-混合型数据,回到浏览器,点击验证码图片TangGo | 模糊测试工具-混合型数据,可以看到 HTTP 抓包测试工具中抓取到一个数据包:

TangGo | 模糊测试工具-混合型数据

把该数据发送到重放模块,方便保存数据和后续查看,点击右键选择发送到数据重放TangGo | 模糊测试工具-混合型数据,等待页面自动跳转 HTTP 重放页面后,点击TangGo | 模糊测试工具-混合型数据按钮,可以得到返回数据是一个图片的验证码-->点击右侧“页面浏览”可以看到返回的数据是一个验证码图片。为了方便后续文中使用暂时把抓取到的数据包称之为“验证码请求数据包”。

TangGo | 模糊测试工具-混合型数据

回到内置浏览器,随便填入账号和密码还有验证码:

TangGo | 模糊测试工具-混合型数据

点击关闭TangGo | 模糊测试工具-混合型数据按钮,放掉刚刚拦截的验证码数据包,然后再次点击TangGo | 模糊测试工具-混合型数据按钮,回到浏览器,点击登录按钮后抓包此次数据,将此次数据发送到HTTP模糊测试工具中进行账号和密码有效性验证:

TangGo | 模糊测试工具-混合型数据

设置账号密码

步骤1-设置请求参数

使用添加标记依次对用户名字和密码进行标记:

TangGo | 模糊测试工具-混合型数据

打开给定的测试数据文档,查看给定的账号和密码,观察后发现账号和密码之间都是使用5个"-"隔开。

TangGo | 模糊测试工具-混合型数据

步骤2-设置变体参数

2.1. 重放模式:

选择多字典协同模式:根据给定的测试文本可以发现,账号和密码是一一对应的关系,虽然只有一个文本,但根据特定的字符拆开后,会获得多个文本,所以应该选择多字典协同模式。

TangGo | 模糊测试工具-混合型数据

2.2.变体赋值:

1. 设置变体对应的值,点击导入,导入之前的测试文本:

TangGo | 模糊测试工具-混合型数据

2. 因为该测试文本使用字符串“-----”对数据做了分割,所以下面使用规则赋值以便提取对应数据:

TangGo | 模糊测试工具-混合型数据

使用规则如下:

  • 处理方式:因为是字符串分割开,所以选择变体值字符串分割。
  • 使用如下字符串分割原始数据:选择被分割的字符串,这里是“-----”。
  • 提取分割后的第N块数据:选择分割后需要的部分,这里选择 1。
TangGo | 模糊测试工具-混合型数据

设置完成规则后,点击小眼睛可以看到数据预览:

TangGo | 模糊测试工具-混合型数据

TangGo | 模糊测试工具-混合型数据

这样就得到了账号的数据。

同理对于密码部分数据操作也同上:导入文本-->设置规则:此时分割后应选择第2部分-->预览数据

TangGo | 模糊测试工具-混合型数据

设置验证码

因为每次发送请求测试都需要填写对应的验证码,所以需要对验证码进行识别,点击:自定义流程-->发包前流程-->新建

TangGo | 模糊测试工具-混合型数据

操作类型:因为要识别验证码,所以选择识别并提取验证码。

填写验证码结果绑定变量,填写响应数据绑定变量。

TangGo | 模糊测试工具-混合型数据

验证码请求设置有两种方法,选择其一设置即可:

方法一

验证码URL地址:填写验证码请求数据的请求地址。

TangGo | 模糊测试工具-混合型数据

URL来源:找到之前抓取到并且命名为“验证码请求数据包”的数据,方法是点击操作-->第三方请求转换-->复制数据包请求 URL

TangGo | 模糊测试工具-混合型数据

方法二

填写验证码请求包数据:找到之前命名为“验证码请求数据包”的数据包,然后填入。

TangGo | 模糊测试工具-混合型数据

注意收到提示没有删除”cookie“,因为每次请求需要使用私有的cookie管理,所以需要删掉原有数据包中的”cookie“:

TangGo | 模糊测试工具-混合型数据

TangGo | 模糊测试工具-混合型数据

选择识别引擎为AI识别引擎(专业版)。

TangGo | 模糊测试工具-混合型数据

往下浏览继续设置验证码处理设置:

因为验证码长度固定为 4 位,所以选择验证码长度应当是4位,错误则最多重试 n ,如果验证码识别不是 4 位的时候会重新识别 n 次。

TangGo | 模糊测试工具-混合型数据

点击测试,观察我们之前的浏览数据,验证码请求图片如下:

TangGo | 模糊测试工具-混合型数据

验证码识别结果如下:

TangGo | 模糊测试工具-混合型数据

回到TangGo | 模糊测试工具-混合型数据页面,单击右键插入变量,插入验证码识别变量绑定名称。

解释:验证码识别变量为处理后得到的验证码结果。响应响应数据绑定变量为请求数据包后得到的响应数据包结果。

TangGo | 模糊测试工具-混合型数据

选择TangGo | 模糊测试工具-混合型数据页面,点击测试配置

设置每轮测试使用私有的cookie管理器。

TangGo | 模糊测试工具-混合型数据

这里不设置可能会收到提示,所以建议启用。

TangGo | 模糊测试工具-混合型数据

接下来就可以点击右上角启动测试了。

细节处理

对于发送的数据,识别验证码也不能做到百分之百的成功,有些数据包会提示“验证码错误”:

TangGo | 模糊测试工具-混合型数据

这里糖果教大家一些处理的方法,对于这种情况需要对发包后的数据再次判断:

预期规则:发包后的数据中出现验证码输入错误-->重新发送此包。设置如下:

自定义流程页面-->发包后流程-->新建

TangGo | 模糊测试工具-混合型数据

设置从关键节点条件判断;匹配如上规则则重新进行本轮测试:

TangGo | 模糊测试工具-混合型数据

点击蓝色选项框新建选项,在弹出的新建匹配规则中进行如下设置:

TangGo | 模糊测试工具-混合型数据

设置规则发包运行如下:

  • 对象类型:因为需要提取响应后的数据,所以选择模糊测试响应数据。
  • 对象属性:因为需要提取内容,所以选择 HTTP 响应 Body。
  • 判断方法:因为需要包含指定的内容,所以选择包含字符串。
  • 特征数据:填写需要匹配的特征数据,这是为字符串“验证码”。
设置完成后,如果响应数据中包含“验证码”的字符串的时候,则会重新发送数据。

同时,公司还要求我们将正确的账号和密码导出。

因此测试完成后,需要得到正确的账号和密码并且提取出来对应的数据,所以应该筛选出来符合要求的数据,点击测试过程

TangGo | 模糊测试工具-混合型数据

点击匹配规则,点击蓝色框选添加选项:

TangGo | 模糊测试工具-混合型数据

设置规则如下:

  • 匹配位置:匹配内容应该是响应数据,所以选择 HTTP 响应 Body。
  • 匹配类型:根据匹配内容中的文字选择,所以应该选择包含字符串。
  • 匹配规则:填写对应的特征数据,这里应该为字符串“登录成功”。
设置此规则后,请求的响应包中包含字符串“登录成功”的,在测试结果的匹配列中会显示“是”。

开始测试

点击右上角启动测试后可以看到:

数据包成功触发了判断,对于验证码错误的数据包,重新进行本轮测试。

TangGo | 模糊测试工具-混合型数据

如果想查看某一个发送的数据包执行了什么流程,操作如下:

点击你想查看的数据包,点击右侧自定义流程,查看是否执行了发包前/后流程:

TangGo | 模糊测试工具-混合型数据

详细查看:在发包前流程中,点击图标TangGo | 模糊测试工具-混合型数据,可以查看发包的验证码图片和识别的验证码字符串:

TangGo | 模糊测试工具-混合型数据

TangGo | 模糊测试工具-混合型数据

很明显可以查看到,该数据验证码错误(数字“0”和字母“O”),所以查看发包后流程,在判断结果中显示为“true”,说明该判断生效:

TangGo | 模糊测试工具-混合型数据

查看处理结果,可以看到成功触发了设置规则:重新进行本轮测试。

TangGo | 模糊测试工具-混合型数据

为了导出登录成功的账号和密码,匹配筛选为是的响应包:

可以得到匹配规则包含字符串“登录成功”的账号和密码。

TangGo | 模糊测试工具-混合型数据

数据导出

最后只需要导出数据,点击右上角TangGo | 模糊测试工具-混合型数据

TangGo | 模糊测试工具-混合型数据

选择匹配数据为是的数据包,这里面的数据为登录成功的数据包:

TangGo | 模糊测试工具-混合型数据

打开导出后的文件。删除不需要的列,修改对应的列名,最后就可以得到正确的账号和密码表了。

注意:此处末尾的符号为处理导出数据不显示一些字符特意添加,不影响正常数据读取和使用。

TangGo | 模糊测试工具-混合型数据

总结,本次案例的操作流程如下所示:

TangGo | 模糊测试工具-混合型数据

注意:工具使用内容请以最新版本为主。

下载和反馈

01 TangGo社区版本下载:
· https://tanggo.nosugar.tech/

02 反馈问题:
· https://tanggo.nosugar.tech/#/feedback

 

原文始发于微信公众号(无糖反网络犯罪研究中心):TangGo | 模糊测试工具-混合型数据

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2024年2月21日23:02:56
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   TangGo | 模糊测试工具-混合型数据https://cn-sec.com/archives/2513174.html

发表评论

匿名网友 填写信息