使用whistle抓包实战

  • 官方文档
  • 安装
  • 启动
  • 浏览器挂上代理,开始抓包
  • 设置https抓包
  • 使用whistle mock数据
    • mock接口返回的status code
    • mock接口返回值response
  • 使用whistle 设置弱网
  • proxy代理设置。把请求转发到vpn
  • 使用whistle重发请求--Compose请求重发

官方文档

http://wproxy.org/whistle/

安装

需要先安装node.js

npm install -g whistle

启动

w2 restart


浏览器挂上代理,开始抓包

● 使用switchyomega,新建情景模式,设置代理
switchyomega下载 https://proxy-switchyomega.com/download/


● 启用whsitle代理

● 抓到包啦

设置https抓包

● 输入
w2 ca
● 弹出正式信任设置,信任次操作

● 点击Https->勾选Capture Tunnel CONNECTs

● 浏览器访问百度,输入whilstle

● 设置过滤信息。抓到了https包啦


使用whistle mock数据

案例:雪球抓包(因为它可以抓到https的请求。感谢雪球)

找一个方便观察的接口,就这个吧。热股榜
https://stock.xueqiu.com/v5/stock/hot_stock/list.json?

mock接口返回的status code

● Rules中增加一个规则如下
https://stock.xueqiu.com/v5/stock/hot_stock/list.json replaceStatus://500

● 刷新雪球的页面,热榜这一块没有数据啦。并且接口返回的status code为500

● 实际上,请求的结果是正常返回的。只是返回给前端的statusCode被修改了。

方便用来测试一些异常的状态码,前端给出的反应是否合理等。例如一些需要等待的过程,如果接口报错了,一直卡在加载中,就不太友好啦。

更多详情查看官网:
http://wproxy.org/whistle/rules/replaceStatus.html

mock接口返回值response

resMerge
修改响应类型为application/json或text/javascript的响应内容,其功能是通过resMerge://jsonData指定的JSON对象覆盖响应内容里面的JSON对象。
配置方式:
pattern resMerge://filepath

● 设置规则
https://stock.xueqiu.com/v5/stock/hot_stock/list.json resMerge://{hot_stock_api.json}

● copy接口的返回值。在values中添加一个hot_stock_api.json,把接口返回的json粘贴在此处,修改其中的字段。例如修改第一个tiems中的 name、value。保存

● 刷新雪球页面。mock成功啦。

● 也可以这样配置
https://stock.xueqiu.com/v5/stock/hot_stock/list.json resMerge://(data={}&error_code=0&error_description="hhhh")

● 刷新页面。查看接口返回

在我需要测试一些异常的数据,例如金额很大、很小的情况下,就可以用mock的方式来构造数据看前端的展示情况啦。

resMerge://后面也可以放一个本地的路径。如果需要构造很多数据的时候,也可以构造一个多数据的json,引用本地的json文件。

更多详情查看官网:
http://wproxy.org/whistle/rules/resMerge.html

使用whistle 设置弱网

resDelay
设置延迟响应的时间(单位:毫秒),配置方式:
pattern resDelay://timeMS

● 设置规则
https://stock.xueqiu.com/v5/stock/hot_stock/list.json resDelay://2000

● 刷新看雪球的页面

resSpeed
设置响应速度(单位:kb/s,千比特/每秒),配置方式:
pattern resSpeed://kbs

● 设置规则
https://stock.xueqiu.com/v5/stock/hot_stock/list.json resSpeed://1

● 刷新页面

resDelay可以帮我们设置时间的延迟,resSpeed可以帮我们设置每秒返回的kbs。同样可以帮助我们模拟,弱网状态下,前端的一些反应状态。

更多详情可以查看官网:
http://wproxy.org/whistle/rules/resSpeed.html
http://wproxy.org/whistle/rules/resDelay.html

proxy代理设置。把请求转发到vpn

● 在rules中设置规则,把所有请求转发到vpn端口

● 访问一下google试试,输入pytest,搜索

● 查看抓包信息。哦吼,抓到啦

● 如果我们把这条规则注释掉会怎么样?

● 当然是访问不了google啦

如果是公司代理,设置规则转发到公司的代理上。再尝试访问公司的内部网站,看能不能访问到。

更多代理设置可以查看官网:
http://wproxy.org/whistle/rules/proxy.html
愉快抓包把。

使用whistle重发请求–Compose请求重发

● 选中一条请求,点击Compose

● 修改请求参数,重新发送请求

● 重新发送请求成功


当我们需要传一些异常的数据,前端做了限制,无法输入,我们也可以使用Compose来重新构造发送请求。

当然工具的使用有一定的局限性。例如,请求参数加密的情况下,我们需要额外把参数加密之后再传过去。

如果你有兴趣,可以看看官网的插件开发。自己开发一个插件来支持这种功能。

