为API测试在Postman和Burp Suite中添加证书
当评估使用基于证书认证的API时,需要将证书添加到Postman和Burp Suite等工具中。这使我们能够在客户端和服务器之间代理请求,以正确评估API的安全性。
本指南将涵盖以下内容:
- 将证书和私钥导入Postman进行认证
- 在Burp Suite中配置pkcs12格式的客户端证书以实现无缝流量拦截
前置要求
- 客户端证书文件
- 私钥文件
- Burp Suite(免费版或专业版)
- Postman
将客户端证书导入Postman
-
从官网下载Postman Desktop Agent(支持Windows、Linux和MacOS)
1
下载链接:https://www.postman.com/downloads
-
打开工作区仪表板,点击齿轮图标进入"Settings"菜单
-
在"Certificate"部分点击"Add Certificate"按钮
-
输入证书信息:
- 证书文件(.crt、.pem或.cer格式)
- 私钥文件(.key或.pem格式)
- 如有密码短语也需要提供
-
点击"Add"后,新证书将出现在Client Certificates部分
现在Postman会向"test.com"域名的所有HTTPS请求包含客户端证书。可通过控制台检查证书进行验证。
配置Postman代理设置
- 进入"Settings" > “Proxy”
- 启用"Use custom proxy configuration"
- 选择HTTP和HTTPS代理类型
- 输入代理服务器地址:127.0.0.1(localhost)
- 设置端口号为8080(Burp默认端口)
将客户端证书导入Burp Suite
-
使用OpenSSL将证书和私钥打包为pkcs12格式:
1
sudo openssl pkcs12 -export -out cert.pfx -inkey private.key -in certificate.crt
(如有密码短语,OpenSSL会要求输入)
-
设置导出密码(后续在Burp中添加证书时需要)
-
进入Burp Settings > Network > TLS > Client Certificates
-
点击"Add",选择证书类型为"PKCS#12"
-
选择.pfx格式的证书文件并提供导出密码
完成这些步骤后,即可无故障地使用Burp拦截来自Postman的HTTPS请求。