CVE-2021-47249: net: rds: fix memory leak in rds_recvmsg
In the Linux kernel, the following vulnerability has been resolved:
net: rds: fix memory leak in rds_recvmsg
Syzbot reported memory leak in rds. The problem
was in unputted refcount in case of error.
int rds_recvmsg(struct socket *sock, struct msghdr *msg, size_t size,
int msg_flags)
{
...
if (!rds_next_incoming(rs, &inc)) {
...
}
After this "if" inc refcount incremented and
if (rds_cmsg_recv(inc, msg, rs)) {
ret = -EFAULT;
goto out;
}
...
out:
return ret;
}
in case of rds_cmsg_recv() fail the refcount won't be
decremented. And it's easy to see from ftrace log, that
rds_inc_addref() don't have rds_inc_put() pair in
rds_recvmsg() after rds_cmsg_recv()
1) | rds_recvmsg() {
1) 3.721 us | rds_inc_addref();
1) 3.853 us | rds_message_inc_copy_to_user();
1) + 10.395 us | rds_cmsg_recv();
1) + 34.260 us | }
Security readout for executives and security teams
Plain-English summary
CVE-2021-47249 is a Linux kernel memory leak in the RDS networking code. An error path in rds_recvmsg can fail to release a reference, gradually leaking kernel memory. The business concern is service reliability on systems using affected kernels, especially where RDS is enabled or reachable.
Executive priority
Handle through normal kernel patch governance unless exposure confirms RDS use on critical or multi-tenant systems. No active exploitation or severity score is provided, so urgency should be driven by asset criticality and affected-version confirmation.
Technical view
The issue is in rds_recvmsg after rds_next_incoming increments the incoming-message reference count. If rds_cmsg_recv fails, execution returns through out without the matching rds_inc_put, creating an unbalanced reference and memory leak. The CVE cites Linux stable commits as the resolution.
Likely exposure
Exposure is most likely on Linux systems running affected kernel versions with RDS networking available or in use. The source bundle lists affected Linux versions and stable fix commits, but does not provide package-level distro mappings or deployment prerequisites.
Exploitation context
The CVE source says syzbot reported the leak and includes ftrace evidence. It does not cite active exploitation, public weaponization, CVSS, or CISA KEV listing. Treat exploitation status as not evidenced by the provided sources.
Researcher notes
The record is source-light but specific: a refcount imbalance in rds_recvmsg when rds_cmsg_recv returns failure. The affected-version data in the bundle is incomplete for distro package decisions, so validation should rely on kernel commit presence and vendor advisories.
Mitigation direction
Update affected Linux kernels to vendor builds containing the referenced stable fix.
Check Linux distribution advisories for exact fixed package versions.
If RDS is unnecessary, review vendor guidance on reducing RDS exposure.
Prioritize externally exposed or multi-tenant systems once affected kernels are confirmed.
Validation and detection
Inventory Linux kernel versions across production and cloud images.
Confirm whether RDS modules or RDS-dependent workloads are present.
Map installed distro kernel packages to vendor fixed releases.
Review kernel change logs for the referenced stable commits.
Monitor for unexplained kernel memory growth on affected systems.
Generated from the cited source records. This long-tail analysis has not been individually reviewed by a named human.
Potential ATT&CK relevance
Conservative CVE-to-ATT&CK context
These mappings and lookup hints may be relevant to the vulnerability behavior, CWE, affected product, or exposure path. Glexia-inferred context is not an official MITRE, ATT&CK, CWE, or CVE Program mapping.
ATT&CK lookup starting points
Use these exact CWE pages and searches to review the Glexia ATT&CK library from this CVE's weakness and description context.
cve · low confidence lookup
CVE-2021-47249 mapping review
Open the CVE-to-ATT&CK bridge for reviewed, inferred, or future official mappings tied to this CVE.
These fields come from the CVE record and ADP containers, not from Glexia's Take. They preserve time-varying source decisions such as CISA SSVC, KEV status, CVSS metrics, and provider references.