CVE-2022-48762 in Linux
요약
\~에 의해 VulDB • 2026. 06. 10.
리눅스 커널에서 다음 취약점이 해결되었습니다:
arm64: extable: load_unaligned_zeropad() 레지스터 인덱스 수정
ex_handler_load_unaligned_zeropad() 함수에서 우리는 ex->type에서가 아니라 ex->data에서 데이터 및 주소 레지스터 인덱스를 잘못 추출하고 있습니다. ex->type에는 EX_TYPE_LOAD_UNALIGNED_ZEROPAD(즉, 4)가 포함되어 있으므로: * EX_DATA_REG_ADDR는 비트 [9:5]에서 추출되므로 X0를 항상 주소 레지스터로 처리하게 됩니다. 따라서 X0가 임의의 값을 가질 수 있으므로 임의의 주소를 역참조하려고 시도할 수 있습니다.
* EX_DATA_REG_DATA는 비트 [4:0]에서 추출되므로 X4를 항상 데이터 레지스터로 처리하게 됩니다. 따라서 load_unaligned_zeropad() 및 그 호출자 내에서 임의의 동작을 유발하며 X4를 손상시킬 수 있습니다.
원래 의도대로 ex->data에서 두 값을 모두 추출하여 이 문제를 수정합니다.
MTE가 활성화된 QEMU 이미지에서 다음 크래시를 발생시킵니다: 가상 주소 0000000000000000에서 커널 NULL 포인터 역참조를 처리할 수 없습니다 호출 추적: 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 코드: f8695a69 71007d1f 540000e0 927df12a (f940014a)
Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.