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

redis was updated to 6.0.13:

* CVE-2021-29477: Integer overflow in STRALGO LCS command (bsc#1185729)
* CVE-2021-29478: Integer overflow in COPY command for large intsets (bsc#1185730)
* Cluster: Skip unnecessary check which may prevent failure detection
* Fix performance regression in BRPOP on Redis 6.0
* Fix edge-case when a module client is unblocked

redis 6.0.12:

* Fix compilation error on non-glibc systems if jemalloc is not used

redis 6.0.11:

* CVE-2021-21309: Avoid 32-bit overflows when proto-max-bulk-len
  is set high (bsc#1182657)
* Fix handling of threaded IO and CLIENT PAUSE (failover), could
  lead to data loss or a crash
* Fix the selection of a random element from large hash tables
* Fix broken protocol in client tracking tracking-redir-broken message
* XINFO able to access expired keys on a replica
* Fix broken protocol in redis-benchmark when used with -a or
  --dbnum 
* Avoid assertions (on older kernels) when testing arm64 CoW bug
* CONFIG REWRITE should honor umask settings
* Fix firstkey,lastkey,step in COMMAND command for some commands
* RM_ZsetRem: Delete key if empty, the bug could leave empty
  zset keys 

- Switch systemd type of the sentinel service from notify to simple. This can
  be reverted when updating to 6.2 which fixes
  https://github.com/redis/redis/issues/7284 .
</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-2021-1652,SUSE-SLE-Module-Server-Applications-15-SP2-2021-1652,SUSE-SLE-Module-Server-Applications-15-SP3-2021-1652</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/2021/suse-su-20211652-1/</URL>
      <Description>Link for SUSE-SU-2021:1652-1</Description>
    </Reference>
    <Reference Type="Self">
      <URL>https://lists.suse.com/pipermail/sle-security-updates/2021-May/008787.html</URL>
      <Description>E-Mail link for SUSE-SU-2021:1652-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/1182657</URL>
      <Description>SUSE Bug 1182657</Description>
    </Reference>
    <Reference Type="Self">
      <URL>https://bugzilla.suse.com/1185729</URL>
      <Description>SUSE Bug 1185729</Description>
    </Reference>
    <Reference Type="Self">
      <URL>https://bugzilla.suse.com/1185730</URL>
      <Description>SUSE Bug 1185730</Description>
    </Reference>
    <Reference Type="Self">
      <URL>https://www.suse.com/security/cve/CVE-2021-21309/</URL>
      <Description>SUSE CVE CVE-2021-21309 page</Description>
    </Reference>
    <Reference Type="Self">
      <URL>https://www.suse.com/security/cve/CVE-2021-29477/</URL>
      <Description>SUSE CVE CVE-2021-29477 page</Description>
    </Reference>
    <Reference Type="Self">
      <URL>https://www.suse.com/security/cve/CVE-2021-29478/</URL>
      <Description>SUSE CVE CVE-2021-29478 page</Description>
    </Reference>
  </DocumentReferences>
  <ProductTree xmlns="http://www.icasi.org/CVRF/schema/prod/1.1">
    <Branch Type="Product Family" Name="SUSE Linux Enterprise Module for Server Applications 15 SP2">
      <Branch Type="Product Name" Name="SUSE Linux Enterprise Module for Server Applications 15 SP2">
        <FullProductName ProductID="SUSE Linux Enterprise Module for Server Applications 15 SP2" CPE="cpe:/o:suse:sle-module-server-applications:15:sp2">SUSE Linux Enterprise Module for Server Applications 15 SP2</FullProductName>
      </Branch>
    </Branch>
    <Branch Type="Product Family" Name="SUSE Linux Enterprise Module for Server Applications 15 SP3">
      <Branch Type="Product Name" Name="SUSE Linux Enterprise Module for Server Applications 15 SP3">
        <FullProductName ProductID="SUSE Linux Enterprise Module for Server Applications 15 SP3" CPE="cpe:/o:suse:sle-module-server-applications:15:sp3">SUSE Linux Enterprise Module for Server Applications 15 SP3</FullProductName>
      </Branch>
    </Branch>
    <Branch Type="Product Version" Name="redis-6.0.13-1.10.1">
      <FullProductName ProductID="redis-6.0.13-1.10.1">redis-6.0.13-1.10.1</FullProductName>
    </Branch>
    <Relationship ProductReference="redis-6.0.13-1.10.1" RelationType="Default Component Of" RelatesToProductReference="SUSE Linux Enterprise Module for Server Applications 15 SP2">
      <FullProductName ProductID="SUSE Linux Enterprise Module for Server Applications 15 SP2:redis-6.0.13-1.10.1">redis-6.0.13-1.10.1 as a component of SUSE Linux Enterprise Module for Server Applications 15 SP2</FullProductName>
    </Relationship>
    <Relationship ProductReference="redis-6.0.13-1.10.1" RelationType="Default Component Of" RelatesToProductReference="SUSE Linux Enterprise Module for Server Applications 15 SP3">
      <FullProductName ProductID="SUSE Linux Enterprise Module for Server Applications 15 SP3:redis-6.0.13-1.10.1">redis-6.0.13-1.10.1 as a component of SUSE Linux Enterprise Module for Server Applications 15 SP3</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">Redis is an open-source, in-memory database that persists on disk. In affected versions of Redis an integer overflow bug in 32-bit Redis version 4.0 or newer could be exploited to corrupt the heap and potentially result with remote code execution. Redis 4.0 or newer uses a configurable limit for the maximum supported bulk input size. By default, it is 512MB which is a safe value for all platforms. If the limit is significantly increased, receiving a large request from a client may trigger several integer overflow scenarios, which would result with buffer overflow and heap corruption. We believe this could in certain conditions be exploited for remote code execution. By default, authenticated Redis users have access to all configuration parameters and can therefore use the “CONFIG SET proto-max-bulk-len” to change the safe default, making the system vulnerable. **This problem only affects 32-bit Redis (on a 32-bit system, or as a 32-bit executable running on a 64-bit system).** The problem is fixed in version 6.2, and the fix is back ported to 6.0.11 and 5.0.11. Make sure you use one of these versions if you are running 32-bit Redis. An additional workaround to mitigate the problem without patching the redis-server executable is to prevent clients from directly executing `CONFIG SET`: Using Redis 6.0 or newer, ACL configuration can be used to block the command. Using older versions, the `rename-command` configuration directive can be used to rename the command to a random string unknown to users, rendering it inaccessible. Please note that this workaround may have an additional impact on users or operational systems that expect `CONFIG SET` to behave in certain ways.</Note>
    </Notes>
    <CVE>CVE-2021-21309</CVE>
    <ProductStatuses>
      <Status Type="Fixed">
        <ProductID>SUSE Linux Enterprise Module for Server Applications 15 SP2:redis-6.0.13-1.10.1</ProductID>
        <ProductID>SUSE Linux Enterprise Module for Server Applications 15 SP3:redis-6.0.13-1.10.1</ProductID>
      </Status>
    </ProductStatuses>
    <Threats>
      <Threat Type="Impact">
        <Description>important</Description>
      </Threat>
    </Threats>
    <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/2021/suse-su-20211652-1/</URL>
      </Remediation>
    </Remediations>
    <References>
      <Reference>
        <URL>https://www.suse.com/security/cve/CVE-2021-21309.html</URL>
        <Description>CVE-2021-21309</Description>
      </Reference>
      <Reference>
        <URL>https://bugzilla.suse.com/1182657</URL>
        <Description>SUSE Bug 1182657</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">Redis is an open source (BSD licensed), in-memory data structure store, used as a database, cache, and message broker. An integer overflow bug in Redis version 6.0 or newer could be exploited using the `STRALGO LCS` command to corrupt the heap and potentially result with remote code execution. The problem is fixed in version 6.2.3 and 6.0.13. An additional workaround to mitigate the problem without patching the redis-server executable is to use ACL configuration to prevent clients from using the `STRALGO LCS` command.</Note>
    </Notes>
    <CVE>CVE-2021-29477</CVE>
    <ProductStatuses>
      <Status Type="Fixed">
        <ProductID>SUSE Linux Enterprise Module for Server Applications 15 SP2:redis-6.0.13-1.10.1</ProductID>
        <ProductID>SUSE Linux Enterprise Module for Server Applications 15 SP3:redis-6.0.13-1.10.1</ProductID>
      </Status>
    </ProductStatuses>
    <Threats>
      <Threat Type="Impact">
        <Description>important</Description>
      </Threat>
    </Threats>
    <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/2021/suse-su-20211652-1/</URL>
      </Remediation>
    </Remediations>
    <References>
      <Reference>
        <URL>https://www.suse.com/security/cve/CVE-2021-29477.html</URL>
        <Description>CVE-2021-29477</Description>
      </Reference>
      <Reference>
        <URL>https://bugzilla.suse.com/1185729</URL>
        <Description>SUSE Bug 1185729</Description>
      </Reference>
      <Reference>
        <URL>https://bugzilla.suse.com/1186722</URL>
        <Description>SUSE Bug 1186722</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">Redis is an open source (BSD licensed), in-memory data structure store, used as a database, cache, and message broker. An integer overflow bug in Redis 6.2 before 6.2.3 could be exploited to corrupt the heap and potentially result with remote code execution. Redis 6.0 and earlier are not directly affected by this issue. The problem is fixed in version 6.2.3. An additional workaround to mitigate the problem without patching the `redis-server` executable is to prevent users from modifying the `set-max-intset-entries` configuration parameter. This can be done using ACL to restrict unprivileged users from using the `CONFIG SET` command.</Note>
    </Notes>
    <CVE>CVE-2021-29478</CVE>
    <ProductStatuses>
      <Status Type="Fixed">
        <ProductID>SUSE Linux Enterprise Module for Server Applications 15 SP2:redis-6.0.13-1.10.1</ProductID>
        <ProductID>SUSE Linux Enterprise Module for Server Applications 15 SP3:redis-6.0.13-1.10.1</ProductID>
      </Status>
    </ProductStatuses>
    <Threats>
      <Threat Type="Impact">
        <Description>important</Description>
      </Threat>
    </Threats>
    <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/2021/suse-su-20211652-1/</URL>
      </Remediation>
    </Remediations>
    <References>
      <Reference>
        <URL>https://www.suse.com/security/cve/CVE-2021-29478.html</URL>
        <Description>CVE-2021-29478</Description>
      </Reference>
      <Reference>
        <URL>https://bugzilla.suse.com/1185728</URL>
        <Description>SUSE Bug 1185728</Description>
      </Reference>
      <Reference>
        <URL>https://bugzilla.suse.com/1185730</URL>
        <Description>SUSE Bug 1185730</Description>
      </Reference>
    </References>
  </Vulnerability>
</cvrfdoc>
