CVE-2022-48762 in Linux
Riassunto
di VulDB • 15/06/2026
Nel kernel Linux, è stata risolta la seguente vulnerabilità:
arm64: extable: correggere gli indici dei registri in load_unaligned_zeropad()
In ex_handler_load_unaligned_zeropad(), si estraggono erroneamente gli indici dei registri per i dati e l'indirizzo da ex->type invece che da ex->data. Poiché ex->type conterrà EX_TYPE_LOAD_UNALIGNED_ZEROPAD (cioè 4): * Si tratterà sempre X0 come registro dell'indirizzo, poiché EX_DATA_REG_ADDR viene estratto dai bit [9:5]. Di conseguenza, si potrebbe tentare di dereferenziare un indirizzo arbitrario, dato che X0 può contenere un valore arbitrario.
* Si tratterà sempre X4 come registro dei dati, poiché EX_DATA_REG_DATA viene estratto dai bit [4:0]. Ciò causerà la corruzione di X4 e comporterà un comportamento arbitrario all'interno di load_unaligned_zeropad() e della sua funzione chiamante.
Si risolve il problema estramendo entrambi i valori da ex->data, come originariamente previsto.
Su un'immagine QEMU abilitata per MTE si verifica il seguente crash: Impossibile gestire la dereferenziazione di puntatore NULL del kernel all'indirizzo virtuale 0000000000000000 Traccia della chiamata (Call trace): fixup_exception+0xc4/0x108 __do_kernel_fault+0x3c/0x268 do_tag_check_fault+0x3c/0x104 do_mem_abort+0x44/0xf4 el1_abort+0x40/0x64 el1h_64_sync_handler+0x60/0xa0 el1h_64_sync+0x7c/0x80 link_path_walk+0x150/0x344 path_openat+0xa0/0x7dc do_filp_open+0xb8/0x168 do_sys_openat2+0x88/0x17c __arm64_sys_openat+0x74/0xa0 invoke_syscall+0x48/0x148 el0_svc_common+0xb8/0xf8 do_el0_svc+0x28/0x88 el0_svc+0x24/0x84 el0t_64_sync_handler+0x88/0xec el0t_64_sync+0x1b4/0x1b8 Codice: f8695a69 71007d1f 540000e0 927df12a (f940014a)
If you want to get best quality of vulnerability data, you may have to visit VulDB.