使用whistle抓包实战相关推荐

  1. Charles抓包实战详解

    访问我的博客 前言 通过上一篇文章,想必你已经掌握了如何正确安装抓包神器 Charles,如果还是抓不了包,可以再看看. 今天要做是抓包实战,因为我在做网络文学的公司就职,所以就拿网络文学的 APP ...

  2. 如何通过抓包实战来学习Web协议?

    我发现大部分技术人,多多少少都会遇到下面的困惑,比如: AJAX 跨域访问时总被浏览器的同源策略阻止,其背后的原理及符合其设计思想的解决方案是什么? 缓存可以提升性能,但什么样的 HTTP 消息才会被 ...

  3. http抓包实战 pdf_网络协议HTTP 协议(抓包实战和网络分层)

    这篇文章主要介绍一下 Wireshark 抓包工具获取到的 HTTP协议 相关的数据,然后对这些数据进行简单的分析,主要目的是更深入的理解 HTTP协议,然后了解一下网络为什么要分层, OSI模型和T ...

  4. Whistle 抓包简易教程

    详细内容请看Whistle官网 Whistle 是基于Node实现的跨平台调试代理工具. 安装流程 1. 安装 node 终端输入 node -v 检查 node 是否安装成功 2. sudo npm ...

  5. Web协议详解与抓包实战之HTTP1.1 学习笔记【一】

    Web协议详解与抓包实战之HTTP1.1[一] 前言 <Web协议详解与抓包实战>课程学习,陶辉老师主讲 学习内容: HTTP–TLS/SSL–TCP/IP自上而下根据应用学习web协议H ...

  6. whistle抓包工具应用

    原文地址:(67条消息) whistle抓包工具学习_BBC蟹耳总的博客-CSDN博客_w2 抓包 一.安装whistle 首先安装好whistle抓包工具,有以下两个步骤 在终端中全局安装whist ...

  7. HTTP抓包实战_肖佳

    HTTP抓包实战_肖佳 0 前言 1 HTTP协议和Fiddler抓包 1.1.3 HTTP协议的工作原理 1.2.1 Fiddler的下载和安装 1.2.2 Fiddler的基本界面 1.2.4 W ...

  8. 非常【刑】又可【拷】的fiddler抓包实战 涵盖使用教程/下载安装/抓取手机app

    Fiddler是一款非常强大的网络抓包工具,可以帮助我们分析HTTP/HTTPS协议的流量,从而深入了解网站的运行机制,发现安全风险和性能问题.下面是Fiddler工具的基础使用方法. 视频教程:非常 ...

  9. http抓包实战 pdf_实战 Wireshark https 抓包 2, 再抓 Moka 蹭 OurATS 的小尾巴

    在昨天的文章 实战 Wireshark https 抓包,抓住 Moka 蹭 OurATS 的小尾巴 里,我们通过 chromium-browser 的 SSLKEYLOGFILE 环境变量特性,实现 ...

最新文章

  1. python全栈学习笔记(一)网络基础之网络协议篇
  2. 「无糖快乐水」就安全了?不不,心血管疾病的风险照样增加
  3. 第二十五章补充内容 3 assert()宏
  4. 操作系统原理: 操作系统概述
  5. [转]使用VS2010的Database 项目模板统一管理数据库对象
  6. 【快速入门Linux】2_Linux命令—基本使用
  7. java整人_写了一个整人程序,较简单,有兴趣者可以看看
  8. 假设检验——抽样调查的结论依赖于样本量的大小
  9. 超级烧脑惊悚悬疑电影《恐怖游轮》(原片+解说)
  10. python 输出语句
  11. java接收前端参数
  12. vm安装android,Vmware虚拟机安装安卓4.0系统教程
  13. 北航计算机专业最低分,北京航空航天大学2020年本科录取线发布,最低分572
  14. 微信小程序第七章 图片替换
  15. 莫比乌斯反演入门题目(详细)
  16. 技术宅用3D打印帮助妻子治疗脑瘤
  17. unity3D学习10 AR/MR技术
  18. 7:第三章:电商工程分析:2:电商工程业务解读与微服务拆分;
  19. 加州大学河滨分校计算机科学专业,美国加州大学河滨分校计算机科学硕士专业申请.pdf...
  20. 华为 HCIA-AI V3.0 认证人工智能工程师考试

热门文章

  1. PyDev for Eclipse 简介
  2. 使用HTML+CSS制作加载动画
  3. 技嘉服务器主板装系统,技嘉AB350M-DS3H主板u盘重装系统win7教程
  4. 淘宝电影成全国最大在线选座平台 覆盖702家影院
  5. GPRS模块SIM300硬件分析
  6. 【计算机组成原理】计算机硬件的基础组成、认识各个硬件部件
  7. 关于出现error: expected declaration or statement at end of input [solution.c]
  8. bootstrap_blue_print_volume ii 读书笔记
  9. Intel 11代 CPU 更新Win 10 20H2 后显示问题
  10. 三菱服务器报警je系列c01,MR-JE-70A手册三菱伺服放大器MR-JE-70A故障排除篇操作手册 - 广州凌控...