grpc-web-pentest

Test gRPC-Web services for CORS misconfigurations and authentication bypasses.

11|1|Updated May 4, 2026
One-click install
npx skills add https://github.com/dreadnode/capabilities --skill grpc-web-pentest
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: grpc-web-pentest
Source: https://github.com/dreadnode/capabilities/tree/main/capabilities/web-security/skills/grpc-web-pentest
Command: npx skills add https://github.com/dreadnode/capabilities --skill grpc-web-pentest

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

gRPC-Web services rely on translation layers like Envoy, APISIX, or grpcwebproxy to bridge browser clients and native gRPC backends, introducing unique attack surfaces that standard gRPC pentesting methodologies fail to cover, leaving these services exposed to undetected vulnerabilities that attackers can exploit.

Core Features & Use Cases

  • Service Detection: Identify gRPC-Web endpoints via content type headers, JavaScript bundle analysis, and Envoy proxy fingerprinting.
  • CORS Abuse Testing: Exploit misconfigured CORS policies on gRPC-Web proxies to enable cross-origin authenticated requests from attacker-controlled domains.
  • Payload Manipulation: Craft custom protobuf payloads to test for field injection, type confusion, and proxy header injection vulnerabilities.
  • Use Case: A security tester assessing a customer-facing web app that uses gRPC-Web can use this skill to quickly identify if the Envoy proxy has overly permissive CORS settings or if the JSON transcoder path bypasses authentication controls present in the native gRPC flow.

Quick Start

Use the grpc-web-pentest skill to test the target gRPC-Web service at https://api.example.com for CORS misconfigurations and JSON transcoder authentication bypasses.

Frequently Asked Questions about grpc-web-pentest

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I test gRPC-Web services for Envoy proxy vulnerabilities?

Testing gRPC-Web services for Envoy proxy vulnerabilities involves identifying translation layer misconfigurations, CORS policy abuse, and JSON transcoder authentication bypasses. You can detect these protocol-specific attack surfaces by analyzing content type headers and proxy fingerprinting.

What is gRPC-Web pentesting and how does it differ from native gRPC testing?

gRPC-Web pentesting targets vulnerabilities introduced by translation layers like Envoy, APISIX, or grpcwebproxy that bridge browser clients and native gRPC backends. It covers unique attack surfaces such as CORS abuse and proxy header injection absent in standard native gRPC security testing.

Can I exploit CORS misconfigurations on a gRPC-Web APISIX proxy?

Exploiting CORS misconfigurations on a gRPC-Web APISIX proxy allows cross-origin authenticated requests from attacker-controlled domains. Testing validates whether overly permissive proxy settings expose the native gRPC backend to unauthorized cross-origin access.

How do I craft custom protobuf payloads for gRPC-Web field injection testing?

Crafting custom protobuf payloads for gRPC-Web field injection testing involves manipulating serialized data to trigger type confusion and proxy header injection. This validates whether the translation layer improperly sanitizes fields before passing traffic to the native gRPC backend.

Does gRPC-Web penetration testing cover JSON transcoder authentication bypasses?

gRPC-Web penetration testing covers JSON transcoder authentication bypasses by validating if the translation path circumvents auth controls present in the native gRPC flow. This detects when Envoy transcoders improperly map HTTP requests without enforcing required backend authentication tokens.

What are the limitations of testing gRPC-Web endpoints via JavaScript bundle analysis?

Testing gRPC-Web endpoints via JavaScript bundle analysis is limited to discovering client-exposed service definitions and endpoint routes. It cannot detect server-side translation layer misconfigurations or backend vulnerabilities without actively sending crafted payloads to the target proxy.