<?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 netty</DocumentTitle>
  <DocumentType>SUSE Patch</DocumentType>
  <DocumentPublisher Type="Vendor">
    <ContactDetails>security@suse.de</ContactDetails>
    <IssuingAuthority>SUSE Security Team</IssuingAuthority>
  </DocumentPublisher>
  <DocumentTracking>
    <Identification>
      <ID>openSUSE-SU-2021:0448-1</ID>
    </Identification>
    <Status>Final</Status>
    <Version>1</Version>
    <RevisionHistory>
      <Revision>
        <Number>1</Number>
        <Date>2021-03-19T13:05:57Z</Date>
        <Description>current</Description>
      </Revision>
    </RevisionHistory>
    <InitialReleaseDate>2021-03-19T13:05:57Z</InitialReleaseDate>
    <CurrentReleaseDate>2021-03-19T13:05:57Z</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 netty</Note>
    <Note Title="Details" Type="General" Ordinal="2" xml:lang="en">This update for netty fixes the following issues:

- CVE-2021-21295: Fixed an improper Content-Length header field validation (bsc#1183262). :

This update was imported from the SUSE:SLE-15-SP2:Update update project.</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">openSUSE-2021-448</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://lists.opensuse.org/archives/list/security-announce@lists.opensuse.org/thread/XDF63Q7PJ5ZO6J24Z3YJ7WWZWTTROVC2/</URL>
      <Description>E-Mail link for openSUSE-SU-2021:0448-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/1183262</URL>
      <Description>SUSE Bug 1183262</Description>
    </Reference>
    <Reference Type="Self">
      <URL>https://www.suse.com/security/cve/CVE-2021-21295/</URL>
      <Description>SUSE CVE CVE-2021-21295 page</Description>
    </Reference>
  </DocumentReferences>
  <ProductTree xmlns="http://www.icasi.org/CVRF/schema/prod/1.1">
    <Branch Type="Product Family" Name="openSUSE Leap 15.2">
      <Branch Type="Product Name" Name="openSUSE Leap 15.2">
        <FullProductName ProductID="openSUSE Leap 15.2" CPE="cpe:/o:opensuse:leap:15.2">openSUSE Leap 15.2</FullProductName>
      </Branch>
    </Branch>
    <Branch Type="Product Version" Name="netty-4.1.13-lp152.3.3.1">
      <FullProductName ProductID="netty-4.1.13-lp152.3.3.1">netty-4.1.13-lp152.3.3.1</FullProductName>
    </Branch>
    <Branch Type="Product Version" Name="netty-javadoc-4.1.13-lp152.3.3.1">
      <FullProductName ProductID="netty-javadoc-4.1.13-lp152.3.3.1">netty-javadoc-4.1.13-lp152.3.3.1</FullProductName>
    </Branch>
    <Branch Type="Product Version" Name="netty-poms-4.1.13-lp152.3.3.1">
      <FullProductName ProductID="netty-poms-4.1.13-lp152.3.3.1">netty-poms-4.1.13-lp152.3.3.1</FullProductName>
    </Branch>
    <Relationship ProductReference="netty-4.1.13-lp152.3.3.1" RelationType="Default Component Of" RelatesToProductReference="openSUSE Leap 15.2">
      <FullProductName ProductID="openSUSE Leap 15.2:netty-4.1.13-lp152.3.3.1">netty-4.1.13-lp152.3.3.1 as a component of openSUSE Leap 15.2</FullProductName>
    </Relationship>
    <Relationship ProductReference="netty-javadoc-4.1.13-lp152.3.3.1" RelationType="Default Component Of" RelatesToProductReference="openSUSE Leap 15.2">
      <FullProductName ProductID="openSUSE Leap 15.2:netty-javadoc-4.1.13-lp152.3.3.1">netty-javadoc-4.1.13-lp152.3.3.1 as a component of openSUSE Leap 15.2</FullProductName>
    </Relationship>
    <Relationship ProductReference="netty-poms-4.1.13-lp152.3.3.1" RelationType="Default Component Of" RelatesToProductReference="openSUSE Leap 15.2">
      <FullProductName ProductID="openSUSE Leap 15.2:netty-poms-4.1.13-lp152.3.3.1">netty-poms-4.1.13-lp152.3.3.1 as a component of openSUSE Leap 15.2</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">Netty is an open-source, asynchronous event-driven network application framework for rapid development of maintainable high performance protocol servers &amp; clients. In Netty (io.netty:netty-codec-http2) before version 4.1.60.Final there is a vulnerability that enables request smuggling. If a Content-Length header is present in the original HTTP/2 request, the field is not validated by `Http2MultiplexHandler` as it is propagated up. This is fine as long as the request is not proxied through as HTTP/1.1. If the request comes in as an HTTP/2 stream, gets converted into the HTTP/1.1 domain objects (`HttpRequest`, `HttpContent`, etc.) via `Http2StreamFrameToHttpObjectCodec `and then sent up to the child channel's pipeline and proxied through a remote peer as HTTP/1.1 this may result in request smuggling. In a proxy case, users may assume the content-length is validated somehow, which is not the case. If the request is forwarded to a backend channel that is a HTTP/1.1 connection, the Content-Length now has meaning and needs to be checked. An attacker can smuggle requests inside the body as it gets downgraded from HTTP/2 to HTTP/1.1. For an example attack refer to the linked GitHub Advisory. Users are only affected if all of this is true: `HTTP2MultiplexCodec` or `Http2FrameCodec` is used, `Http2StreamFrameToHttpObjectCodec` is used to convert to HTTP/1.1 objects, and these HTTP/1.1 objects are forwarded to another remote peer. This has been patched in 4.1.60.Final As a workaround, the user can do the validation by themselves by implementing a custom `ChannelInboundHandler` that is put in the `ChannelPipeline` behind `Http2StreamFrameToHttpObjectCodec`.</Note>
    </Notes>
    <CVE>CVE-2021-21295</CVE>
    <ProductStatuses>
      <Status Type="Fixed">
        <ProductID>openSUSE Leap 15.2:netty-4.1.13-lp152.3.3.1</ProductID>
        <ProductID>openSUSE Leap 15.2:netty-javadoc-4.1.13-lp152.3.3.1</ProductID>
        <ProductID>openSUSE Leap 15.2:netty-poms-4.1.13-lp152.3.3.1</ProductID>
      </Status>
    </ProductStatuses>
    <Threats>
      <Threat Type="Impact">
        <Description>moderate</Description>
      </Threat>
    </Threats>
    <CVSSScoreSets>
      <ScoreSet>
        <BaseScore>2.6</BaseScore>
        <Vector>AV:N/AC:H/Au:N/C:N/I:P/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://lists.opensuse.org/archives/list/security-announce@lists.opensuse.org/thread/XDF63Q7PJ5ZO6J24Z3YJ7WWZWTTROVC2/</URL>
      </Remediation>
    </Remediations>
    <References>
      <Reference>
        <URL>https://www.suse.com/security/cve/CVE-2021-21295.html</URL>
        <Description>CVE-2021-21295</Description>
      </Reference>
      <Reference>
        <URL>https://bugzilla.suse.com/1183262</URL>
        <Description>SUSE Bug 1183262</Description>
      </Reference>
      <Reference>
        <URL>https://bugzilla.suse.com/1184203</URL>
        <Description>SUSE Bug 1184203</Description>
      </Reference>
    </References>
  </Vulnerability>
</cvrfdoc>
