技术分享 | 接口测试之HTTP、HTTPS 抓包分析

简介: 使用普通的抓包工具比如 tcpdump 无法抓取到加密过的 HTTPS 协议的数据包。但是 Charles 经过配置,可以抓取并分析 HTTPS 协议的数据包,下面的内容将会具体讲述 Charles 如何配置以及如何抓取 HTTP、HTTPS 数据包。

使用普通的抓包工具比如 tcpdump 无法抓取到加密过的 HTTPS 协议的数据包。但是 Charles 经过配置,可以抓取并分析 HTTPS 协议的数据包,下面的内容将会具体讲述 Charles 如何配置以及如何抓取 HTTP、HTTPS 数据包。

环境安装

需要安装 Charles,参考章节常用代理工具中的 Charles 部分。

配置过程

  1. 配置代理,Charles 可以抓取移动端上的数据,需要计算机和移动端在同一网段(同一 wifi)。打开 Proxy->Proxy Settings,填入代理端口 8888,勾上 Enable transparent HTTP proxying(在如果想要抓取到 https 的数据包,还需要进行后面的操作):
  2. 获取证书:在浏览器访问“chls.pro/ssl” 下载证书,并在 Proxy->SSL Proxying Settings->SSL Proxying,在 Include 中点击 Add,并在 host 处填写*,同时点击 Enable SSL Proxying。然后选择 OK:

image.png

  1. 浏览器安装证书:点击下载好的证书,直接安装。
  2. 信任证书:打开证书(Mac 系统为钥匙串访问)->点击证书->双击名称含有 charles 的选项->点击信任->选择始终信任。若 windows 系统证书信任配置,可参考下图:

  1. 移动端配置证书:在移动端浏览器打开chls.pro/ssl,直接安装即可。

注意:Android 6.0 默认用户级别证书,7.0 以上需要修改 apk 包属性

经过如上的操作,即可成功抓取到 http/https 的请求数据包。

相关文章
|
1月前
|
缓存 安全 网络协议
一起深入了解http和https的区别
HTTP适合于非敏感信息的传输,而HTTPS则是在要求安全性、隐私保护及信任机制的现代互联网环境中不可或缺的标准配置。随着网络安全意识的提高和技术的发展,越来越多的网站和服务都转向使用HTTPS,力求在提供便捷服务的同时保障用户数据的安全。HTTPS将成为未来的基本选择。
39 0
一起深入了解http和https的区别
|
1月前
|
jenkins 测试技术 持续交付
提升软件测试效率与准确性的策略分析
【2月更文挑战第28天】 在快速迭代的软件发展周期中,高效的测试流程是确保产品质量和用户满意度的关键。本文旨在探讨提高软件测试效率和准确性的策略,包括自动化测试工具的选择、测试用例的优化设计以及持续集成的实践。通过分析当前软件测试领域面临的挑战,提出了相应的解决方案,并通过案例分析来展示这些策略的实际应用效果。文章的目的是为软件测试工程师提供实用的指导和参考,帮助他们在保证测试质量的同时,缩短测试周期,降低成本。
39 1
|
2天前
|
网络协议 网络安全 数据安全/隐私保护
http和https的区别!
http和https的区别!
|
3天前
R语言估计多元标记的潜过程混合效应模型(lcmm)分析心理测试的认知过程
R语言估计多元标记的潜过程混合效应模型(lcmm)分析心理测试的认知过程
22 0
|
5天前
|
网络协议 安全 API
Android网络和数据交互: 什么是HTTP和HTTPS?在Android中如何进行网络请求?
HTTP和HTTPS是网络数据传输协议,HTTP基于TCP/IP,简单快速,HTTPS则是加密的HTTP,确保数据安全。在Android中,过去常用HttpURLConnection和HttpClient,但HttpClient自Android 6.0起被移除。现在推荐使用支持TLS、流式上传下载、超时配置等特性的HttpsURLConnection进行网络请求。
5 0
|
8天前
|
缓存 安全 网络协议
【面试必备】HTTP和HTTPS是什么?有什么差异?
HTTP(超文本传输协议)和HTTPS(超文本传输安全协议)是用于在互联网上传输数据的协议。它们都是应用层协议,建立在TCP/IP协议栈之上,用于客户端(如浏览器)和服务器之间的通信。
12 2
|
9天前
|
Web App开发 前端开发 Java
框架分析(11)-测试框架
框架分析(11)-测试框架
|
20天前
|
内存技术
HTTP-FLV详解及分析(二)
HTTP-FLV详解及分析
20 0
|
20天前
|
机器学习/深度学习 人工智能 算法
提升软件测试效率与质量的策略分析
在快速发展的信息技术时代,软件产品已成为日常生活和工作的核心组成部分。随着软件系统的复杂度日益增加,确保其功能性、稳定性及安全性的软件测试工作变得尤为重要。本文针对如何提升软件测试的效率与质量进行了深入探讨,分析了当前软件测试面临的挑战,并提出了一系列创新策略。这些策略包括采用自动化测试工具、实施持续集成和持续部署(CI/CD)、利用人工智能进行测试用例生成以及强化测试团队的技能培训等。通过综合运用这些策略,可以显著提高软件测试的质量和效率,减少人工成本,同时加速产品的上市时间。
|
24天前
|
前端开发 应用服务中间件 网络安全
http转为https,ssl证书安装及nginx配置
http转为https,ssl证书安装及nginx配置
37 1