In the Linux kernel, the following vulnerability has been resolved: wifi: mac80211: fix NULL dereference at band check in starting tx ba session In MLD connection, linkdata/linkconf are dynamically allocated. They don't point to vif->bssconf. So, there will be no chanreq assigned to vif->bssconf and then the chan will be NULL. Tweak the code to check htsupported/vhtsupported/hashe/haseht on sta deflink. Crash log (with rtw89 version under MLO development): [ 9890.526087] BUG: kernel NULL pointer dereference, address: 0000000000000000 [ 9890.526102] #PF: supervisor read access in kernel mode [ 9890.526105] #PF: errorcode(0x0000) - not-present page [ 9890.526109] PGD 0 P4D 0 [ 9890.526114] Oops: 0000 [#1] PREEMPT SMP PTI [ 9890.526119] CPU: 2 PID: 6367 Comm: kworker/u16:2 Kdump: loaded Tainted: G OE 6.9.0 #1 [ 9890.526123] Hardware name: LENOVO 2356AD1/2356AD1, BIOS G7ETB3WW (2.73 ) 11/28/2018 [ 9890.526126] Workqueue: phy2 rtw89corebawork [rtw89core] [ 9890.526203] RIP: 0010:ieee80211starttxbasession (net/mac80211/agg-tx.c:618 (discriminator 1)) mac80211 [ 9890.526279] Code: f7 e8 d5 93 3e ea 48 83 c4 28 89 d8 5b 41 5c 41 5d 41 5e 41 5f 5d c3 cc cc cc cc 49 8b 84 24 e0 f1 ff ff 48 8b 80 90 1b 00 00 <83> 38 03 0f 84 37 fe ff ff bb ea ff ff ff eb cc 49 8b 84 24 10 f3 All code ======== 0: f7 e8 imul %eax 2: d5 (bad) 3: 93 xchg %eax,%ebx 4: 3e ea ds (bad) 6: 48 83 c4 28 add $0x28,%rsp a: 89 d8 mov %ebx,%eax c: 5b pop %rbx d: 41 5c pop %r12 f: 41 5d pop %r13 11: 41 5e pop %r14 13: 41 5f pop %r15 15: 5d pop %rbp 16: c3 retq 17: cc int3 18: cc int3 19: cc int3 1a: cc int3 1b: 49 8b 84 24 e0 f1 ff mov -0xe20(%r12),%rax 22: ff 23: 48 8b 80 90 1b 00 00 mov 0x1b90(%rax),%rax 2a:* 83 38 03 cmpl $0x3,(%rax) <-- trapping instruction 2d: 0f 84 37 fe ff ff je 0xfffffffffffffe6a 33: bb ea ff ff ff mov $0xffffffea,%ebx 38: eb cc jmp 0x6 3a: 49 rex.WB 3b: 8b .byte 0x8b 3c: 84 24 10 test %ah,(%rax,%rdx,1) 3f: f3 repz Code starting with the faulting instruction =========================================== 0: 83 38 03 cmpl $0x3,(%rax) 3: 0f 84 37 fe ff ff je 0xfffffffffffffe40 9: bb ea ff ff ff mov $0xffffffea,%ebx e: eb cc jmp 0xffffffffffffffdc 10: 49 rex.WB 11: 8b .byte 0x8b 12: 84 24 10 test %ah,(%rax,%rdx,1) 15: f3 repz [ 9890.526285] RSP: 0018:ffffb8db09013d68 EFLAGS: 00010246 [ 9890.526291] RAX: 0000000000000000 RBX: 0000000000000000 RCX: ffff9308e0d656c8 [ 9890.526295] RDX: 0000000000000000 RSI: ffffffffab99460b RDI: ffffffffab9a7685 [ 9890.526300] RBP: ffffb8db09013db8 R08: 0000000000000000 R09: 0000000000000873 [ 9890.526304] R10: ffff9308e0d64800 R11: 0000000000000002 R12: ffff9308e5ff6e70 [ 9890.526308] R13: ffff930952500e20 R14: ffff9309192a8c00 R15: 0000000000000000 [ 9890.526313] FS: 0000000000000000(0000) GS:ffff930b4e700000(0000) knlGS:0000000000000000 [ 9890.526316] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 [ 9890.526318] CR2: 0000000000000000 CR3: 0000000391c58005 CR4: 00000000001706f0 [ 9890.526321] Call Trace: [ 9890.526324] <TASK> [ 9890.526327] ? showregs (arch/x86/kernel/dumpstack.c:479) [ 9890.526335] ? _die (arch/x86/kernel/dumpstack.c:421 arch/x86/kernel/dumpstack.c:434) [ 9890.526340] ? pagefaultoops (arch/x86/mm/fault.c:713) [ 9890.526347] ? searchmodule_extables (kernel/module/main.c:3256 (discriminator ---truncated---
{ "availability": "No subscription required", "ubuntu_priority": "medium", "binaries": [ { "binary_version": "6.11.0-7.7", "binary_name": "linux-bpf-dev" }, { "binary_version": "6.11.0-7.7", "binary_name": "linux-buildinfo-6.11.0-7-generic" }, { "binary_version": "6.11.0-7.7", "binary_name": "linux-buildinfo-6.11.0-7-generic-64k" }, { "binary_version": "6.11.0-7.7", "binary_name": "linux-cloud-tools-6.11.0-7" }, { "binary_version": "6.11.0-7.7", "binary_name": "linux-cloud-tools-6.11.0-7-generic" }, { "binary_version": "6.11.0-7.7", "binary_name": "linux-cloud-tools-common" }, { "binary_version": "6.11.0-7.7", "binary_name": "linux-doc" }, { "binary_version": "6.11.0-7.7", "binary_name": "linux-headers-6.11.0-7" }, { "binary_version": "6.11.0-7.7", "binary_name": "linux-headers-6.11.0-7-generic" }, { "binary_version": "6.11.0-7.7", "binary_name": "linux-headers-6.11.0-7-generic-64k" }, { "binary_version": "6.11.0-7.7", "binary_name": "linux-image-6.11.0-7-generic" }, { "binary_version": "6.11.0-7.7", "binary_name": "linux-image-6.11.0-7-generic-dbgsym" }, { "binary_version": "6.11.0-7.7", "binary_name": "linux-image-unsigned-6.11.0-7-generic" }, { "binary_version": "6.11.0-7.7", "binary_name": "linux-image-unsigned-6.11.0-7-generic-64k" }, { "binary_version": "6.11.0-7.7", "binary_name": "linux-image-unsigned-6.11.0-7-generic-64k-dbgsym" }, { "binary_version": "6.11.0-7.7", "binary_name": "linux-image-unsigned-6.11.0-7-generic-dbgsym" }, { "binary_version": "6.11.0-7.7", "binary_name": "linux-lib-rust-6.11.0-7-generic" }, { "binary_version": "6.11.0-7.7", "binary_name": "linux-libc-dev" }, { "binary_version": "6.11.0-7.7", "binary_name": "linux-modules-6.11.0-7-generic" }, { "binary_version": "6.11.0-7.7", "binary_name": "linux-modules-6.11.0-7-generic-64k" }, { "binary_version": "6.11.0-7.7", "binary_name": "linux-modules-extra-6.11.0-7-generic" }, { "binary_version": "6.11.0-7.7", "binary_name": "linux-modules-ipu6-6.11.0-7-generic" }, { "binary_version": "6.11.0-7.7", "binary_name": "linux-modules-ipu7-6.11.0-7-generic" }, { "binary_version": "6.11.0-7.7", "binary_name": "linux-modules-iwlwifi-6.11.0-7-generic" }, { "binary_version": "6.11.0-7.7", "binary_name": "linux-modules-usbio-6.11.0-7-generic" }, { "binary_version": "6.11.0-7.7", "binary_name": "linux-modules-vision-6.11.0-7-generic" }, { "binary_version": "6.11.0-7.7", "binary_name": "linux-source-6.11.0" }, { "binary_version": "6.11.0-7.7", "binary_name": "linux-tools-6.11.0-7" }, { "binary_version": "6.11.0-7.7", "binary_name": "linux-tools-6.11.0-7-generic" }, { "binary_version": "6.11.0-7.7", "binary_name": "linux-tools-6.11.0-7-generic-64k" }, { "binary_version": "6.11.0-7.7", "binary_name": "linux-tools-common" }, { "binary_version": "6.11.0-7.7", "binary_name": "linux-tools-host" } ] }
{ "availability": "No subscription required", "ubuntu_priority": "medium", "binaries": [ { "binary_version": "6.11.0-1002.2", "binary_name": "linux-aws-cloud-tools-6.11.0-1002" }, { "binary_version": "6.11.0-1002.2", "binary_name": "linux-aws-headers-6.11.0-1002" }, { "binary_version": "6.11.0-1002.2", "binary_name": "linux-aws-tools-6.11.0-1002" }, { "binary_version": "6.11.0-1002.2", "binary_name": "linux-buildinfo-6.11.0-1002-aws" }, { "binary_version": "6.11.0-1002.2", "binary_name": "linux-cloud-tools-6.11.0-1002-aws" }, { "binary_version": "6.11.0-1002.2", "binary_name": "linux-headers-6.11.0-1002-aws" }, { "binary_version": "6.11.0-1002.2", "binary_name": "linux-image-unsigned-6.11.0-1002-aws" }, { "binary_version": "6.11.0-1002.2", "binary_name": "linux-image-unsigned-6.11.0-1002-aws-dbgsym" }, { "binary_version": "6.11.0-1002.2", "binary_name": "linux-modules-6.11.0-1002-aws" }, { "binary_version": "6.11.0-1002.2", "binary_name": "linux-modules-extra-6.11.0-1002-aws" }, { "binary_version": "6.11.0-1002.2", "binary_name": "linux-tools-6.11.0-1002-aws" } ] }
{ "availability": "No subscription required", "ubuntu_priority": "medium", "binaries": [ { "binary_version": "6.11.0-1003.3", "binary_name": "linux-azure-cloud-tools-6.11.0-1003" }, { "binary_version": "6.11.0-1003.3", "binary_name": "linux-azure-headers-6.11.0-1003" }, { "binary_version": "6.11.0-1003.3", "binary_name": "linux-azure-tools-6.11.0-1003" }, { "binary_version": "6.11.0-1003.3", "binary_name": "linux-buildinfo-6.11.0-1003-azure" }, { "binary_version": "6.11.0-1003.3", "binary_name": "linux-cloud-tools-6.11.0-1003-azure" }, { "binary_version": "6.11.0-1003.3", "binary_name": "linux-headers-6.11.0-1003-azure" }, { "binary_version": "6.11.0-1003.3", "binary_name": "linux-image-unsigned-6.11.0-1003-azure" }, { "binary_version": "6.11.0-1003.3", "binary_name": "linux-image-unsigned-6.11.0-1003-azure-dbgsym" }, { "binary_version": "6.11.0-1003.3", "binary_name": "linux-modules-6.11.0-1003-azure" }, { "binary_version": "6.11.0-1003.3", "binary_name": "linux-modules-extra-6.11.0-1003-azure" }, { "binary_version": "6.11.0-1003.3", "binary_name": "linux-modules-iwlwifi-6.11.0-1003-azure" }, { "binary_version": "6.11.0-1003.3", "binary_name": "linux-tools-6.11.0-1003-azure" } ] }
{ "availability": "No subscription required", "ubuntu_priority": "medium", "binaries": [ { "binary_version": "6.11.0-1001.1", "binary_name": "linux-buildinfo-6.11.0-1001-gcp" }, { "binary_version": "6.11.0-1001.1", "binary_name": "linux-gcp-headers-6.11.0-1001" }, { "binary_version": "6.11.0-1001.1", "binary_name": "linux-gcp-tools-6.11.0-1001" }, { "binary_version": "6.11.0-1001.1", "binary_name": "linux-headers-6.11.0-1001-gcp" }, { "binary_version": "6.11.0-1001.1", "binary_name": "linux-image-unsigned-6.11.0-1001-gcp" }, { "binary_version": "6.11.0-1001.1", "binary_name": "linux-image-unsigned-6.11.0-1001-gcp-dbgsym" }, { "binary_version": "6.11.0-1001.1", "binary_name": "linux-modules-6.11.0-1001-gcp" }, { "binary_version": "6.11.0-1001.1", "binary_name": "linux-modules-extra-6.11.0-1001-gcp" }, { "binary_version": "6.11.0-1001.1", "binary_name": "linux-tools-6.11.0-1001-gcp" } ] }
{ "availability": "No subscription required", "ubuntu_priority": "medium", "binaries": [ { "binary_version": "6.11.0-1002.2", "binary_name": "linux-buildinfo-6.11.0-1002-lowlatency" }, { "binary_version": "6.11.0-1002.2", "binary_name": "linux-buildinfo-6.11.0-1002-lowlatency-64k" }, { "binary_version": "6.11.0-1002.2", "binary_name": "linux-cloud-tools-6.11.0-1002-lowlatency" }, { "binary_version": "6.11.0-1002.2", "binary_name": "linux-headers-6.11.0-1002-lowlatency" }, { "binary_version": "6.11.0-1002.2", "binary_name": "linux-headers-6.11.0-1002-lowlatency-64k" }, { "binary_version": "6.11.0-1002.2", "binary_name": "linux-image-unsigned-6.11.0-1002-lowlatency" }, { "binary_version": "6.11.0-1002.2", "binary_name": "linux-image-unsigned-6.11.0-1002-lowlatency-64k" }, { "binary_version": "6.11.0-1002.2", "binary_name": "linux-image-unsigned-6.11.0-1002-lowlatency-64k-dbgsym" }, { "binary_version": "6.11.0-1002.2", "binary_name": "linux-image-unsigned-6.11.0-1002-lowlatency-dbgsym" }, { "binary_version": "6.11.0-1002.2", "binary_name": "linux-lowlatency-cloud-tools-6.11.0-1002" }, { "binary_version": "6.11.0-1002.2", "binary_name": "linux-lowlatency-cloud-tools-common" }, { "binary_version": "6.11.0-1002.2", "binary_name": "linux-lowlatency-headers-6.11.0-1002" }, { "binary_version": "6.11.0-1002.2", "binary_name": "linux-lowlatency-lib-rust-6.11.0-1002-lowlatency" }, { "binary_version": "6.11.0-1002.2", "binary_name": "linux-lowlatency-tools-6.11.0-1002" }, { "binary_version": "6.11.0-1002.2", "binary_name": "linux-lowlatency-tools-common" }, { "binary_version": "6.11.0-1002.2", "binary_name": "linux-lowlatency-tools-host" }, { "binary_version": "6.11.0-1002.2", "binary_name": "linux-modules-6.11.0-1002-lowlatency" }, { "binary_version": "6.11.0-1002.2", "binary_name": "linux-modules-6.11.0-1002-lowlatency-64k" }, { "binary_version": "6.11.0-1002.2", "binary_name": "linux-modules-iwlwifi-6.11.0-1002-lowlatency" }, { "binary_version": "6.11.0-1002.2", "binary_name": "linux-tools-6.11.0-1002-lowlatency" }, { "binary_version": "6.11.0-1002.2", "binary_name": "linux-tools-6.11.0-1002-lowlatency-64k" } ] }
{ "availability": "No subscription required", "ubuntu_priority": "medium", "binaries": [ { "binary_version": "6.11.0-1004.4", "binary_name": "linux-buildinfo-6.11.0-1004-oracle" }, { "binary_version": "6.11.0-1004.4", "binary_name": "linux-buildinfo-6.11.0-1004-oracle-64k" }, { "binary_version": "6.11.0-1004.4", "binary_name": "linux-headers-6.11.0-1004-oracle" }, { "binary_version": "6.11.0-1004.4", "binary_name": "linux-headers-6.11.0-1004-oracle-64k" }, { "binary_version": "6.11.0-1004.4", "binary_name": "linux-image-unsigned-6.11.0-1004-oracle" }, { "binary_version": "6.11.0-1004.4", "binary_name": "linux-image-unsigned-6.11.0-1004-oracle-64k" }, { "binary_version": "6.11.0-1004.4", "binary_name": "linux-image-unsigned-6.11.0-1004-oracle-64k-dbgsym" }, { "binary_version": "6.11.0-1004.4", "binary_name": "linux-image-unsigned-6.11.0-1004-oracle-dbgsym" }, { "binary_version": "6.11.0-1004.4", "binary_name": "linux-modules-6.11.0-1004-oracle" }, { "binary_version": "6.11.0-1004.4", "binary_name": "linux-modules-6.11.0-1004-oracle-64k" }, { "binary_version": "6.11.0-1004.4", "binary_name": "linux-modules-extra-6.11.0-1004-oracle" }, { "binary_version": "6.11.0-1004.4", "binary_name": "linux-modules-extra-6.11.0-1004-oracle-64k" }, { "binary_version": "6.11.0-1004.4", "binary_name": "linux-oracle-headers-6.11.0-1004" }, { "binary_version": "6.11.0-1004.4", "binary_name": "linux-oracle-tools-6.11.0-1004" }, { "binary_version": "6.11.0-1004.4", "binary_name": "linux-tools-6.11.0-1004-oracle" }, { "binary_version": "6.11.0-1004.4", "binary_name": "linux-tools-6.11.0-1004-oracle-64k" } ] }
{ "availability": "No subscription required", "ubuntu_priority": "medium", "binaries": [ { "binary_version": "6.11.0-1003.3", "binary_name": "linux-buildinfo-6.11.0-1003-raspi" }, { "binary_version": "6.11.0-1003.3", "binary_name": "linux-headers-6.11.0-1003-raspi" }, { "binary_version": "6.11.0-1003.3", "binary_name": "linux-image-6.11.0-1003-raspi" }, { "binary_version": "6.11.0-1003.3", "binary_name": "linux-image-6.11.0-1003-raspi-dbgsym" }, { "binary_version": "6.11.0-1003.3", "binary_name": "linux-modules-6.11.0-1003-raspi" }, { "binary_version": "6.11.0-1003.3", "binary_name": "linux-raspi-headers-6.11.0-1003" }, { "binary_version": "6.11.0-1003.3", "binary_name": "linux-raspi-tools-6.11.0-1003" }, { "binary_version": "6.11.0-1003.3", "binary_name": "linux-tools-6.11.0-1003-raspi" } ] }
{ "availability": "No subscription required", "ubuntu_priority": "medium", "binaries": [ { "binary_version": "6.11.0-1001.1", "binary_name": "linux-buildinfo-6.11.0-1001-realtime" }, { "binary_version": "6.11.0-1001.1", "binary_name": "linux-cloud-tools-6.11.0-1001-realtime" }, { "binary_version": "6.11.0-1001.1", "binary_name": "linux-headers-6.11.0-1001-realtime" }, { "binary_version": "6.11.0-1001.1", "binary_name": "linux-image-unsigned-6.11.0-1001-realtime" }, { "binary_version": "6.11.0-1001.1", "binary_name": "linux-image-unsigned-6.11.0-1001-realtime-dbgsym" }, { "binary_version": "6.11.0-1001.1", "binary_name": "linux-modules-6.11.0-1001-realtime" }, { "binary_version": "6.11.0-1001.1", "binary_name": "linux-modules-extra-6.11.0-1001-realtime" }, { "binary_version": "6.11.0-1001.1", "binary_name": "linux-modules-iwlwifi-6.11.0-1001-realtime" }, { "binary_version": "6.11.0-1001.1", "binary_name": "linux-realtime-cloud-tools-6.11.0-1001" }, { "binary_version": "6.11.0-1001.1", "binary_name": "linux-realtime-headers-6.11.0-1001" }, { "binary_version": "6.11.0-1001.1", "binary_name": "linux-realtime-tools-6.11.0-1001" }, { "binary_version": "6.11.0-1001.1", "binary_name": "linux-tools-6.11.0-1001-realtime" } ] }
{ "availability": "No subscription required", "ubuntu_priority": "medium", "binaries": [ { "binary_version": "6.11.0-8.8.1", "binary_name": "linux-buildinfo-6.11.0-8-generic" }, { "binary_version": "6.11.0-8.8.1", "binary_name": "linux-headers-6.11.0-8-generic" }, { "binary_version": "6.11.0-8.8.1", "binary_name": "linux-image-6.11.0-8-generic" }, { "binary_version": "6.11.0-8.8.1", "binary_name": "linux-image-6.11.0-8-generic-dbgsym" }, { "binary_version": "6.11.0-8.8.1", "binary_name": "linux-modules-6.11.0-8-generic" }, { "binary_version": "6.11.0-8.8.1", "binary_name": "linux-riscv-headers-6.11.0-8" }, { "binary_version": "6.11.0-8.8.1", "binary_name": "linux-riscv-tools-6.11.0-8" }, { "binary_version": "6.11.0-8.8.1", "binary_name": "linux-tools-6.11.0-8-generic" } ] }