🇰🇷 한글 설명
Linux 커널의 VXLAN 구현 중 route_shortcircuit() 함수에서 이웃 하드웨어 주소를 안전하지 않게 읽는 취약점이 발견되었습니다. seqlock 보호 없이 주소를 읽을 경우 데이터가 깨진 상태로 읽히는 torn read 현상이 발생할 수 있습니다.
💡 쉬운 설명
네트워크 주소를 읽어오는 과정에서 데이터가 업데이트되는 순간과 겹치면 잘못된 주소 값을 읽을 수 있는 오류입니다. 이로 인해 네트워크 통신이 불안정해지거나 보안 문제가 발생할 수 있습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
vxlan: use neigh_ha_snapshot() in route_shortcircuit()
The neighbour hardware address n->ha can be updated asynchronously by the
neighbour subsystem, protected by n->ha_lock seqlock. Reading n->ha without
holding the seqlock loop can lead to torn reads or reading a partially updated
MAC address.
Use neigh_ha_snapshot() in route_shortcircuit() to safely copy n->ha under
read_seqbegin()/read_seqretry() lock protection before using it.
Note that arp_reduce() and neigh_reduce() seem to have the same issue
left for future patches.
📍 영향받는 시스템
VXLAN 기능을 사용하는 Linux 커널 버전
⚔️ 공격 벡터
네트워크 패킷 조작을 통해 특정 조건에서 하드웨어 주소 읽기 오류를 유도하는 방식
🛡️ 대응 방법
neigh_ha_snapshot() 함수를 사용하여 안전하게 주소를 복사하도록 커널을 최신 버전으로 업데이트하십시오.
🔧 검증 코드
현재 실행 중인 커널 버전을 확인하여 해당 취약점이 패치된 최신 보안 업데이트 버전인지 확인합니다.
📊 CVSS Vector String
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:L
💻 영향받는 소프트웨어
NVIDIA Cloud Gaming Guest Driver for Linux