<?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">An update for redis is now available for openEuler-20.03-LTS and openEuler-20.03-LTS-SP1</DocumentTitle>
	<DocumentType>Security Advisory</DocumentType>
	<DocumentPublisher Type="Vendor">
		<ContactDetails>openeuler-security@openeuler.org</ContactDetails>
		<IssuingAuthority>openEuler security committee</IssuingAuthority>
	</DocumentPublisher>
	<DocumentTracking>
		<Identification>
			<ID>openEuler-SA-2021-1093</ID>
		</Identification>
		<Status>Final</Status>
		<Version>1.0</Version>
		<RevisionHistory>
			<Revision>
				<Number>1.0</Number>
				<Date>2021-03-26</Date>
				<Description>Initial</Description>
			</Revision>
		</RevisionHistory>
		<InitialReleaseDate>2021-03-26</InitialReleaseDate>
		<CurrentReleaseDate>2021-03-26</CurrentReleaseDate>
		<Generator>
			<Engine>openEuler SA Tool V1.0</Engine>
			<Date>2021-03-26</Date>
		</Generator>
	</DocumentTracking>
	<DocumentNotes>
		<Note Title="Synopsis" Type="General" Ordinal="1" xml:lang="en">redis security update</Note>
		<Note Title="Summary" Type="General" Ordinal="2" xml:lang="en">An update for redis is now available for openEuler-20.03-LTS and openEuler-20.03-LTS-SP1.</Note>
		<Note Title="Description" Type="General" Ordinal="3" xml:lang="en">Redis is an advanced key-value store. It is often referred to as a dattructure server since keys can contain strings, hashes ,lists, sets anorted sets.

Security Fix(es):

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.(CVE-2021-21309)</Note>
		<Note Title="Topic" Type="General" Ordinal="4" xml:lang="en">An update for redis is now available for openEuler-20.03-LTS and openEuler-20.03-LTS-SP1.

