Skip to content

[GHSA-2fw8-7jmw-r937] - [v1] - Tool outputSchema pattern can stall validation (ReDoS) #2878

Closed

Description

@cliffhall

The v1 half of GHSA-2fw8-7jmw-r937. The v2 half is #2874. It ships in v1 1.0.4.

Advisory: GHSA-2fw8-7jmw-r937

Status (2026-10-29): fixes ready on both lines, not merged

  • Accepted 2026-10-28. Severity Medium, Priority Medium. Lines: v2 and v1.
  • v2 fix: fork PR #2. A bounded-time regex engine evaluates Ajv pattern checks. Gate green.
  • v1 fix: fork PR #1. Server-supplied patterns are skipped, with a "not evaluated" note. No dependency changes. v1's lint, test, build and test-cli are green.
  • Before the release:
    1. Merge the advisory. That merges both PRs at once. Lift required_status_checks on v2/main - DCO and v1/main - full protection, use a merge commit, then restore both from snapshots.
    2. Ship both lines: v2.14.0 and a v1 patch on v1-latest.
    3. Publish only after both are out.
    4. Request a CVE and credit KillerX345.
    5. Publish.
    6. Convert this card to the v2 issue. File a separate v1 issue on get tools working #11 (no milestone), cross-link the two, and close both.
  • Upstream: private report to typescript-sdk, GHSA-f3p5-cxv7-g7x2 (Client.callTool uses the native RegExp).
  • Open: the assessment comment for the reporter is a manual post.

Reporter: KillerX345 | Reported severity: medium | Reported: 2026-10-28

Priority score (2026-10-28, provisional — code-read only, not reproduced): Severity 3, Urgency 2, +1 security, Total 6 → Medium. Lines: v2 + v1.

Activity

  1. self-assigned this
    on Nov 4, 2026
  2. cliffhall commented on Nov 4, 2026

    @cliffhall
    MemberAuthor

    Fixed by #2879 (v1/main). Ships in v1 1.0.4.

  3. cliffhall commented on Nov 5, 2026

    @cliffhall
    MemberAuthor

    Advisory published: GHSA-2fw8-7jmw-r937. Fixed in 1.0.4 (#2879) for v1 and in 2.14.0 (#2877, tracked in #2874) for v2.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

bugSomething isn't workingv1

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions