导语:这是关于使用 Postman 进行渗透测试系列文章的第一部分。
这是关于使用 Postman 进行渗透测试系列文章的第一部分。我原本计划只发布一篇文章,但最后发现内容太多了,如果不把它分成几个部分的话,很可能会让读者不知所措。 所以我的计划是这样的: 在这篇文章中,我将向你介绍如何设置 Postman 并使用它来发出常规请求。 在第2部分,我会让你通过 Burp Suite 代理 Postman 的网络流量。 在第3部分中,我们将介绍 Postman 的更高级的用法,包括更优雅地处理无记名令牌(Bearer Token)和环境变量。 在第4部分中,我将介绍一两个能够真正增强 Postman 渗透测试效果的 Burp 插件。
在这个时代,Web 和移动应用程序通常是由 RESTful 网络服务提供支持的。 公共和私有 API 在互联网上非常普遍,测试这些 API 绝非易事,但有一些工具可以帮助你。 虽然(通常用与渗透测试)工具不能代替技能,但即使是最熟练的木匠也能用锤子比用鞋子更有效地钉钉子。
Postman 就是这样一个工具,它在开发者中已经流行了很多年。 在我们进入如何设置它的主题之前,我们先来快速介绍一下这个工具是什么以及可以做什么。 Postman 是一个商业桌面应用程序,可用于 Windows、 Mac OS 和 Linux。 它的大部分功能是免费的,也有付费的功能,比如提供协作和文档功能。 与渗透测试人员相比,这些特性对开发人员更有意义。 它用于管理测试各种 API 调用的 HTTP 请求集合,以及包含变量的环境。 它并不能替代你的代理(如:Burp,ZAP,Mitmproxy 等等) ,但是实际上弥补了浏览器和客户端应用程序层缺失的功能。 对于这款工具主要的替代方案是开源工具 Insomnia 和高级 REST 客户端,商业产品 SoapUI,或建立在 Swagger/Swagger UI 或 curl 的自定义工具。
设置 Postman
在其官方网站上(https://www.getpostman.com,)可以找到 Postman,提供 Windows 和 MacOS 的安装程序,以及 Linux 的 tar 包。 它也可以在 Ubuntu 的 Snap for Ubuntu ( HTTPs://snapcraft.io/postman )和其他社区维护的 repos 中找到,比如 Arch Linux 的 AUR。 设置它的第一步当然是程序安装。
在第一次启动 Postman 时,你会看到一个屏幕,提示你创建一个帐户,注册谷歌,或者用现有的凭证进行登录。 然而, Postman 并不需要一个帐户来执行后续的使用。
登录的帐户用于协作/同步/等; 这些是付费的功能。正如我前面提到的,这几个功能对于开发人员来说很棒,但对你来说,可能并不关心。 事实上,如果你通常需要对你的客户端机械能保密,就像我们在 Secure Ideas 所做的事情,那么你可能明确地不希望将你的项目同步到另一个第三方服务器。<