前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >Wireshark、Burpsuite、Charles三大抓包神器抓取https明文

Wireshark、Burpsuite、Charles三大抓包神器抓取https明文

原创
作者头像
RokasYang
修改于 2021-09-09 23:34:14
修改于 2021-09-09 23:34:14
32.1K0
举报
文章被收录于专栏:RokasYangRokasYang

一、wireshark抓取https报文

1.系统变量配置

通过设置系统变量SSLKEYLOGFILE来达到解密https的效果,tls握手结束后,会将session key存放到SSLKEYLOGFILE定义的keylog中,wireshark通过加载keylog文件,将https解密成明文。

打开电脑属性-->高级系统设置-->环境变量,设置文件路径:

2.Pre-Master-Secret配置

在wireshark首选项中,选择TLS协议,编辑Pre-Master-Secret文件路径:

3.抓包实战

如下我们抓取到一条腾讯云官网的https报文,解密后如下,HTTP头部、请求方法(GET)都可以直观看到:

二、burpsuite抓取https报文

burpsuite在渗透领域占有一席之地,有拦截阻断、改包、爆破等各种强大功能,当然也包括作为中间人给client转发并解密的能力,burpsuite可通过此链接下载,解压密码为Rokas.Yang,需要安装JDK环境后使用。

1.配置代理监听器

Proxy --> Options --> Proxy Listeners,设置本地回环地址即可

浏览器设置代理为本地8080端口

那么所有通过浏览器访问的请求,都会先经过burpsuite

2.配置Intercept

Intercept顾名思义,用于拦截改包,如果只是为了解密https,不进行改包操作,将此选项置为off即可:

3.安装Burpsuite签发的CA证书

设置代理后,访问http://burp即可,burpsuite会将http://brup劫持,提供证书下载的web页面,下载内置证书到本地:

导入到受信任证书的列表即可:

4.开始抓包

一切都准备就绪后,浏览器开始访问,还是以腾讯云官网为例:

进入到HTTP hitory页面,这里会实时显示刚刚抓到的包,可以清晰看出,https解密后报文里面的内容为client向腾讯云服务器发送了一条HTTP GET请求,并得到了响应。

同时可以精细化过滤我们想要的请求,支持正则表达式:

Target模块中Site map是整理好的站点地图:

5.手机终端通过Burpsuite代理抓取明文

代理模块设置监听地址为本地内网IP:

手机通过同一局域网络,设置WIFI代理到本机IP:PORT即可

同理,手机端也需要安装burp CA证书,burp下载的证书为.der后缀格式,有些手机无法识别此格式文件,为此我转成了.cer格式,下载链接:https://data.linux-code.com/?dir=filelist/Software/CA,下载并安装burp-cacert.cer文件即可。

此时手机访问外网,会经过本地电脑的burpsuite再到路由器出去,所有流量都会被burpsuite截取并转发出去,包括手机APP。

我们抓取京东APP的数据为例:

https被成功解密成了明文。

三、charles抓取https报文

charles是一款小巧的代理抓包工具,同样具备颁发CA证书,解密https的功能,官方下载链接:https://www.charlesproxy.com/download/latest-release

1.代理配置

Proxy --> SSL Proxying Settings,如下图,打开SSL代理,并配置代理内容,所有主机端口

Proxy --> Proxy Settings设置代理端口,默认为8888,并且默认会代理本机

2.安装CA证书

浏览器设置代理到本机 8888端口后,访问http://chls.pro/ssl自动下载证书文件,pem格式,电脑可能无法识别,同理我转换了一份.crt格式的,在https://data.linux-code.com/?dir=filelist/Software/CA下载安装即可,导入方式和安装Burpsuite的CA证书一致,这里不再赘述。

3.抓包实战

接下来尝试抓取https请求,同样以腾讯云官网为例:

浏览器打开官网后,可以看到CA根证书就是我们导入的证书,并抓取到https明文:

Structure整理好了每个站点的访问结构,类似于sitemap的功能:

4.手机终端通过charles代理抓取明文

和burpsuite的配置逻辑一致,手机WIFI设置代理到本地电脑的charles监听端口(默认8888),证书安装亦是如此,不再赘述。

同理我们抓取下京东APP的https请求:

成功抓取到http明文请求及响应头。

四、总结

三款软件有抓取https明文的能力,但适用场景有所不一样:

  • wireshark更适用于协议层面的分析定位,没有拦截、改包功能;
  • burpsuite功能强大,功能基本覆盖了charles,两者都具备中间人转发能力,但仅仅停留在HTTP协议层面;
  • charles小巧精简,不具备拦截改包能力,适用于分析终端设备网络场景。

同时上传了PDF版本: Wireshark、Burpsuite、Charles三大抓包神器抓取https明文.pdf

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
TensorFlow2.0(1):基本数据结构——张量
TensorFlow2.0版本已经发布,虽然不是正式版,但预览版都发布了,正式版还会远吗?相比于1.X,2.0版的TensorFlow修改的不是一点半点,这些修改极大的弥补了1.X版本的反人类设计,提升了框架的整体易用性,绝对好评!
统计学家
2019/12/23
1.5K0
2个范例带你读懂TensorFlow2低阶API构建模型方法
下面的范例使用TensorFlow的低阶API实现线性回归模型和DNN二分类模型。
lyhue1991
2020/07/20
1.2K0
2个范例带你读懂TensorFlow2低阶API构建模型方法
TensorFlow2 一小时学会基本操作 2
https://iamarookie.blog.csdn.net/article/details/117651502
润森
2022/09/22
3260
TensorFlow2 一小时学会基本操作 2
Tensorflow技术点整理(二)
这里跟PyTorch不同的是序号定义的不同,PyTorch是上下定义位置,而Tensorflow是左右定义位置。
算法之名
2022/03/24
4150
Tensorflow技术点整理(二)
TensorFlow2 一小时学会基本操作 1
https://iamarookie.blog.csdn.net/article/details/117591977
润森
2022/09/22
3780
TensorFlow2 一小时学会基本操作 1
Tensorflow2.0常用基础API
tensorflow2.0改进之后已经非常像numpy形式了,不用像之前的session那样操作,一些基本的操作如下。需要注意的店以及部分数据均写在代码注释中。
Mirza Zhao
2023/06/26
7890
TensorFlow张量知识
皮大大
2023/08/23
3130
TensorFlow张量知识
TensorFlow2.0(2):数学运算
可以看出,对于基本运算加(+)、减(-)、点乘(*)、除(/)、地板除法(//)、取余(%),都是对应元素进行运算。
统计学家
2019/12/23
2K0
TensorFlow2 一小时学会基本操作 4
tf.math.top_k可以帮助我们查找最后一个维度的 k 个最大条目的值和索引.
润森
2022/09/22
5100
TensorFlow2 一小时学会基本操作 4
【tensorflow2.0】张量数据结构
Tensorflow的基本数据结构是张量Tensor。张量即多维数组。Tensorflow的张量和numpy中的array很类似。
西西嘛呦
2020/08/26
5170
TensorFlow2 一小时学会基本操作 3
https://iamarookie.blog.csdn.net/article/details/117755839
润森
2022/09/22
2220
TensorFlow2 一小时学会基本操作 3
深度学习-TensorFlow张量和常用函数
在tf.random.truncated_normal中如果随机数的取值在(u-2\sigma, u+2\sigma)之外,则重新生成,保证值在均值附近
皮大大
2023/08/25
4670
TensorFlow 2.0 - 张量/自动求导/梯度下降
文章目录 1. 张量 2. 自动求导、梯度下降 学习于:简单粗暴 TensorFlow 2 1. 张量 import tensorflow as tf print(tf.__version__) # 2.3.1 random_float = tf.random.uniform(shape=()) # tf.Tensor(0.80420315, shape=(), dtype=float32) zero_vec = tf.zeros(shape=(2)) # tf.Tensor([0. 0.], shap
Michael阿明
2021/02/19
1K0
【tensorflow2.0】数据管道dataset
如果需要训练的数据大小不大,例如不到1G,那么可以直接全部读入内存中进行训练,这样一般效率最高。
西西嘛呦
2020/08/26
1.8K0
【tensorflow2.0】数据管道dataset
Tensorflow之基础篇
终于有点时间学一下之前碎碎念的TensorFlow,主要代码为主,内容来源于《简明的TensorFlow2》作者 李锡涵 李卓恒 朱金鹏,人民邮电出版社2020.9第1版。
Ed_Frey
2020/12/30
8340
Tensorflow之基础篇
TensorFlow2.0(3):张量排序、最大最小值
也对多维Tensor排序,当对多维Tensor进行排序时,可以通过axis参数指定需要排序的维度,默认axis默认值为-1,也就是对最后一维进行排序。
统计学家
2019/12/23
3K0
TensorFlow2.0(5):张量限幅
maximum()用于限制最小值,也即是说,将一个tensor中小于指定值的元素替换为指定值:
统计学家
2019/12/23
1K0
【tensorflow2.0】AutoGraph的使用规范
而Autograph机制可以将动态图转换成静态计算图,兼收执行效率和编码效率之利。
西西嘛呦
2020/08/26
6170
【tensorflow2.0】AutoGraph和tf.Module
而Autograph机制可以将动态图转换成静态计算图,兼收执行效率和编码效率之利。
西西嘛呦
2020/08/26
7520
【tensorflow2.0】AutoGraph和tf.Module
【tensorflow2.0】自动微分机制
神经网络通常依赖反向传播求梯度来更新网络参数,求梯度过程通常是一件非常复杂而容易出错的事情。
西西嘛呦
2020/08/26
6380
相关推荐
TensorFlow2.0(1):基本数据结构——张量
更多 >
领券
社区富文本编辑器全新改版!诚邀体验~
全新交互,全新视觉,新增快捷键、悬浮工具栏、高亮块等功能并同时优化现有功能,全面提升创作效率和体验
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档