🇰🇷 한글 설명
Linux 커널의 geneve 터널링 모듈에서 changelink 작업 시 네트워크 네임스페이스(netns)에 대한 권한 검증이 미흡한 취약점입니다. 특정 네임스페이스에서 권한을 가진 사용자가 다른 네임스페이스에 속한 geneve 장치의 설정을 임의로 변경할 수 있습니다.
💡 쉬운 설명
네트워크 설정 권한이 있는 사용자가 자신이 관리하지 않는 다른 영역의 네트워크 장치 설정을 몰래 바꿀 수 있는 보안 허점입니다. 이를 통해 네트워크 연결을 가로채거나 설정을 조작할 위험이 있습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
geneve: require CAP_NET_ADMIN in the device netns for changelink
A tunnel changelink() operates on at most two netns, dev_net(dev) and
the sticky underlay netns geneve->net. They differ once the device is
created in or moved to a netns other than the one the request runs in.
The rtnl changelink path checks CAP_NET_ADMIN only against dev_net(dev),
so a caller privileged there but not in geneve->net can rewrite a geneve
device whose underlay lives in geneve->net.
geneve_changelink() applies the new configuration against geneve->net:
geneve_link_config() and the geneve_quiesce()/geneve_unquiesce() pair
reopen the underlay sockets in that netns (geneve_sock_add() uses
geneve->net), so the same reasoning as the tunnel changelink series
applies here.
Gate geneve_changelink() with rtnl_dev_link_net_capable(), at the top of
the op before any attribute is parsed, matching ipgre_changelink() and
the rest of the "require CAP_NET_ADMIN in the device netns for
changelink" series.
Found by 0sec automated security-research tooling (https://0sec.ai).
📍 영향받는 시스템
Linux kernel (geneve module 사용 환경)
⚔️ 공격 벡터
권한이 있는 네트워크 네임스페이스에서 geneve changelink 요청을 통해 다른 네임스페이스의 장치 설정 조작
🛡️ 대응 방법
CAP_NET_ADMIN 권한 검증 로직이 포함된 최신 Linux 커널로 업데이트
🔧 검증 코드
출력된 커널 버전이 해당 취약점이 패치된 최신 버전인지 확인
📊 CVSS Vector String
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H
💻 영향받는 소프트웨어
NVIDIA vGPU Guest Driver for Linux