<?xml version="1.0" encoding="UTF-8"?>
<cvrfdoc xmlns="http://www.icasi.org/CVRF/schema/cvrf/1.1" xmlns:cvrf="http://www.icasi.org/CVRF/schema/cvrf/1.1">
  <DocumentTitle xml:lang="en">Security update for rubygem-yajl-ruby</DocumentTitle>
  <DocumentType>SUSE Patch</DocumentType>
  <DocumentPublisher Type="Vendor">
    <ContactDetails>security@suse.de</ContactDetails>
    <IssuingAuthority>SUSE Security Team</IssuingAuthority>
  </DocumentPublisher>
  <DocumentTracking>
    <Identification>
      <ID>SUSE-SU-2022:1918-1</ID>
    </Identification>
    <Status>Final</Status>
    <Version>1</Version>
    <RevisionHistory>
      <Revision>
        <Number>1</Number>
        <Date>2022-06-02T08:48:36Z</Date>
        <Description>current</Description>
      </Revision>
    </RevisionHistory>
    <InitialReleaseDate>2022-06-02T08:48:36Z</InitialReleaseDate>
    <CurrentReleaseDate>2022-06-02T08:48:36Z</CurrentReleaseDate>
    <Generator>
      <Engine>cve-database/bin/generate-cvrf.pl</Engine>
      <Date>2017-02-24T01:00:00Z</Date>
    </Generator>
  </DocumentTracking>
  <DocumentNotes>
    <Note Title="Topic" Type="Summary" Ordinal="1" xml:lang="en">Security update for rubygem-yajl-ruby</Note>
    <Note Title="Details" Type="General" Ordinal="2" xml:lang="en">
This update for rubygem-yajl-ruby fixes the following issue:

