Skip to content
cccskills
FreePublished on GitHub

competition-graphql-rpc-drift

Compare GraphQL and RPC contracts, which describe expected API behavior, with generated clients and live handlers in a CTF sandbox. Identify hidden or outdated operations and preserve minimal request pairs that demonstrate the mismatch.

OriginalShow the original description

Internal downstream skill for ctf-sandbox-orchestrator. CTF-sandbox workflow for GraphQL schemas, persisted queries, RPC manifests, generated clients, OpenAPI drift, hidden operations, and contract-to-handler mismatches. Use when the user asks to inspect GraphQL or RPC requests, compare client contracts to live handlers, recover hidden operations, trace generated clients, or explain how schema or contract drift produces the decisive behavior. Use only after `$ctf-sandbox-orchestrator` has already established sandbox assumptions and routed here.

See how to install

Good for

  • Compare API contracts with live request handling
  • Trace requests made by generated clients
  • Investigate hidden or outdated API operations
  • Document a minimal example of a contract mismatch

Files included (3)

  • SKILL.md3.2 KB
  • agents/openai.yaml388 B
  • references/graphql-rpc-drift.md1.1 KB

SKILL.md (original)

Review the instructions the agent will receive before you install.

Competition Graphql Rpc Drift

Use this skill only as a downstream specialization after $ctf-sandbox-orchestrator is already active and has established sandbox assumptions, node ownership, and evidence priorities. If that has not happened yet, return to $ctf-sandbox-orchestrator first.

Use this skill when the hard part is matching declared contracts with live handlers to find hidden, stale, or privileged operations.

Reply in Simplified Chinese unless the user explicitly requests English.

Quick Start

  1. Collect the declared contract surface first: schema, manifest, generated client, persisted query map, or OpenAPI spec.
  2. Record actual request shapes, operation names, variables, method, path, and auth context before mutating anything.
  3. Compare declared contract, generated client behavior, and live handler behavior side by side.
  4. Preserve one accepted operation and one drifted or hidden operation with the smallest delta.
  5. Reproduce the smallest contract-to-handler mismatch that proves the decisive branch.

Workflow

1. Map The Declared Contract Surface

  • Record GraphQL schema, introspection output, persisted query ids, RPC manifests, generated clients, or OpenAPI documents that define the intended surface.
  • Note versioned endpoints, client-only guards, hidden enums, optional fields, and operation naming conventions.
  • Keep document source and generation path tied to the observed requests.

2. Prove Live Handler Behavior

  • Capture the real request and response pairs, including operation name, variables, headers, cookies, and status.
  • Compare client-side validation, schema expectations, and live handler normalization or fallback behavior.
  • Record hidden operations, stale fields, undocumented methods, or handler-only branches that still execute.

3. Reduce To The Decisive Drift Path

  • Compress the result to the smallest sequence: declared contract -> actual request -> handler branch -> resulting capability.
  • State clearly whether the decisive drift lives in generated client assumptions, persisted query mapping, schema version skew, RPC manifest mismatch, or handler-side hidden logic.
  • If the task shifts into generic JWT, OAuth, or queue behavior after acceptance, hand off to the tighter specialized skill.

Read This Reference

  • Load references/graphql-rpc-drift.md for the contract checklist, live-handler checklist, and evidence packaging.

What To Preserve

  • Schemas, manifests, generated clients, persisted query ids, operation names, and version markers
  • One accepted and one drifted request pair that proves the mismatch
  • One minimal contract-to-handler sequence that reaches the decisive effect

Reviews

No reviews yet. Tell others what you thought.

Comments

No login needed. Share how it worked for you, ask a question, or note where it did not run.

No comments yet. Be the first to write one.

Comments are published right away. Do not include personal information such as email addresses or phone numbers. Up to 2 URLs.

0 / 1,000 characters

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

More skills from this repository

api-security

FreeSummary

Assess authorized APIs through a ten-stage workflow covering endpoint discovery, authentication, access permissions, input handling, and request limits. Collect reproducible evidence and turn findings into regression checks that can run in a development pipeline.

  • Review API authentication and access permissions
  • Assess GraphQL and WebSocket security
  • Check request limits and unintended data exposure
zhaoxuya520/reverse-skill42.6KUpdated Sep 22, 2026

apk-reverse

FreeSummary

Inspect Android APKs from the command line to understand app logic, permissions, and components. Supports Java decompilation, low-level code edits, rebuilding and signing, plus Frida observation of running methods and routing to native code analysis.

  • Inspecting APK entry points, components, and permissions
  • Locating login, signing, and certificate checks
  • Editing smali code and rebuilding an APK
zhaoxuya520/reverse-skill42.6KUpdated Sep 22, 2026

attack-chain

FreeSummary

Plan and coordinate authorized penetration tests across multiple stages, from reconnaissance to access, privilege escalation, movement between systems, and impact assessment. Assign specialist skills, revise blocked paths, and maintain evidence and progress records for the final report.

  • Plan a penetration test across multiple stages
  • Assess how far a vulnerability could lead
  • Replan from existing credentials or system access
zhaoxuya520/reverse-skill42.6KUpdated Sep 22, 2026

binary-diff

FreeSummary

Transfer known function and variable names from an older binary to a newer version. Compare disassembly and pseudocode with an LLM, produce structured mappings, and apply names and comments in IDA.

  • Migrate known function names after a software update
  • Locate kernel functions when the new PDB is unavailable
  • Find updated function addresses and structure offsets
zhaoxuya520/reverse-skill42.6KUpdated Sep 22, 2026

Inspect compiled programs in Binary Ninja using strings, function references, and intermediate representations—views of program logic at different levels. Trace data flow and report findings with addresses, supporting evidence, confidence, and reproduction steps.

  • Tracing function calls and data flow in Binary Ninja
  • Cross-checking findings from other disassemblers
  • Automating binary analysis with the Python API
zhaoxuya520/reverse-skill42.6KUpdated Sep 22, 2026

Automate website navigation, form filling, content collection, and Windows desktop interactions. The skill selects browser or desktop tools for the task and guides screenshot capture and desktop network traffic observation when needed.

  • Automating website login and form entry
  • Collecting page content and screenshots
  • Operating Windows desktop applications
zhaoxuya520/reverse-skill42.6KUpdated Sep 22, 2026

See all skills by zhaoxuya520

Report a problem with this skill