gRPC-Web Pentest

从零开始学习AWS黑客技术,成为专家 htARTE(HackTricks AWS Red Team Expert)

支持HackTricks的其他方式:

操纵gRPC-Web负载

gRPC-Web在请求中使用Content-Type: application/grpc-web-text,这种形式类似于base64编码的protobuf,您可以使用gprc-coder工具,也可以安装其Burp Suite扩展程序

使用gGRPC Coder工具手动操作

  1. 首先解码负载:

echo "AAAAABYSC0FtaW4gTmFzaXJpGDY6BVhlbm9u" | python3 grpc-coder.py --decode --type grpc-web-text | protoscope > out.txt

2. 编辑解码后的有效负载内容

在拦截和解码 gRPC 流量后,攻击者可以编辑有效负载内容以尝试执行各种攻击。这可能包括更改请求参数、注入恶意代码或修改数据以触发应用程序中的漏洞。编辑有效负载内容是一种常见的渗透测试技术,可帮助发现应用程序中的安全漏洞。

nano out.txt
2: {"Amin Nasiri Xenon GRPC"}
3: 54
7: {"<script>alert(origin)</script>"}
  1. 编码新的有效载荷

  1. 在Burp拦截器中使用输出:

使用 gRPC-Web Coder Burp Suite 扩展的手册

您可以在 gRPC-Web 渗透测试套件 中使用 gRPC-Web Coder Burp Suite 扩展,这样更容易。您可以在其存储库中阅读安装和使用说明。

分析 gRPC-Web JavaScript 文件

每个 gRPC-Web 应用程序中至少有一个 JavaScript 文件。您可以分析该文件以查找新消息、端点和服务。尝试使用 gRPC-Scan 工具。

  1. 下载 JavaScript gRPC-Web 文件

  2. 使用 grpc-scan.py 进行扫描:

  1. 分析输出并测试新的端点和新的服务:

参考资料

从零开始学习 AWS 黑客技术,成为专家 htARTE(HackTricks AWS 红队专家)

支持 HackTricks 的其他方式:

最后更新于