🇰🇷 한글 설명
Linux 커널의 ibmveth 드라이버에서 ibmveth_open() 함수가 논리 LAN을 등록한 후 RX 버퍼 풀 할당이 실패하면, h_free_logical_lan() 호출 없이 버퍼 리스트 페이지를 해제하여 하이퍼바이저(PHYP)가 여전히 소유한 메모리를 unmap하는 문제가 있었습니다. 이를 해결하기 위해 해제 호출을 공통 unwind 경로로 옮겨 두 실패 경로 모두에서 등록 해제가 먼저 수행되도록 수정되었습니다.
💡 쉬운 설명
IBM Power 서버 가상 네트워크 드라이버가 실패 상황에서 정리 순서를 잘못 처리하여, 하이퍼바이저가 아직 사용 중인 메모리를 먼저 해제하던 버그입니다. 이번 수정으로 등록 해제를 먼저 하도록 순서가 바로잡혔습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
ibmveth: h_free logical LAN on open-fail after register
ibmveth_open() registers the logical LAN, then allocates the RX
buffer pools. A pool failure jumps to out_free_buffer_pools without
h_free_logical_lan(), so PHYP still owns the buffer-list page when
it is unmapped. request_irq() failure already issued the hypercall
before taking the same label.
Move that h_free to the shared post-register unwind so both paths
deregister before the buffer list is unmapped.
📍 영향받는 시스템
IBM Power(pSeries/ppc64) 기반 Linux 커널의 ibmveth 드라이버를 사용하는 수정 이전 버전 (정확한 영향 버전 정보 미확인)
⚔️ 공격 벡터
일반적으로 로컬 리소스 부족이나 하드웨어/하이퍼바이저 오류 등 드문 실패 조건에서 발생하는 메모리 관리 오류로, 원격 공격 벡터는 명확하지 않음
🛡️ 대응 방법
Linux 커널을 해당 수정이 포함된 최신 안정 버전 또는 배포판 보안/버그 수정 업데이트로 업그레이드
🔧 검증 코드
출력된 커널 버전을 배포판 패키지 changelog나 커널 저장소의 수정 커밋과 대조하여, 해당 수정이 포함된 버전 이상인지 확인합니다.