OESA-2022-1883 (CVE-2021-29477)
Vulnerability from osv_openeuler – Published: 2022-09-02 11:05 – Updated: 2026-08-06 11:05 – Source websiteRedis is an advanced key-value store. It is often referred to as a data structure server since keys can contain strings, hashes, lists, sets and sorted sets. You can run atomic operations on these types, like appending to a string; incrementing the value in a hash; pushing to a list; computing set intersection, union and difference; or getting the member with highest ranking in a sorted set. In order to achieve its outstanding performance, Redis works with an in-memory dataset. Depending on your use case, you can persist it either by dumping the dataset to disk every once in a while, or by appending each command to a log. Redis also supports trivial-to-setup master-slave replication, with very fast non-blocking first synchronization, auto-reconnection on net split and so forth. Other features include Transactions, Pub/Sub, Lua scripting, Keys with a limited time-to-live, and configuration settings to make Redis behave like a cache. You can use Redis from most programming languages also.
Security Fix(es):
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.(CVE-2021-29477)
| URL | Type | |
|---|---|---|
{
"affected": [
{
"ecosystem_specific": {
"aarch64": [
"redis6-debugsource-6.2.7-1.oe1.aarch64.rpm",
"redis6-devel-6.2.7-1.oe1.aarch64.rpm",
"redis6-6.2.7-1.oe1.aarch64.rpm",
"redis6-debuginfo-6.2.7-1.oe1.aarch64.rpm"
],
"noarch": [
"redis6-doc-6.2.7-1.oe1.noarch.rpm"
],
"src": [
"redis6-6.2.7-1.oe1.src.rpm"
],
"x86_64": [
"redis6-devel-6.2.7-1.oe1.x86_64.rpm",
"redis6-6.2.7-1.oe1.x86_64.rpm",
"redis6-debugsource-6.2.7-1.oe1.x86_64.rpm",
"redis6-debuginfo-6.2.7-1.oe1.x86_64.rpm"
]
},
"package": {
"ecosystem": "openEuler:20.03-LTS-SP1",
"name": "redis6",
"purl": "pkg:rpm/openEuler/redis6\u0026distro=openEuler-20.03-LTS-SP1"
},
"ranges": [
{
"events": [
{
"introduced": "0"
},
{
"fixed": "6.2.7-1.oe1"
}
],
"type": "ECOSYSTEM"
}
]
},
{
"ecosystem_specific": {
"aarch64": [
"redis6-debugsource-6.2.7-1.oe1.aarch64.rpm",
"redis6-6.2.7-1.oe1.aarch64.rpm",
"redis6-debuginfo-6.2.7-1.oe1.aarch64.rpm",
"redis6-devel-6.2.7-1.oe1.aarch64.rpm"
],
"noarch": [
"redis6-doc-6.2.7-1.oe1.noarch.rpm"
],
"src": [
"redis6-6.2.7-1.oe1.src.rpm"
],
"x86_64": [
"redis6-debuginfo-6.2.7-1.oe1.x86_64.rpm",
"redis6-6.2.7-1.oe1.x86_64.rpm",
"redis6-devel-6.2.7-1.oe1.x86_64.rpm",
"redis6-debugsource-6.2.7-1.oe1.x86_64.rpm"
]
},
"package": {
"ecosystem": "openEuler:20.03-LTS-SP3",
"name": "redis6",
"purl": "pkg:rpm/openEuler/redis6\u0026distro=openEuler-20.03-LTS-SP3"
},
"ranges": [
{
"events": [
{
"introduced": "0"
},
{
"fixed": "6.2.7-1.oe1"
}
],
"type": "ECOSYSTEM"
}
]
},
{
"ecosystem_specific": {
"aarch64": [
"redis6-devel-6.2.7-1.oe2203.aarch64.rpm",
"redis6-6.2.7-1.oe2203.aarch64.rpm",
"redis6-debugsource-6.2.7-1.oe2203.aarch64.rpm",
"redis6-debuginfo-6.2.7-1.oe2203.aarch64.rpm"
],
"noarch": [
"redis6-doc-6.2.7-1.oe2203.noarch.rpm"
],
"src": [
"redis6-6.2.7-1.oe2203.src.rpm"
],
"x86_64": [
"redis6-debuginfo-6.2.7-1.oe2203.x86_64.rpm",
"redis6-6.2.7-1.oe2203.x86_64.rpm",
"redis6-debugsource-6.2.7-1.oe2203.x86_64.rpm",
"redis6-devel-6.2.7-1.oe2203.x86_64.rpm"
]
},
"package": {
"ecosystem": "openEuler:22.03-LTS",
"name": "redis6",
"purl": "pkg:rpm/openEuler/redis6\u0026distro=openEuler-22.03-LTS"
},
"ranges": [
{
"events": [
{
"introduced": "0"
},
{
"fixed": "6.2.7-1.oe2203"
}
],
"type": "ECOSYSTEM"
}
]
}
],
"database_specific": {
"severity": "High"
},
"details": "Redis is an advanced key-value store. It is often referred to as a data structure server since keys can contain strings, hashes, lists, sets and sorted sets. You can run atomic operations on these types, like appending to a string; incrementing the value in a hash; pushing to a list; computing set intersection, union and difference; or getting the member with highest ranking in a sorted set. In order to achieve its outstanding performance, Redis works with an in-memory dataset. Depending on your use case, you can persist it either by dumping the dataset to disk every once in a while, or by appending each command to a log. Redis also supports trivial-to-setup master-slave replication, with very fast non-blocking first synchronization, auto-reconnection on net split and so forth. Other features include Transactions, Pub/Sub, Lua scripting, Keys with a limited time-to-live, and configuration settings to make Redis behave like a cache. You can use Redis from most programming languages also.\r\n\r\nSecurity Fix(es):\r\n\r\nRedis 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.(CVE-2021-29477)",
"id": "OESA-2022-1883",
"modified": "2026-08-06T11:05:09Z",
"published": "2022-09-02T11:05:09Z",
"references": [
{
"type": "ADVISORY",
"url": "https://www.openeuler.org/en/security/safety-bulletin/detail.html?id=openEuler-SA-2022-1883"
},
{
"type": "ADVISORY",
"url": "https://nvd.nist.gov/vuln/detail/CVE-2021-29477"
}
],
"schema_version": "1.7.2",
"severity": [
{
"score": "CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H",
"type": "CVSS_V3"
}
],
"summary": "redis6 security update",
"upstream": [
"CVE-2021-29477"
]
}
Sightings
| Author | Source | Type | Date | Other |
|---|
Nomenclature
- Seen: The vulnerability was mentioned, discussed, or observed by the user.
- Confirmed: The vulnerability has been validated from an analyst's perspective.
- Published Proof of Concept: A public proof of concept is available for this vulnerability.
- Exploited: The vulnerability was observed as exploited by the user who reported the sighting.
- Patched: The vulnerability was observed as successfully patched by the user who reported the sighting.
- Not exploited: The vulnerability was not observed as exploited by the user who reported the sighting.
- Not confirmed: The user expressed doubt about the validity of the vulnerability.
- Not patched: The vulnerability was not observed as successfully patched by the user who reported the sighting.
The approach is described in our paper Mapping CVEs to MITRE ATT&CK Techniques: A Curated Gold-Set Classifier and the Limits of LLM-Assisted Label Expansion.
Browse all ATT&CK techniques and the vulnerabilities related to each.
Related by attack behaviour
Vulnerabilities whose description is nearest to this one in the vector space of the CIRCL/vulnerability-attack-technique-biencoder model. This is a similarity search over the bi-encoder space (plain cosine), not a classification, and it has no measured accuracy.