Skip to content

[NEW SKILL] payment-webhook-state-machine-review #566

@JeremyZeng77

Description

@JeremyZeng77

Proposed Skill

Skill name: payment-webhook-state-machine-review
Category: appsec
Severity: high

What It Detects

Payment and billing webhooks can replay, reorder, or bypass state-machine constraints, leading to credit inflation, refund abuse, or subscription state drift.

Why This Skill Is Needed

This topic shows up in real security reviews and incident patterns, but it is not cleanly represented in the current proposal set. A dedicated skill would make the review repeatable instead of relying on ad hoc notes.

Detection Approach

Model the trust boundary for this workflow, then look for weak validation, stale assumptions, unsafe exceptions, missing provenance, and non-human or background paths that get broader reach than intended.

Languages / Frameworks

  • payment backends
  • subscription systems

Example Vulnerable Code

An implementation exposes this workflow with permissive defaults, incomplete boundary checks, and no durable audit or provenance trail.

Example Remediation

Constrain scope, validate the trust boundary explicitly, preserve provenance, and require repeatable verification evidence before approving this workflow.

References

  • OWASP guidance for the relevant domain
  • Relevant CWE, NIST, or cloud-provider security guidance

Estimated Complexity

  • Standard ($200) — Well-known vuln class, single language, straightforward detection
  • Intermediate ($350) — Multiple languages/frameworks, nuanced detection logic
  • Complex ($500) — Novel detection approach, comprehensive coverage, low FP rate

Bounty Info


Wait for maintainer approval before starting implementation. Please confirm whether this topic is in scope.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions