CVE-2022-49649

Source
https://cve.org/CVERecord?id=CVE-2022-49649
Import Source
https://storage.googleapis.com/osv-test-cve-osv-conversion/osv-output/CVE-2022-49649.json
JSON Data
https://api.test.osv.dev/v1/vulns/CVE-2022-49649
Downstream
Related
Published
2025-02-26T02:23:52.531Z
Modified
2026-04-11T12:44:21.193097Z
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
xen/netback: avoid entering xenvif_rx_next_skb() with an empty rx queue
Details

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

xen/netback: avoid entering xenvifrxnext_skb() with an empty rx queue

xenvifrxnextskb() is expecting the rx queue not being empty, but in case the loop in xenvifrx_action() is doing multiple iterations, the availability of another skb in the rx queue is not being checked.

This can lead to crashes:

[40072.537261] BUG: unable to handle kernel NULL pointer dereference at 0000000000000080 [40072.537407] IP: xenvifrxskb+0x23/0x590 [xennetback] [40072.537534] PGD 0 P4D 0 [40072.537644] Oops: 0000 [#1] SMP NOPTI [40072.537749] CPU: 0 PID: 12505 Comm: v1-c40247-q2-gu Not tainted 4.12.14-122.121-default #1 SLE12-SP5 [40072.537867] Hardware name: HP ProLiant DL580 Gen9/ProLiant DL580 Gen9, BIOS U17 11/23/2021 [40072.537999] task: ffff880433b38100 task.stack: ffffc90043d40000 [40072.538112] RIP: e030:xenvifrxskb+0x23/0x590 [xennetback] [40072.538217] RSP: e02b:ffffc90043d43de0 EFLAGS: 00010246 [40072.538319] RAX: 0000000000000000 RBX: ffffc90043cd7cd0 RCX: 00000000000000f7 [40072.538430] RDX: 0000000000000000 RSI: 0000000000000006 RDI: ffffc90043d43df8 [40072.538531] RBP: 000000000000003f R08: 000077ff80000000 R09: 0000000000000008 [40072.538644] R10: 0000000000007ff0 R11: 00000000000008f6 R12: ffffc90043ce2708 [40072.538745] R13: 0000000000000000 R14: ffffc90043d43ed0 R15: ffff88043ea748c0 [40072.538861] FS: 0000000000000000(0000) GS:ffff880484600000(0000) knlGS:0000000000000000 [40072.538988] CS: e033 DS: 0000 ES: 0000 CR0: 0000000080050033 [40072.539088] CR2: 0000000000000080 CR3: 0000000407ac8000 CR4: 0000000000040660 [40072.539211] Call Trace: [40072.539319] xenvifrxaction+0x71/0x90 [xennetback] [40072.539429] xenvifkthreadguestrx+0x14a/0x29c [xen_netback]

Fix that by stopping the loop in case the rx queue becomes empty.

Database specific
{
    "osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2022/49xxx/CVE-2022-49649.json",
    "cna_assigner": "Linux"
}
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
98f6d57ced73b723551568262019f1d6c8771f20
Fixed
c0fcceb5f3f1ec197c014fe218c2f28108cacd27
Fixed
d5320c6a27aa975aff740f9cb481dcbde48f4348
Fixed
5a071aefd6414af5a20321ab58a0557b81993687
Fixed
7425479d20f9e96f7c3ec8e8a93fe0d7478724cb
Fixed
b9c32a6886af79d6e0ad87a7b01800ed079cdd02
Fixed
b99174ac57fe5d8867448c03b23828e63f24cb1c
Fixed
f0b5c819b062df8bf5f2acf4697e3871cb3722da
Fixed
94e8100678889ab428e68acadf042de723f094b9

Database specific

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

Linux / Kernel

Package

Name
Kernel

Affected ranges

Type
ECOSYSTEM
Events
Introduced
4.9.0
Fixed
4.9.324
Type
ECOSYSTEM
Events
Introduced
4.10.0
Fixed
4.14.289
Type
ECOSYSTEM
Events
Introduced
4.15.0
Fixed
4.19.253
Type
ECOSYSTEM
Events
Introduced
4.20.0
Fixed
5.4.207
Type
ECOSYSTEM
Events
Introduced
5.5.0
Fixed
5.10.132
Type
ECOSYSTEM
Events
Introduced
5.11.0
Fixed
5.15.56
Type
ECOSYSTEM
Events
Introduced
5.16.0
Fixed
5.18.13

Database specific

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