iOS抓包工具—Stream

简介

关于抓包工具我们很容易想到charles,Fiddler,Wireshark这些常用的工具,但是如果我们抓包环境没有PC或者PC环境不可用,如:想在移动运营商网络环境下抓包,那么该怎样进行抓包呢?

Stream是一款在iOS端的网络抓包工具,该工具可以直接独立运行在iOS设备,无需依赖PC环境。
Stream 面向对象为广大前端开发、客户端开发、后端开发、运维工程师、测试工程师以及具备一定网络分析能力的普通用户。

下载安装

该工具需要在App store上进行下载安装。

stream_appstore

安装完成后启动应用,如下图所示可以看到应用的主界面。

stream_index

抓包请求

在主界面点击开始抓包按钮,界面顶部显示VPN标志表示开始抓包,然后启动需要抓包的应用进行操作即可。操作完成之后回到Stream然后点击停止抓包即可。

start_recording

抓包完成后想查看抓包数据点击抓包历史按钮即可进入抓包历史列表。

recording_list

根据抓包时间点击抓包记录,即可进入抓包操作的全部请求。全部请求中可以选择按域名或者按进程来分类。

all_recoder

点击单个请求可以查看请求和响应的详细内容。

recording_request

recording_response

构建请求

Stream除了可以自动抓包之外,还可以进行手动构建请求,类似Postman工具的作用。在主界面点击构建请求即可进入到构建请求界面。

create_request

Get请求

点击请求方法弹出菜单可以选择8种请求方式,不过我们一般常用的就是PostGet请求,这里我们先使用默认的请求Get

点击请输入链接 这里我们输入链接http://httpbin.org/get 然后点击右上角保存修改。

edit_url

在构建请求界面点击右上角的发送请求按钮 即可发送请求。点击响应菜单即可查看响应数据。

get_response

在响应界面我们查看到响应头部响应体内容,一般我们会比较关注响应体的内容,点击Response Body 可以查看详细的响应内容。

response_body

Post请求

上面我们已经完成了不带参数的Get请求,如果我们想进行带参数的Post请求那么该如何构建?

首先在构建请求界面点击方法栏,然后选择Post请求方式,点击链接菜单输入http://www.httpbin.org/post

post_url

选择Post请求类型后请求体菜单栏中可以切换类型,Stream支持四种类型的数据,关于不同请求体类型请参考:HTTP协议 这里我们选择普通表单

request_body

request_body_type

字段列表输入参数名称,这里我输入参数city点击添加按钮,然后点击修改字段值

field_name

set_field_value

输入参数值beijing点击保存修改

input_param_value

在构建参数界面点击右上角发送按钮

post_request_start

请求发送之后可以看到响应状态码为200说明请求成功。

post_response

点击Response body可以查看到响应内容中有我们传递的参数。

response_body_param

其他功能

HTTPS抓包

如果想要使用StreamHTTPS进行抓包,需要安装CA证书。点击安装CA证书,然后直接安装证书。

stream_ca

stream_ca_allow

stream_install

安装好证书之后,在设置-通用-关于本机-证书信任设置信任证书即可。

stream_ca_trust

stream_trust_finished

Hosts设置

如果想对Host设置可以点击主界面Hosts设置菜单,然后点击添加绑定对应的域名和IP地址。

stream_hosts

收藏请求

如果想收藏某个单个请求,可以在请求详情界面点击收藏按钮

stream_collect

收藏之后可以在主界面查看收藏列表。

stream_collect_list

抓包模式

黑名单

点击界面中的设置抓包模式,则进入到设置界面,如下图所示:

stream_black_white

stream_blackList_setting

我们可以从上图得知黑白名单的用途,若设置了具体的黑名单,抓取的请求则是除了具体黑名单外的接口数据。例如上图中我们设置黑名单域名为*.baidu.com表示会忽略百度相关的网络请求。*表示通配符,点击立即生效会开始生效规则。

白名单

白名单表示只抓取设置的域名请求,如下图所示,我们设置的域名是*.sougou.com表示抓取搜狗相关的网络请求。

stream_white_setting

常用工具

  • 常用工具里面包含一些网络调试用的小工具,主要如下:
  • URL编码解码
  • Base64 加密解密
  • MD5
  • 时间戳转化
  • RSA加密解密

stream_tools

参考资料