-CVE-2022-24795: Fixed a heap-based buffer overflow when handling large inputs due to an integer overflow (bsc#1198405)
</Note>
    <Note Title="Terms of Use" Type="Legal Disclaimer" Ordinal="3" xml:lang="en">The CVRF data is provided by SUSE under the Creative Commons License 4.0 with Attribution (CC-BY-4.0).</Note>
    <Note Title="Patchnames" Type="Details" Ordinal="4" xml:lang="en">SUSE-2022-1918,SUSE-OpenStack-Cloud-Crowbar-8-2022-1918,SUSE-OpenStack-Cloud-Crowbar-9-2022-1918</Note>
  </DocumentNotes>
  <DocumentDistribution xml:lang="en">Copyright SUSE LLC under the Creative Commons License 4.0 with Attribution (CC-BY-4.0)</DocumentDistribution>
  <DocumentReferences>
    <Reference Type="Self">
      <URL>https://www.suse.com/support/update/announcement/2022/suse-su-20221918-1/</URL>
      <Description>Link for SUSE-SU-2022:1918-1</Description>
    </Reference>
    <Reference Type="Self">
      <URL>https://lists.suse.com/pipermail/sle-security-updates/2022-June/011222.html</URL>
      <Description>E-Mail link for SUSE-SU-2022:1918-1</Description>
    </Reference>
    <Reference Type="Self">
      <URL>https://www.suse.com/support/security/rating/</URL>
      <Description>SUSE Security Ratings</Description>
    </Reference>
    <Reference Type="Self">
      <URL>https://bugzilla.suse.com/1198405</URL>
      <Description>SUSE Bug 1198405</Description>
    </Reference>
    <Reference Type="Self">
      <URL>https://www.suse.com/security/cve/CVE-2022-24795/</URL>
      <Description>SUSE CVE CVE-2022-24795 page</Description>
    </Reference>
  </DocumentReferences>
  <ProductTree xmlns="http://www.icasi.org/CVRF/schema/prod/1.1">
    <Branch Type="Product Family" Name="SUSE OpenStack Cloud Crowbar 8">
      <Branch Type="Product Name" Name="SUSE OpenStack Cloud Crowbar 8">
        <FullProductName ProductID="SUSE OpenStack Cloud Crowbar 8" CPE="cpe:/o:suse:suse-openstack-cloud-crowbar:8">SUSE OpenStack Cloud Crowbar 8</FullProductName>
      </Branch>
    </Branch>
    <Branch Type="Product Family" Name="SUSE OpenStack Cloud Crowbar 9">
      <Branch Type="Product Name" Name="SUSE OpenStack Cloud Crowbar 9">
        <FullProductName ProductID="SUSE OpenStack Cloud Crowbar 9" CPE="cpe:/o:suse:suse-openstack-cloud-crowbar:9">SUSE OpenStack Cloud Crowbar 9</FullProductName>
      </Branch>
    </Branch>
    <Branch Type="Product Version" Name="ruby2.1-rubygem-yajl-ruby-1.3.1-4.6.1">
      <FullProductName ProductID="ruby2.1-rubygem-yajl-ruby-1.3.1-4.6.1">ruby2.1-rubygem-yajl-ruby-1.3.1-4.6.1</FullProductName>
    </Branch>
    <Branch Type="Product Version" Name="ruby2.1-rubygem-yajl-ruby-doc-1.3.1-4.6.1">
      <FullProductName ProductID="ruby2.1-rubygem-yajl-ruby-doc-1.3.1-4.6.1">ruby2.1-rubygem-yajl-ruby-doc-1.3.1-4.6.1</FullProductName>
    </Branch>
    <Branch Type="Product Version" Name="ruby2.1-rubygem-yajl-ruby-testsuite-1.3.1-4.6.1">
      <FullProductName ProductID="ruby2.1-rubygem-yajl-ruby-testsuite-1.3.1-4.6.1">ruby2.1-rubygem-yajl-ruby-testsuite-1.3.1-4.6.1</FullProductName>
    </Branch>
    <Relationship ProductReference="ruby2.1-rubygem-yajl-ruby-1.3.1-4.6.1" RelationType="Default Component Of" RelatesToProductReference="SUSE OpenStack Cloud Crowbar 8">
      <FullProductName ProductID="SUSE OpenStack Cloud Crowbar 8:ruby2.1-rubygem-yajl-ruby-1.3.1-4.6.1">ruby2.1-rubygem-yajl-ruby-1.3.1-4.6.1 as a component of SUSE OpenStack Cloud Crowbar 8</FullProductName>
    </Relationship>
    <Relationship ProductReference="ruby2.1-rubygem-yajl-ruby-1.3.1-4.6.1" RelationType="Default Component Of" RelatesToProductReference="SUSE OpenStack Cloud Crowbar 9">
      <FullProductName ProductID="SUSE OpenStack Cloud Crowbar 9:ruby2.1-rubygem-yajl-ruby-1.3.1-4.6.1">ruby2.1-rubygem-yajl-ruby-1.3.1-4.6.1 as a component of SUSE OpenStack Cloud Crowbar 9</FullProductName>
    </Relationship>
  </ProductTree>
  <Vulnerability xmlns="http://www.icasi.org/CVRF/schema/vuln/1.1" Ordinal="1">
    <Notes>
      <Note Title="Vulnerability Description" Type="General" Ordinal="1" xml:lang="en">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-&gt;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.</Note>
    </Notes>
    <CVE>CVE-2022-24795</CVE>
    <ProductStatuses>
      <Status Type="Fixed">
        <ProductID>SUSE OpenStack Cloud Crowbar 8:ruby2.1-rubygem-yajl-ruby-1.3.1-4.6.1</ProductID>
        <ProductID>SUSE OpenStack Cloud Crowbar 9:ruby2.1-rubygem-yajl-ruby-1.3.1-4.6.1</ProductID>
      </Status>
    </ProductStatuses>
    <Threats>
      <Threat Type="Impact">
        <Description>moderate</Description>
      </Threat>
    </Threats>
    <CVSSScoreSets>
      <ScoreSet>
        <BaseScore>5</BaseScore>
        <Vector>AV:N/AC:L/Au:N/C:P/I:N/A:N</Vector>
      </ScoreSet>
    </CVSSScoreSets>
    <Remediations>
      <Remediation Type="Vendor Fix">
        <Description xml:lang="en">To install this SUSE Security Update use the SUSE recommended installation methods like YaST online_update or "zypper patch".
</Description>
        <URL>https://www.suse.com/support/update/announcement/2022/suse-su-20221918-1/</URL>
      </Remediation>
    </Remediations>
    <References>
      <Reference>
        <URL>https://www.suse.com/security/cve/CVE-2022-24795.html</URL>
        <Description>CVE-2022-24795</Description>
      </Reference>
      <Reference>
        <URL>https://bugzilla.suse.com/1198405</URL>
        <Description>SUSE Bug 1198405</Description>
      </Reference>
    </References>
  </Vulnerability>
</cvrfdoc>
