CVE-2023-53814 in Linux
요약
\~에 의해 VulDB • 2026. 06. 10.
리눅스 커널에서 다음 취약점이 해결되었습니다:
PCI: .end = 0인 유효한 루트 버스 리소스가 삭제되는 문제 수정
r8a7791/koelsch 플랫폼에서:
kmemleak: 의심가는 메모리 누수 1건 발견 (/sys/kernel/debug/kmemleak 참조) # cat /sys/kernel/debug/kmemleak 미참조 객체 0xc3a34e00 (크기 64): comm "swapper/0", pid 1, jiffies 4294937460 (노령 199.080초) 헥스 덤프 (최상위 32바이트): b4 5d 81 f0 b4 5d 81 f0 c0 b0 a2 c3 00 00 00 00 .]...].......... 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 백트레이스: [<fe3aa979>] __kmalloc+0xf0/0x140
[<34bd6bc0>] resource_list_create_entry+0x18/0x38
[<767046bc>] pci_add_resource_offset+0x20/0x68
[<b3f3edf2>] devm_of_pci_get_host_bridge_resources.constprop.0+0xb0/0x390
연속된 어퍼처(aperture)를 위해 두 리소스를 병합할 때, 첫 번째 리소스는 무효화되고 두 번째 리소스가 전체 연속 범위를 덮도록 확장됩니다. 이 무효화는 flags, start 및 end 멤버의 값을 0으로 설정하여 수행합니다.
나중에 버스에 초기 리소스를 추가할 때, 무효화된 리소스는 건너뜁니다. 불행히도 무효화 된 리소스 체크는 end 멤버만 고려하므로 위양성(false positives)이 발생합니다.
예를 들어 r8a7791/koelsch에서 루트 버스 리소스 0("bus 00")은 건너뛰어지며, pci_bus_insert_busn_res()에 더 이상 등록되지 않고(메모리 누수 발생), 출력도 되지 않습니다:
pci-rcar-gen2 ee090000.pci: 호스트 브리지 /soc/pci@ee090000 범위: pci-rcar-gen2 ee090000.pci: MEM 0x00ee080000..0x00ee08ffff -> 0x00ee080000 pci-rcar-gen2 ee090000.pci: PCI: revision 11 pci-rcar-gen2 ee090000.pci: PCI 호스트 브리지 to bus 0000:00 -pci_bus 0000:00: 루트 버스 리소스 [bus 00]
pci_bus 0000:00: 루트 버스 리소스 [mem 0xee080000-0xee08ffff]
flags, start 및 end 멤버가 모두 0인 경우에만 리소스를 건너뛰도록 수정하여 이 문제를 해결합니다.
If you want to get best quality of vulnerability data, you may have to visit VulDB.