CVE-2022-49065

Source
https://cve.org/CVERecord?id=CVE-2022-49065
Import Source
https://storage.googleapis.com/osv-test-cve-osv-conversion/osv-output/CVE-2022-49065.json
JSON Data
https://api.test.osv.dev/v1/vulns/CVE-2022-49065
Downstream
Related
Published
2025-02-26T01:54:33.881Z
Modified
2026-03-20T12:22:08.141987Z
Severity
  • 5.5 (Medium) CVSS_V3 - CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H CVSS Calculator
Summary
SUNRPC: Fix the svc_deferred_event trace class
Details

In the Linux kernel, the following vulnerability has been resolved:

SUNRPC: Fix the svcdeferredevent trace class

Fix a NULL deref crash that occurs when an svcrqst is deferred while the sunrpc tracing subsystem is enabled. svcrevisit() sets dr->xprt to NULL, so it can't be relied upon in the tracepoint to provide the remote's address.

Unfortunately we can't revert the "svcdeferredclass" hunk in commit ece200ddd54b ("sunrpc: Save remote presentation address in svc_xprt for trace events") because there is now a specific check of event format specifiers for unsafe dereferences. The warning that check emits is:

event svcdeferrecv has unsafe dereference of argument 1

A "%pISpc" format specifier with a "struct sockaddr *" is indeed flagged by this check.

Instead, take the brute-force approach used by the svcrdmaqperror tracepoint. Convert the dr::addr field into a presentation address in the TPfastassign() arm of the trace event, and store that as a string. This fix can be backported to -stable kernels.

In the meantime, commit c6ced22997ad ("tracing: Update print fmt check to handle new __get_sockaddr() macro") is now in v5.18, so this wonky fix can be replaced with __sockaddr() and friends properly during the v5.19 merge window.

Database specific
{
    "cna_assigner": "Linux",
    "osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2022/49xxx/CVE-2022-49065.json"
}
References

Affected packages

Git / git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git

Affected ranges

Type
GIT
Repo
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
Events
Introduced
ece200ddd54b9ce840cfee554fb812560c545c7d
Fixed
85ee17ca21cf92989e8c923e3ea4514c291e9d38
Fixed
726ae7300fcc25fefa46d188cc07eb16dc908f9e
Fixed
c2456f470eea3bd06574d988bf6089e7c3f4c5cc
Fixed
4d5004451ab2218eab94a30e1841462c9316ba19

Database specific

source
"https://storage.googleapis.com/osv-test-cve-osv-conversion/osv-output/CVE-2022-49065.json"