HexBrain

Internet Bug Bounty · Report #2012135

[CVE-2023-22799] Possible ReDoS based DoS vulnerability in GlobalID

Validstatus
lowseverity
$480bounty
4upvotes
27 Jul 2023disclosed

Summary

There is a ReDoS based DoS vulnerability in the GlobalID gem. This vulnerability has been assigned the CVE identifier CVE-2023-22799.

Versions Affected: >= 0.2.1 Not affected: NOTAFFECTED Fixed Versions: 1.0.1

Impact

There is a possible DoS vulnerability in the model name parsing section of the GlobalID gem. Carefully crafted input can cause the regular expression engine to take an unexpected amount of time. All users running an affected release should either upgrade or use one of the workarounds immediately.

Releases

The FIXED releases are available at the normal locations.

Workarounds

There are no feasible workarounds for this issue.

Patches

To aid users who aren’t able to upgrade immediately we have provided patches for the two supported release series. They are in git-am format and consist of a single changeset.

  • 1-0-model-name-redos.patch - Patch for 1.0 series

How it was found

I made a report and patch at https://hackerone.com/reports/1696752.

https://discuss.rubyonrails.org/t/cve-2023-22799-possible-redos-based-dos-vulnerability-in-globalid/82127

There is a possible DoS vulnerability in the model name parsing section of the GlobalID gem. Carefully crafted input can cause the regular expression engine to take an unexpected amount of time. All users running an affected release should either upgrade or use one of the workarounds immediately.

Impact

ReDoS occurs in Global ID uri parsing. Global ID is supposed to be used in ActiveJob, but it is also used in libraries such as GraphQL Ruby and uses user input.

This report was disclosed publicly on HackerOne and belongs to its author and the program. See the original