In the Linux kernel, the following vulnerability has been resolved:
bonding: fix xfrm real_dev null pointer dereference
We shouldn't set realdev to NULL because packets can be in transit and xfrm might call xdodevoffloadok() in parallel. All callbacks assume real_dev is set.
Example trace: kernel: BUG: unable to handle page fault for address: 0000000000001030 kernel: bond0: (slave eni0np1): making interface the new active one kernel: #PF: supervisor write access in kernel mode kernel: #PF: errorcode(0x0002) - not-present page kernel: PGD 0 P4D 0 kernel: Oops: 0002 [#1] PREEMPT SMP kernel: CPU: 4 PID: 2237 Comm: ping Not tainted 6.7.7+ #12 kernel: Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.3-2.fc40 04/01/2014 kernel: RIP: 0010:nsimipsecoffloadok+0xc/0x20 [netdevsim] kernel: bond0: (slave eni0np1): bondipsecaddsaall: failed to add SA kernel: Code: e0 0f 0b 48 83 7f 38 00 74 de 0f 0b 48 8b 47 08 48 8b 37 48 8b 78 40 e9 b2 e5 9a d7 66 90 0f 1f 44 00 00 48 8b 86 80 02 00 00 <83> 80 30 10 00 00 01 b8 01 00 00 00 c3 0f 1f 80 00 00 00 00 0f 1f kernel: bond0: (slave eni0np1): making interface the new active one kernel: RSP: 0018:ffffabde81553b98 EFLAGS: 00010246 kernel: bond0: (slave eni0np1): bondipsecaddsaall: failed to add SA kernel: kernel: RAX: 0000000000000000 RBX: ffff9eb404e74900 RCX: ffff9eb403d97c60 kernel: RDX: ffffffffc090de10 RSI: ffff9eb404e74900 RDI: ffff9eb3c5de9e00 kernel: RBP: ffff9eb3c0a42000 R08: 0000000000000010 R09: 0000000000000014 kernel: R10: 7974203030303030 R11: 3030303030303030 R12: 0000000000000000 kernel: R13: ffff9eb3c5de9e00 R14: ffffabde81553cc8 R15: ffff9eb404c53000 kernel: FS: 00007f2a77a3ad00(0000) GS:ffff9eb43bd00000(0000) knlGS:0000000000000000 kernel: CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 kernel: CR2: 0000000000001030 CR3: 00000001122ab000 CR4: 0000000000350ef0 kernel: bond0: (slave eni0np1): making interface the new active one kernel: Call Trace: kernel: <TASK> kernel: ? _die+0x1f/0x60 kernel: bond0: (slave eni0np1): bondipsecaddsaall: failed to add SA kernel: ? pagefaultoops+0x142/0x4c0 kernel: ? douseraddrfault+0x65/0x670 kernel: ? kvmreadandresetapfflags+0x3b/0x50 kernel: bond0: (slave eni0np1): making interface the new active one kernel: ? excpagefault+0x7b/0x180 kernel: ? asmexcpagefault+0x22/0x30 kernel: ? nsimbpfuninit+0x50/0x50 [netdevsim] kernel: bond0: (slave eni0np1): bondipsecaddsaall: failed to add SA kernel: ? nsimipsecoffloadok+0xc/0x20 [netdevsim] kernel: bond0: (slave eni0np1): making interface the new active one kernel: bondipsecoffloadok+0x7b/0x90 [bonding] kernel: xfrmoutput+0x61/0x3b0 kernel: bond0: (slave eni0np1): bondipsecaddsaall: failed to add SA kernel: ippushpendingframes+0x56/0x80
[
{
"digest": {
"threshold": 0.9,
"line_hashes": [
"11446513758730980150588630548020651102",
"80523614514454225633663730149523706557",
"276379375085468418069960912351914888928",
"253911481693574759481076906627019457696"
]
},
"signature_type": "Line",
"target": {
"file": "drivers/net/bonding/bond_main.c"
},
"deprecated": false,
"signature_version": "v1",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@f8cde9805981c50d0c029063dc7d82821806fc44",
"id": "CVE-2024-44989-02cb1c59"
},
{
"digest": {
"function_hash": "31089118096002125309346226695188231836",
"length": 720.0
},
"signature_type": "Function",
"target": {
"function": "bond_ipsec_del_sa_all",
"file": "drivers/net/bonding/bond_main.c"
},
"deprecated": false,
"signature_version": "v1",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@21816b696c172c19d53a30d45ee005cce246ed21",
"id": "CVE-2024-44989-26650fa3"
},
{
"digest": {
"function_hash": "31089118096002125309346226695188231836",
"length": 720.0
},
"signature_type": "Function",
"target": {
"function": "bond_ipsec_del_sa_all",
"file": "drivers/net/bonding/bond_main.c"
},
"deprecated": false,
"signature_version": "v1",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@7fa9243391ad2afe798ef4ea2e2851947b95754f",
"id": "CVE-2024-44989-3035139b"
},
{
"digest": {
"threshold": 0.9,
"line_hashes": [
"11446513758730980150588630548020651102",
"80523614514454225633663730149523706557",
"276379375085468418069960912351914888928",
"253911481693574759481076906627019457696"
]
},
"signature_type": "Line",
"target": {
"file": "drivers/net/bonding/bond_main.c"
},
"deprecated": false,
"signature_version": "v1",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@4582d4ff413a07d4ed8a4823c652dc5207760548",
"id": "CVE-2024-44989-5700b04f"
},
{
"digest": {
"threshold": 0.9,
"line_hashes": [
"11446513758730980150588630548020651102",
"80523614514454225633663730149523706557",
"276379375085468418069960912351914888928",
"253911481693574759481076906627019457696"
]
},
"signature_type": "Line",
"target": {
"file": "drivers/net/bonding/bond_main.c"
},
"deprecated": false,
"signature_version": "v1",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@7fa9243391ad2afe798ef4ea2e2851947b95754f",
"id": "CVE-2024-44989-5c0ad459"
},
{
"digest": {
"function_hash": "31089118096002125309346226695188231836",
"length": 720.0
},
"signature_type": "Function",
"target": {
"function": "bond_ipsec_del_sa_all",
"file": "drivers/net/bonding/bond_main.c"
},
"deprecated": false,
"signature_version": "v1",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@f8cde9805981c50d0c029063dc7d82821806fc44",
"id": "CVE-2024-44989-7ccdd015"
},
{
"digest": {
"threshold": 0.9,
"line_hashes": [
"11446513758730980150588630548020651102",
"80523614514454225633663730149523706557",
"276379375085468418069960912351914888928",
"253911481693574759481076906627019457696"
]
},
"signature_type": "Line",
"target": {
"file": "drivers/net/bonding/bond_main.c"
},
"deprecated": false,
"signature_version": "v1",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@21816b696c172c19d53a30d45ee005cce246ed21",
"id": "CVE-2024-44989-a91756ef"
},
{
"digest": {
"function_hash": "31089118096002125309346226695188231836",
"length": 720.0
},
"signature_type": "Function",
"target": {
"function": "bond_ipsec_del_sa_all",
"file": "drivers/net/bonding/bond_main.c"
},
"deprecated": false,
"signature_version": "v1",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@2f72c6a66bcd7e0187ec085237fee5db27145294",
"id": "CVE-2024-44989-ab838291"
},
{
"digest": {
"threshold": 0.9,
"line_hashes": [
"11446513758730980150588630548020651102",
"80523614514454225633663730149523706557",
"276379375085468418069960912351914888928",
"253911481693574759481076906627019457696"
]
},
"signature_type": "Line",
"target": {
"file": "drivers/net/bonding/bond_main.c"
},
"deprecated": false,
"signature_version": "v1",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@89fc1dca79db5c3e7a2d589ecbf8a3661c65f436",
"id": "CVE-2024-44989-ae58eed5"
},
{
"digest": {
"function_hash": "31089118096002125309346226695188231836",
"length": 720.0
},
"signature_type": "Function",
"target": {
"function": "bond_ipsec_del_sa_all",
"file": "drivers/net/bonding/bond_main.c"
},
"deprecated": false,
"signature_version": "v1",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@4582d4ff413a07d4ed8a4823c652dc5207760548",
"id": "CVE-2024-44989-b3dc9a01"
},
{
"digest": {
"threshold": 0.9,
"line_hashes": [
"11446513758730980150588630548020651102",
"80523614514454225633663730149523706557",
"276379375085468418069960912351914888928",
"253911481693574759481076906627019457696"
]
},
"signature_type": "Line",
"target": {
"file": "drivers/net/bonding/bond_main.c"
},
"deprecated": false,
"signature_version": "v1",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@2f72c6a66bcd7e0187ec085237fee5db27145294",
"id": "CVE-2024-44989-bc5969ce"
},
{
"digest": {
"function_hash": "31089118096002125309346226695188231836",
"length": 720.0
},
"signature_type": "Function",
"target": {
"function": "bond_ipsec_del_sa_all",
"file": "drivers/net/bonding/bond_main.c"
},
"deprecated": false,
"signature_version": "v1",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@89fc1dca79db5c3e7a2d589ecbf8a3661c65f436",
"id": "CVE-2024-44989-cb478262"
}
]