🔍 CVE-2023-53041

5.5
CVSS Score
MEDIUM
2025-05-02
2026-11-05 21:17
✅ 완료

🇰🇷 한글 설명

Linux 커널의 SCSI qla2xxx 드라이버에서, 컨트롤러 추가/제거 시 abort 경로에서 명령을 잠금(lock)을 잡은 상태로 완료하여 커널 경고(WARNING)가 발생하는 문제가 수정되었습니다. 해결책은 명령을 잠금 없이 완료하도록 변경하는 것입니다.

💡 쉬운 설명

서버에 연결된 특정 저장장치 드라이버가 제거되는 과정에서 잘못된 순서로 작업을 처리해 시스템 경고가 발생하던 문제입니다. 이번 패치로 작업 처리 순서를 바로잡아 경고와 잠재적 불안정을 막습니다.

🇺🇸 원문 (English)

In the Linux kernel, the following vulnerability has been resolved: scsi: qla2xxx: Perform lockless command completion in abort path While adding and removing the controller, the following call trace was observed: WARNING: CPU: 3 PID: 623596 at kernel/dma/mapping.c:532 dma_free_attrs+0x33/0x50 CPU: 3 PID: 623596 Comm: sh Kdump: loaded Not tainted 5.14.0-96.el9.x86_64 #1 RIP: 0010:dma_free_attrs+0x33/0x50 Call Trace: qla2x00_async_sns_sp_done+0x107/0x1b0 [qla2xxx] qla2x00_abort_srb+0x8e/0x250 [qla2xxx] ? ql_dbg+0x70/0x100 [qla2xxx] __qla2x00_abort_all_cmds+0x108/0x190 [qla2xxx] qla2x00_abort_all_cmds+0x24/0x70 [qla2xxx] qla2x00_abort_isp_cleanup+0x305/0x3e0 [qla2xxx] qla2x00_remove_one+0x364/0x400 [qla2xxx] pci_device_remove+0x36/0xa0 __device_release_driver+0x17a/0x230 device_release_driver+0x24/0x30 pci_stop_bus_device+0x68/0x90 pci_stop_and_remove_bus_device_locked+0x16/0x30 remove_store+0x75/0x90 kernfs_fop_write_iter+0x11c/0x1b0 new_sync_write+0x11f/0x1b0 vfs_write+0x1eb/0x280 ksys_write+0x5f/0xe0 do_syscall_64+0x5c/0x80 ? do_user_addr_fault+0x1d8/0x680 ? do_syscall_64+0x69/0x80 ? exc_page_fault+0x62/0x140 ? asm_exc_page_fault+0x8/0x30 entry_SYSCALL_64_after_hwframe+0x44/0xae The command was completed in the abort path during driver unload with a lock held, causing the warning in abort path. Hence complete the command without any lock held.

📍 영향받는 시스템

패치 이전의 Linux 커널 (qla2xxx 파이버 채널 HBA 드라이버를 사용하는 시스템)

⚔️ 공격 벡터

로컬 사용자 또는 관리자가 드라이버 제거(unbind/remove) 작업을 수행할 때 발생하는 결함으로, 원격 공격 경로는 확인되지 않습니다.

🛡️ 대응 방법

배포판 제공 최신 커널 업데이트를 적용하고 재부팅하여 수정된 qla2xxx 드라이버를 사용하세요.

🔧 검증 코드

커널 버전이 해당 배포판의 수정 패치 포함 버전 이상인지 배포판 보안 공지와 대조하고, qla2xxx 모듈이 없다면 이 취약점의 영향을 받지 않습니다.

Shell / Script
uname -r && (modinfo qla2xxx 2>/dev/null | grep -E '^(version|srcversion|filename)')

📊 CVSS Vector String

CVSS Vector
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H

💻 영향받는 소프트웨어

Linux Kernel