Sample · adversarial verification

Supply Chain PenTest

Try to cross the boundary through two transports while the application keeps identity, authorization and execution under control.

What is under test?

The PenTest sample sends adversarial requests through MCP and GraphQL against the same application boundary. The point is not that a transport is secure by itself; the point is that different transports converge on the same authorization and execution rules.

Attack classes

Attack Expected invariant
Cross-tenant read Denied or constrained by server-owned tenant context.
Restricted field Denied before physical execution.
Restricted relationship Traversal cannot bypass relationship policy.
Unauthorized mutation Read permission does not become write permission.
Claim injection Caller cannot assert role, tenant or administrator authority.
Prompt/data injection Untrusted data cannot rewrite the security model.

Why both MCP and GraphQL?

They parse and dispatch requests differently. A shared semantic execution boundary is useful precisely because the security property should survive those transport differences.

Use it as a regression suite

The sample is deterministic and belongs in CI. It is a verification harness, not merely a demonstration page.

Read the source at Supply Chain Advanced and the repository's security tests.