🇰🇷 한글 설명
Linux 커널의 stmmac 네트워크 드라이버에서 stmmac_tso_xmit() 함수 호출 중 DMA 매핑 실패 시 발생하는 메모리 누수 취약점입니다. DMA 매핑이 생성된 후 오류가 발생하면 기존에 할당된 매핑을 해제하지 않아 시스템 자원이 고갈될 수 있습니다.
💡 쉬운 설명
네트워크 데이터를 전송하는 과정에서 오류가 발생했을 때, 사용했던 메모리 통로를 제대로 닫지 않고 방치하는 문제입니다. 이 문제가 반복되면 컴퓨터의 자원이 계속 낭비되어 시스템 성능이 떨어지거나 멈출 수 있습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
net: stmmac: fix dma mapping leak in stmmac_tso_xmit()
In stmmac_tso_xmit(), if the DMA mapping of an skb fragment fails, the
frame is dropped but the DMA mappings already created for the linear
part and for the fragments mapped before the failure are never
unmapped, leaking DMA mappings.
Fix the leak by walking back over the descriptors used by the frame and
releasing each of them with stmmac_free_tx_buffer(). Moreover, release
the descriptors with stmmac_release_tx_desc() unmapping the DMA buffers.
📍 영향받는 시스템
stmmac 드라이버를 사용하는 Linux 커널 기반 시스템
⚔️ 공격 벡터
네트워크 트래픽 전송 중 의도적인 DMA 매핑 실패를 유도하여 시스템 자원 고갈 유도
🛡️ 대응 방법
stmmac_tso_xmit() 함수에 DMA 매핑 해제 로직이 포함된 최신 Linux 커널로 업데이트
🔧 검증 코드
현재 실행 중인 커널 버전을 확인하여 해당 취약점이 수정된 패치 버전인지 확인합니다.