openEuler Security has rated this update as having a security impact of critical. A Common Vunlnerability Scoring System(CVSS)base score,which gives a detailed severity rating, is available for each vulnerability from the CVElink(s) in the References section.</Note>
		<Note Title="Severity" Type="General" Ordinal="5" xml:lang="en">Critical</Note>
		<Note Title="Affected Component" Type="General" Ordinal="6" xml:lang="en">redis</Note>
	</DocumentNotes>
	<DocumentReferences>
		<Reference Type="Self">
			<URL>https://openeuler.org/en/security/safety-bulletin/detail.html?id=openEuler-SA-2021-1093</URL>
		</Reference>
		<Reference Type="openEuler CVE">
			<URL>https://openeuler.org/en/security/cve/detail.html?id=CVE-2021-21309</URL>
		</Reference>
		<Reference Type="Other">
			<URL>https://nvd.nist.gov/vuln/detail/CVE-2021-21309</URL>
		</Reference>
	</DocumentReferences>
	<ProductTree xmlns="http://www.icasi.org/CVRF/schema/prod/1.1">
		<Branch Type="Product Name" Name="openEuler">
			<FullProductName ProductID="openEuler-20.03-LTS" CPE="cpe:/a:openEuler:openEuler:20.03-LTS">openEuler-20.03-LTS</FullProductName>
			<FullProductName ProductID="openEuler-20.03-LTS-SP1" CPE="cpe:/a:openEuler:openEuler:20.03-LTS-SP1">openEuler-20.03-LTS-SP1</FullProductName>
		</Branch>
		<Branch Type="Package Arch" Name="aarch64">
			<FullProductName ProductID="redis-debuginfo-4.0.11-13" CPE="cpe:/a:openEuler:openEuler:20.03-LTS">redis-debuginfo-4.0.11-13.oe1.aarch64.rpm</FullProductName>
			<FullProductName ProductID="redis-4.0.11-13" CPE="cpe:/a:openEuler:openEuler:20.03-LTS">redis-4.0.11-13.oe1.aarch64.rpm</FullProductName>
			<FullProductName ProductID="redis-debugsource-4.0.11-13" CPE="cpe:/a:openEuler:openEuler:20.03-LTS">redis-debugsource-4.0.11-13.oe1.aarch64.rpm</FullProductName>
			<FullProductName ProductID="redis-debugsource-4.0.11-13" CPE="cpe:/a:openEuler:openEuler:20.03-LTS-SP1">redis-debugsource-4.0.11-13.oe1.aarch64.rpm</FullProductName>
			<FullProductName ProductID="redis-debuginfo-4.0.11-13" CPE="cpe:/a:openEuler:openEuler:20.03-LTS-SP1">redis-debuginfo-4.0.11-13.oe1.aarch64.rpm</FullProductName>
			<FullProductName ProductID="redis-4.0.11-13" CPE="cpe:/a:openEuler:openEuler:20.03-LTS-SP1">redis-4.0.11-13.oe1.aarch64.rpm</FullProductName>
		</Branch>
		<Branch Type="Package Arch" Name="src">
			<FullProductName ProductID="redis-4.0.11-13" CPE="cpe:/a:openEuler:openEuler:20.03-LTS">redis-4.0.11-13.oe1.src.rpm</FullProductName>
			<FullProductName ProductID="redis-4.0.11-13" CPE="cpe:/a:openEuler:openEuler:20.03-LTS-SP1">redis-4.0.11-13.oe1.src.rpm</FullProductName>
		</Branch>
		<Branch Type="Package Arch" Name="x86_64">
			<FullProductName ProductID="redis-debugsource-4.0.11-13" CPE="cpe:/a:openEuler:openEuler:20.03-LTS">redis-debugsource-4.0.11-13.oe1.x86_64.rpm</FullProductName>
			<FullProductName ProductID="redis-4.0.11-13" CPE="cpe:/a:openEuler:openEuler:20.03-LTS">redis-4.0.11-13.oe1.x86_64.rpm</FullProductName>
			<FullProductName ProductID="redis-debuginfo-4.0.11-13" CPE="cpe:/a:openEuler:openEuler:20.03-LTS">redis-debuginfo-4.0.11-13.oe1.x86_64.rpm</FullProductName>
			<FullProductName ProductID="redis-4.0.11-13" CPE="cpe:/a:openEuler:openEuler:20.03-LTS-SP1">redis-4.0.11-13.oe1.x86_64.rpm</FullProductName>
			<FullProductName ProductID="redis-debuginfo-4.0.11-13" CPE="cpe:/a:openEuler:openEuler:20.03-LTS-SP1">redis-debuginfo-4.0.11-13.oe1.x86_64.rpm</FullProductName>
			<FullProductName ProductID="redis-debugsource-4.0.11-13" CPE="cpe:/a:openEuler:openEuler:20.03-LTS-SP1">redis-debugsource-4.0.11-13.oe1.x86_64.rpm</FullProductName>
		</Branch>
	</ProductTree>
	<Vulnerability Ordinal="1" xmlns="http://www.icasi.org/CVRF/schema/vuln/1.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>
		<ReleaseDate>2021-03-26</ReleaseDate>
		<CVE>CVE-2021-21309</CVE>
		<ProductStatuses>
			<Status Type="Fixed">
				<ProductID>openEuler-20.03-LTS</ProductID>
				<ProductID>openEuler-20.03-LTS-SP1</ProductID>
			</Status>
		</ProductStatuses>
		<Threats>
			<Threat Type="Impact">
				<Description>Critical</Description>
			</Threat>
		</Threats>
		<CVSSScoreSets>
			<ScoreSet>
				<BaseScore>9.8</BaseScore>
				<Vector>AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H</Vector>
			</ScoreSet>
		</CVSSScoreSets>
		<Remediations>
			<Remediation Type="Vendor Fix">
				<Description>redis security update</Description>
				<DATE>2021-03-26</DATE>
				<URL>https://openeuler.org/en/security/safety-bulletin/detail.html?id=openEuler-SA-2021-1093</URL>
			</Remediation>
		</Remediations>
	</Vulnerability>
</cvrfdoc>