You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
yajl-ruby is a C binding to the YAJL JSON parsing and generation library. The 1.x branch and the 2.x branch of yajl contain an integer overflow which leads to subsequent heap memory corruption when dealing with large (~2GB) inputs. The reallocation logic at yajl_buf.c#L64 may result in the need 32bit integer wrapping to 0 when need approaches a value of 0x80000000 (i.e. ~2GB of data), which results in a reallocation of buf->alloc into a small heap chunk. These integers are declared as size_t in the 2.x branch of yajl, which practically prevents the issue from triggering on 64bit platforms, however this does not preclude this issue triggering on 32bit builds on which size_t is a 32bit integer. Subsequent population of this under-allocated heap chunk is based on the original buffer size, leading to heap memory corruption. This vulnerability mostly impacts process availability. Maintainers believe exploitation for arbitrary code execution is unlikely. A patch is available and anticipated to be part of yajl-ruby version 1.4.2. As a workaround, avoid passing large inputs to YAJL.
mend-bolt-for-githubbot
changed the title
CVE-2022-24795 (Medium) detected in yajl-ruby-1.1.0.gem
CVE-2022-24795 (Medium) detected in yajl-ruby-1.1.0.gem - autoclosed
Mar 6, 2025
✔️ This issue was automatically closed by Mend because the vulnerable library in the specific branch(es) was either marked as ignored or it is no longer part of the Mend inventory.
CVE-2022-24795 - Medium Severity Vulnerability
Library home page: https://rubygems.org/gems/yajl-ruby-1.1.0.gem
Path to dependency file: /vagrant/chef/cookbooks/apt/Gemfile.lock
Path to vulnerable library: /tmp/containerbase/cache/.ruby/cache/yajl-ruby-1.1.0.gem,/tmp/containerbase/cache/.ruby/cache/yajl-ruby-1.1.0.gem
Dependency Hierarchy:
Found in HEAD commit: 4d4d8b25d41ea632109b5a3585587d2bf861b5d6
Found in base branch: master
yajl-ruby is a C binding to the YAJL JSON parsing and generation library. The 1.x branch and the 2.x branch of
yajl
contain an integer overflow which leads to subsequent heap memory corruption when dealing with large (~2GB) inputs. The reallocation logic atyajl_buf.c#L64
may result in theneed
32bit integer wrapping to 0 whenneed
approaches a value of 0x80000000 (i.e. ~2GB of data), which results in a reallocation of buf->alloc into a small heap chunk. These integers are declared assize_t
in the 2.x branch ofyajl
, which practically prevents the issue from triggering on 64bit platforms, however this does not preclude this issue triggering on 32bit builds on whichsize_t
is a 32bit integer. Subsequent population of this under-allocated heap chunk is based on the original buffer size, leading to heap memory corruption. This vulnerability mostly impacts process availability. Maintainers believe exploitation for arbitrary code execution is unlikely. A patch is available and anticipated to be part of yajl-ruby version 1.4.2. As a workaround, avoid passing large inputs to YAJL.Publish Date: 2022-04-05
URL: CVE-2022-24795
Base Score Metrics:
Type: Upgrade version
Origin: GHSA-jj47-x69x-mxrm
Release Date: 2022-04-05
Fix Resolution: yajl-ruby - 1.4.2
Step up your Open Source Security Game with Mend here
The text was updated successfully, but these errors were encountered: