<?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 nodejs10</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:0082-1</ID>
    </Identification>
    <Status>Final</Status>
    <Version>1</Version>
    <RevisionHistory>
      <Revision>
        <Number>1</Number>
        <Date>2021-01-16T11:24:40Z</Date>
        <Description>current</Description>
      </Revision>
    </RevisionHistory>
    <InitialReleaseDate>2021-01-16T11:24:40Z</InitialReleaseDate>
    <CurrentReleaseDate>2021-01-16T11:24:40Z</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 nodejs10</Note>
    <Note Title="Details" Type="General" Ordinal="2" xml:lang="en">This update for nodejs10 fixes the following issues:

- New upstream LTS version 10.23.1:
  * CVE-2020-8265: use-after-free in TLSWrap (High) bug in TLS
    implementation. When writing to a TLS enabled socket,
    node::StreamBase::Write calls node::TLSWrap::DoWrite with
    a freshly allocated WriteWrap object as first argument.
    If the DoWrite method does not return an error, this object is
    passed back to the caller as part of a StreamWriteResult structure.
    This may be exploited to corrupt memory leading to a
    Denial of Service or potentially other exploits (bsc#1180553)
  * CVE-2020-8287: HTTP Request Smuggling allow two copies of a
    header field in a http request. For example, two Transfer-Encoding
    header fields. In this case Node.js identifies the first header
    field and ignores the second. This can lead to HTTP Request
    Smuggling (https://cwe.mitre.org/data/definitions/444.html).
    (bsc#1180554)
  * CVE-2020-1971: OpenSSL - EDIPARTYNAME NULL pointer de-reference
    (High) This is a vulnerability in OpenSSL which may be exploited
    through Node.js. (bsc#1179491)

- New upstream LTS version 10.23.0:
  * deps: upgrade npm to 6.14.8
  * n-api:
    + create N-API version 7
    + expose napi_build_version variable

This update was imported from the SUSE:SLE-15: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-82</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/JQ2RC7AEXMLHMCFO7K3XLJO5WMPQXS7V/</URL>
      <Description>E-Mail link for openSUSE-SU-2021:0082-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/1179491</URL>
      <Description>SUSE Bug 1179491</Description>
    </Reference>
    <Reference Type="Self">
      <URL>https://bugzilla.suse.com/1180553</URL>
      <Description>SUSE Bug 1180553</Description>
    </Reference>
    <Reference Type="Self">
      <URL>https://bugzilla.suse.com/1180554</URL>
      <Description>SUSE Bug 1180554</Description>
    </Reference>
    <Reference Type="Self">
      <URL>https://www.suse.com/security/cve/CVE-2020-1971/</URL>
      <Description>SUSE CVE CVE-2020-1971 page</Description>
    </Reference>
    <Reference Type="Self">
      <URL>https://www.suse.com/security/cve/CVE-2020-8265/</URL>
      <Description>SUSE CVE CVE-2020-8265 page</Description>
    </Reference>
    <Reference Type="Self">
      <URL>https://www.suse.com/security/cve/CVE-2020-8287/</URL>
      <Description>SUSE CVE CVE-2020-8287 page</Description>
    </Reference>
  </DocumentReferences>
  <ProductTree xmlns="http://www.icasi.org/CVRF/schema/prod/1.1">
    <Branch Type="Product Family" Name="openSUSE Leap 15.1">
      <Branch Type="Product Name" Name="openSUSE Leap 15.1">
        <FullProductName ProductID="openSUSE Leap 15.1" CPE="cpe:/o:opensuse:leap:15.1">openSUSE Leap 15.1</FullProductName>
      </Branch>
    </Branch>
    <Branch Type="Product Version" Name="nodejs10-10.23.1-lp151.2.15.1">
      <FullProductName ProductID="nodejs10-10.23.1-lp151.2.15.1">nodejs10-10.23.1-lp151.2.15.1</FullProductName>
    </Branch>
    <Branch Type="Product Version" Name="nodejs10-devel-10.23.1-lp151.2.15.1">
      <FullProductName ProductID="nodejs10-devel-10.23.1-lp151.2.15.1">nodejs10-devel-10.23.1-lp151.2.15.1</FullProductName>
    </Branch>
    <Branch Type="Product Version" Name="nodejs10-docs-10.23.1-lp151.2.15.1">
      <FullProductName ProductID="nodejs10-docs-10.23.1-lp151.2.15.1">nodejs10-docs-10.23.1-lp151.2.15.1</FullProductName>
    </Branch>
    <Branch Type="Product Version" Name="npm10-10.23.1-lp151.2.15.1">
      <FullProductName ProductID="npm10-10.23.1-lp151.2.15.1">npm10-10.23.1-lp151.2.15.1</FullProductName>
    </Branch>
    <Relationship ProductReference="nodejs10-10.23.1-lp151.2.15.1" RelationType="Default Component Of" RelatesToProductReference="openSUSE Leap 15.1">
      <FullProductName ProductID="openSUSE Leap 15.1:nodejs10-10.23.1-lp151.2.15.1">nodejs10-10.23.1-lp151.2.15.1 as a component of openSUSE Leap 15.1</FullProductName>
    </Relationship>
    <Relationship ProductReference="nodejs10-devel-10.23.1-lp151.2.15.1" RelationType="Default Component Of" RelatesToProductReference="openSUSE Leap 15.1">
      <FullProductName ProductID="openSUSE Leap 15.1:nodejs10-devel-10.23.1-lp151.2.15.1">nodejs10-devel-10.23.1-lp151.2.15.1 as a component of openSUSE Leap 15.1</FullProductName>
    </Relationship>
    <Relationship ProductReference="nodejs10-docs-10.23.1-lp151.2.15.1" RelationType="Default Component Of" RelatesToProductReference="openSUSE Leap 15.1">
      <FullProductName ProductID="openSUSE Leap 15.1:nodejs10-docs-10.23.1-lp151.2.15.1">nodejs10-docs-10.23.1-lp151.2.15.1 as a component of openSUSE Leap 15.1</FullProductName>
    </Relationship>
    <Relationship ProductReference="npm10-10.23.1-lp151.2.15.1" RelationType="Default Component Of" RelatesToProductReference="openSUSE Leap 15.1">
      <FullProductName ProductID="openSUSE Leap 15.1:npm10-10.23.1-lp151.2.15.1">npm10-10.23.1-lp151.2.15.1 as a component of openSUSE Leap 15.1</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">The X.509 GeneralName type is a generic type for representing different types of names. One of those name types is known as EDIPartyName. OpenSSL provides a function GENERAL_NAME_cmp which compares different instances of a GENERAL_NAME to see if they are equal or not. This function behaves incorrectly when both GENERAL_NAMEs contain an EDIPARTYNAME. A NULL pointer dereference and a crash may occur leading to a possible denial of service attack. OpenSSL itself uses the GENERAL_NAME_cmp function for two purposes: 1) Comparing CRL distribution point names between an available CRL and a CRL distribution point embedded in an X509 certificate 2) When verifying that a timestamp response token signer matches the timestamp authority name (exposed via the API functions TS_RESP_verify_response and TS_RESP_verify_token) If an attacker can control both items being compared then that attacker could trigger a crash. For example if the attacker can trick a client or server into checking a malicious certificate against a malicious CRL then this may occur. Note that some applications automatically download CRLs based on a URL embedded in a certificate. This checking happens prior to the signatures on the certificate and CRL being verified. OpenSSL's s_server, s_client and verify tools have support for the "-crl_download" option which implements automatic CRL downloading and this attack has been demonstrated to work against those tools. Note that an unrelated bug means that affected versions of OpenSSL cannot parse or construct correct encodings of EDIPARTYNAME. However it is possible to construct a malformed EDIPARTYNAME that OpenSSL's parser will accept and hence trigger this attack. All OpenSSL 1.1.1 and 1.0.2 versions are affected by this issue. Other OpenSSL releases are out of support and have not been checked. Fixed in OpenSSL 1.1.1i (Affected 1.1.1-1.1.1h). Fixed in OpenSSL 1.0.2x (Affected 1.0.2-1.0.2w).</Note>
    </Notes>
    <CVE>CVE-2020-1971</CVE>
    <ProductStatuses>
      <Status Type="Fixed">
        <ProductID>openSUSE Leap 15.1:nodejs10-10.23.1-lp151.2.15.1</ProductID>
        <ProductID>openSUSE Leap 15.1:nodejs10-devel-10.23.1-lp151.2.15.1</ProductID>
        <ProductID>openSUSE Leap 15.1:nodejs10-docs-10.23.1-lp151.2.15.1</ProductID>
        <ProductID>openSUSE Leap 15.1:npm10-10.23.1-lp151.2.15.1</ProductID>
      </Status>
    </ProductStatuses>
    <Threats>
      <Threat Type="Impact">
        <Description>important</Description>
      </Threat>
    </Threats>
    <CVSSScoreSets>
      <ScoreSet>
        <BaseScore>4.3</BaseScore>
        <Vector>AV:N/AC:M/Au:N/C:N/I:N/A:P</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/JQ2RC7AEXMLHMCFO7K3XLJO5WMPQXS7V/</URL>
      </Remediation>
    </Remediations>
    <References>
      <Reference>
        <URL>https://www.suse.com/security/cve/CVE-2020-1971.html</URL>
        <Description>CVE-2020-1971</Description>
      </Reference>
      <Reference>
        <URL>https://bugzilla.suse.com/1179491</URL>
        <Description>SUSE Bug 1179491</Description>
      </Reference>
      <Reference>
        <URL>https://bugzilla.suse.com/1196179</URL>
        <Description>SUSE Bug 1196179</Description>
      </Reference>
      <Reference>
        <URL>https://bugzilla.suse.com/1199303</URL>
        <Description>SUSE Bug 1199303</Description>
      </Reference>
    </References>
  </Vulnerability>
  <Vulnerability xmlns="http://www.icasi.org/CVRF/schema/vuln/1.1" Ordinal="2">
    <Notes>
      <Note Title="Vulnerability Description" Type="General" Ordinal="1" xml:lang="en">Node.js versions before 10.23.1, 12.20.1, 14.15.4, 15.5.1 are vulnerable to a use-after-free bug in its TLS implementation. When writing to a TLS enabled socket, node::StreamBase::Write calls node::TLSWrap::DoWrite with a freshly allocated WriteWrap object as first argument. If the DoWrite method does not return an error, this object is passed back to the caller as part of a StreamWriteResult structure. This may be exploited to corrupt memory leading to a Denial of Service or potentially other exploits.</Note>
    </Notes>
    <CVE>CVE-2020-8265</CVE>
    <ProductStatuses>
      <Status Type="Fixed">
        <ProductID>openSUSE Leap 15.1:nodejs10-10.23.1-lp151.2.15.1</ProductID>
        <ProductID>openSUSE Leap 15.1:nodejs10-devel-10.23.1-lp151.2.15.1</ProductID>
        <ProductID>openSUSE Leap 15.1:nodejs10-docs-10.23.1-lp151.2.15.1</ProductID>
        <ProductID>openSUSE Leap 15.1:npm10-10.23.1-lp151.2.15.1</ProductID>
      </Status>
    </ProductStatuses>
    <Threats>
      <Threat Type="Impact">
        <Description>important</Description>
      </Threat>
    </Threats>
    <CVSSScoreSets>
      <ScoreSet>
        <BaseScore>6.8</BaseScore>
        <Vector>AV:N/AC:M/Au:N/C:P/I:P/A:P</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/JQ2RC7AEXMLHMCFO7K3XLJO5WMPQXS7V/</URL>
      </Remediation>
    </Remediations>
    <References>
      <Reference>
        <URL>https://www.suse.com/security/cve/CVE-2020-8265.html</URL>
        <Description>CVE-2020-8265</Description>
      </Reference>
      <Reference>
        <URL>https://bugzilla.suse.com/1180553</URL>
        <Description>SUSE Bug 1180553</Description>
      </Reference>
    </References>
  </Vulnerability>
  <Vulnerability xmlns="http://www.icasi.org/CVRF/schema/vuln/1.1" Ordinal="3">
    <Notes>
      <Note Title="Vulnerability Description" Type="General" Ordinal="1" xml:lang="en">Node.js versions before 10.23.1, 12.20.1, 14.15.4, 15.5.1 allow two copies of a header field in an HTTP request (for example, two Transfer-Encoding header fields). In this case, Node.js identifies the first header field and ignores the second. This can lead to HTTP Request Smuggling.</Note>
    </Notes>
    <CVE>CVE-2020-8287</CVE>
    <ProductStatuses>
      <Status Type="Fixed">
        <ProductID>openSUSE Leap 15.1:nodejs10-10.23.1-lp151.2.15.1</ProductID>
        <ProductID>openSUSE Leap 15.1:nodejs10-devel-10.23.1-lp151.2.15.1</ProductID>
        <ProductID>openSUSE Leap 15.1:nodejs10-docs-10.23.1-lp151.2.15.1</ProductID>
        <ProductID>openSUSE Leap 15.1:npm10-10.23.1-lp151.2.15.1</ProductID>
      </Status>
    </ProductStatuses>
    <Threats>
      <Threat Type="Impact">
        <Description>moderate</Description>
      </Threat>
    </Threats>
    <CVSSScoreSets>
      <ScoreSet>
        <BaseScore>6.4</BaseScore>
        <Vector>AV:N/AC:L/Au:N/C:P/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/JQ2RC7AEXMLHMCFO7K3XLJO5WMPQXS7V/</URL>
      </Remediation>
    </Remediations>
    <References>
      <Reference>
        <URL>https://www.suse.com/security/cve/CVE-2020-8287.html</URL>
        <Description>CVE-2020-8287</Description>
      </Reference>
      <Reference>
        <URL>https://bugzilla.suse.com/1180554</URL>
        <Description>SUSE Bug 1180554</Description>
      </Reference>
    </References>
  </Vulnerability>
</cvrfdoc>
