当前位置: 首页 > article >正文

API安全测试 | Postman + BurpSuite 配置证书代理

图片

img

在对使用基于证书的身份验证的 API进行安全你测试时,需要将证书添加到我们的工具(如 Postman 和 Burp Suite)中。这样我们才能够在客户端和服务器之间代理请求进行分析,以便评估 API 的安全性。

在本文我们将介绍将证书和私钥合并到 Postman 以进行身份验证的步骤。我们还将介绍如何以 pkcs12 格式包含客户端证书,以便使用 Burp Suite 进行无缝流量拦截。

目录

•前提条件条件 | 环境准备

•将客户端证书导入 Postman

•在 Postman 中配置代理

•将客户端证书导入 Burp Suite

前提条件条件 | 环境准备

•客户端证书文件

•私钥文件

•Burp Suite(免费版或专业版)

•postman

将客户端证书导入 Postman

要在 Postman 中添加证书,我们需要从其官方网站下载 Postman Desktop 代理。此应用程序是跨平台的,支持 Windows、Linux 和 MacOS。

•下载链接:https://www.postman.com/downloads[1]

下载 Postman 后,打开 Workspace 仪表板,单击齿轮图标进入“设置”菜单。在“证书”部分中,单击“添加证书”按钮。

图片

img

图片

img

然后,我们输入证书信息,包括证书文件(通常为.crt.pem.cer格式)和私钥文件(为.key.pem格式)。如果证书使用密码,我们也需要提供密码。

输入所有必需的详细信息后,我们可以点击“添加”。这将在客户端证书部分下添加新证书,可以从设置中访问,如下图所示。

图片

img

图片

img

现在 Postman 将在发送到“test.com”域的所有 HTTPS 请求中包含客户端证书。为了验证这一点,我们使用 HTTPS 向域发送请求并在控制台中检查证书。

图片

图 5 — 显示在 Postman 中发送 HTTPS 请求 — r3dbuck3t

图片

图 6 — 显示在 Postman 控制台中检查客户端证书 — r3d-buck3t.com

在 Postman 中配置代理

添加客户端证书后,我们需要设置 Postman 代理请求到 Burp Suite。为此,我们再次导航到“设置”菜单,单击“代理”部分,然后启用“使用自定义代理配置”的切换按钮。

之后,选择代理类型为 HTTP 和 HTTPS,并指定代理服务器的 IP 地址(在本例中为本地主机),输入 127.0.0.1,并将 Burp Suite 的端口号指定为 8080(默认端口)。

图片

图 7-显示 Postman 中的代理设置 — r3d-buck3t

将客户端证书导入 Burp Suite

将证书添加到 Burp Suite,我们需要命令 OpenSSL 将证书和私钥文件捆绑为 pkcs12 格式。如果私钥使用密码,OpenSSL 会要求输入密码。

  • sudo openssl pkcs12 -export -out cert.pfx -inkey private.key -in certificate.crt

它还会要求输入提取证书时所需的导出密码。记住导出密码很重要,因为我们稍后将证书添加到 Burp 时会需要它。

图片

图 8 — 显示将文件转换为 pkcs12 — r3d-buck3t

接下来,我们进入 Burp 设置,在网络部分下,导航到 TLS > 客户端证书。我们点击“添加”,选择证书类为“PKCS#12”,然后单击下一步。

图片

img

图片

img

我们在格式中选择刚刚转换的证书.pfx,并提供我们在转换文件时使用的导出密码。正确加载后,我们将收到“证书已成功加载”的消息。

图片

img

图片

img

完成这些步骤后,我们就可以使用 Burp 拦截来自 Postman 的 HTTPS 请求了。

今天的文章就到这里,感谢阅读!

参考

•https://blog.postman.com/set-and-view-ssl-certificates-with-postman/

•https://learning.postman.com/docs/getting-started/basics/navigating-postman/#console

无偿获取网络安全优质学习资料与干货教程

申明:本账号所分享内容仅用于网络安全技术讨论,切勿用于违法途径,所有渗透都需获取授权,违者后果自行承担,与本号及作者无关,请谨记守法。


http://www.kler.cn/news/305331.html

相关文章:

  • chapter14-集合——(List)——day17
  • 828华为云征文|部署在线文件管理器 Spacedrive
  • 大数据-132 - Flink SQL 基本介绍 与 HelloWorld案例
  • 【LLM多模态】CogVideoX文生视频模型结构和训练过程
  • 【openGauss】检查工具gs_check,gs_checkperf的应用
  • Redisson 异步释放锁
  • 什么是485无线通信
  • 磁盘写操作压力测试工具的设计与实现
  • ChatGLM3模型搭建教程
  • OpenCV结构分析与形状描述符(20)计算一个包围给定点集的最小外接圆函数minEnclosingCircle()的使用
  • 研1日记12
  • C++系列-函数对象/仿函数
  • [网络]TCP/IP协议 之 网络层IP协议(3)
  • 艾丽卡的区块链英语小课堂
  • 基于ssm+vue+uniapp的新生报到系统小程序
  • 第4步CentOS配置SSH服务用SSH终端XShell等连接方便文件上传或其它操作
  • 实战外网配置——光猫桥接+路由器PPPoE拨号+防火墙外网链路健康检查+外网流量负载均衡
  • kafka mirror maker之实现两个kafka集群之间的数据同步
  • HTML + CSS - 网页布局之一般布局浮动布局
  • JVM 体系与结构
  • Node.js 中间件与洋葱模型
  • SonicWall SSL VPN曝出高危漏洞,可能导致防火墙崩溃
  • java --- 性能优化01
  • Git使用—把当前仓库的一个分支push到另一个仓库的指定分支、基于当前仓库创建另一个仓库的分支并推送到对应仓库(mit6828)
  • 使用 easyX 库实现顺序表插入操作的可视化
  • 并发锁机制之深入理解synchronized
  • Mybatis-plus进阶篇(一)
  • 一种全新的webapi框架C#webmvc初步介绍
  • opencv之傅里叶变换
  • ZYNQ FPGA自学笔记