🇰🇷 한글 설명
Linux 커널의 fnic 드라이버에서 FDMI 요청이 타임아웃될 때 fnic_wq_cmpl_handler 함수에서 크래시가 발생하는 취약점입니다. RHBA와 RPA 요청이 동시에 타임아웃될 경우 동일한 프레임을 재사용하여 ABTS를 전송하면서, 동일한 프레임을 두 번 해제(Double Free)하게 되어 시스템이 충돌합니다.
💡 쉬운 설명
컴퓨터의 저장 장치를 연결하는 소프트웨어에서 데이터 요청이 끊겼을 때, 똑같은 메모리 공간을 두 번 지우려고 시도하다가 시스템이 멈추는 문제입니다. 이로 인해 서버나 컴퓨터가 갑자기 꺼지거나 재부팅될 수 있습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
scsi: fnic: Fix crash in fnic_wq_cmpl_handler when FDMI times out
When both the RHBA and RPA FDMI requests time out, fnic reuses a frame to
send ABTS for each of them. On send completion, this causes an attempt to
free the same frame twice that leads to a crash.
Fix crash by allocating separate frames for RHBA and RPA, and modify ABTS
logic accordingly.
Tested by checking MDS for FDMI information.
Tested by using instrumented driver to:
- Drop PLOGI response
- Drop RHBA response
- Drop RPA response
- Drop RHBA and RPA response
- Drop PLOGI response + ABTS response
- Drop RHBA response + ABTS response
- Drop RPA response + ABTS response
- Drop RHBA and RPA response + ABTS response for both of them
📍 영향받는 시스템
Linux kernel (fnic driver 사용 시스템)
⚔️ 공격 벡터
특정 네트워크/스토리지 환경에서 FDMI 요청 타임아웃을 유도하여 시스템 크래시 유발
🛡️ 대응 방법
fnic 드라이버의 프레임 할당 로직이 수정된 최신 Linux 커널로 업데이트
🔧 검증 코드
현재 실행 중인 커널 버전을 확인하여 취약점이 해결된 패치 버전인지 확인합니다.