People often ask me "How did you learn how to hack?" The answer: by reading. This page is a collection of the blog posts and other articles that I have accumulated over the years of my journey. Enjoy!
cloudcrmipfrontend-pa.googleapis.com. This was responding to 200 for some suspicious endpoints, many of which were public debugging endpoints. Notably, /v1/integrationPlatform:getProtoDefinition was logging internal source code protobuf information. Not a major vulnerability by itself, but useful for hunting on Google-based products. ListQuotaQueueResponse contained internal workflow execution queue information from things such as Salesforce. This was immediately worked as a P0 finding and triaged. But, can we do more?GenericStubbyTypedTask. Why does this matter? Google production follows a security model where each task service has its own identity. When a request is made to *.googleapis.com, Stubby calls the backend and carries out the action as the end-user with THIS security ticket. If this contains the ability to make arbitrary queries with Stubby, this has the flavor of a confused deputy issue.RpcSecurityPolicy. Each mapping block lists a set of RPC methods, the callers who can invoke them, and the credential type under which they can be invoked (anon, user, etc.). With a confused deputy issue that allows arbitrary calls with Stubby, you're limited to the policy's permissions.client_id. They needed to create a workflow before they could do this, which led the author to hit a wall. They posted on Discord that they had the original vulnerability, prompting another person to say they were working on the same thing. Naturally, a team had been born! /v1/integrationPlatform:getProtoDefinition was blocked but /v1/integrationPlatform/workflowsupport:getProtoDefinition was NOT blocked. createDraftWorkflow disabled but didn't have a counterpart. Although they kept getting access denied, it was inconsistent. The patch hadn't landed on all servers before load balancers yet!IP_EVENTBUS_WORKFLOWS with a separate endpoint. So, they could create a workflow with GenericStubbyTypedTaskV2 to create an arbitrary Stubby query. They got RCE through this and were rewarded $60K for the bug.