🇰🇷 한글 설명
Linux 커널의 ice 드라이버에서 TP_printk() 사용 시 포인터를 역참조하여 발생하는 취약점이 해결되었습니다. 이벤트 기록 시점과 출력 시점의 차이로 인해 유효하지 않은 메모리 주소에 접근할 수 있는 문제가 있었습니다.
💡 쉬운 설명
시스템의 기록 기능을 사용할 때, 이미 사라진 메모리 주소를 참조하려고 시도하여 오류가 발생하는 문제입니다. 이를 방지하기 위해 주소 대신 실제 값을 직접 저장하도록 수정되었습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
eth: ice: don't dereference pointers from TP_printk()
After forwarding net-next during the v7.3 merge window we started
seeing:
TRACE EVENT ERROR: Event ice_tx_dim_work has double dereference in TP_printk: REC->q_vector->tx.tx_ring->q_index
WARNING: kernel/trace/trace_events.c:420 at test_double_dereference.cold+0x39/0x4b
this is due to extra checks added in tracing subsystem in
commit b5cc230af5e5 ("tracing: Warn when an event dereferences a pointer in TP_printk()").
Printing happens long after the event was recorded, by which point
the pointers may be invalid (the ring or the dim instance).
Copy the eight scalars into the event instead.
📍 영향받는 시스템
Linux kernel (ice driver 포함 버전)
⚔️ 공격 벡터
로컬 시스템에서 커널 트레이싱 기능을 사용할 때 발생할 수 있는 메모리 오류
🛡️ 대응 방법
ice 드라이버의 수정 사항이 포함된 최신 Linux 커널로 업데이트
🔧 검증 코드
출력된 커널 버전이 해당 패치가 적용된 최신 버전인지 확인하십시오.