🔍 CVE-2026-31502

7.8
CVSS Score
HIGH
2026-04-22
2026-10-30 13:18
✅ 완료

🇰🇷 한글 설명

Linux 커널의 team 드라이버에서 비 이더넷 포트 사용 시 header_ops 타입 혼동(Type Confusion) 취약점이 발견되었습니다. 이로 인해 team 장치가 실제 하위 장치 대신 자신의 net_device를 사용하여 콜백을 실행할 경우, 잘못된 메모리 구조를 참조하여 시스템 충돌(Crash)이 발생할 수 있습니다.

💡 쉬운 설명

네트워크 장치를 연결하는 과정에서 데이터 형식을 잘못 해석하여 컴퓨터 시스템이 갑자기 멈추거나 꺼질 수 있는 오류입니다. 특정 네트워크 설정 환경에서 데이터가 엉뚱한 곳을 가리키게 되어 발생합니다.

🇺🇸 원문 (English)

In the Linux kernel, the following vulnerability has been resolved: team: fix header_ops type confusion with non-Ethernet ports Similar to commit 950803f72547 ("bonding: fix type confusion in bond_setup_by_slave()") team has the same class of header_ops type confusion. For non-Ethernet ports, team_setup_by_port() copies port_dev->header_ops directly. When the team device later calls dev_hard_header() or dev_parse_header(), these callbacks can run with the team net_device instead of the real lower device, so netdev_priv(dev) is interpreted as the wrong private type and can crash. The syzbot report shows a crash in bond_header_create(), but the root cause is in team: the topology is gre -> bond -> team, and team calls the inherited header_ops with its own net_device instead of the lower device, so bond_header_create() receives a team device and interprets netdev_priv() as bonding private data, causing a type confusion crash. Fix this by introducing team header_ops wrappers for create/parse, selecting a team port under RCU, and calling the lower device callbacks with port->dev, so each callback always sees the correct net_device context. Also pass the selected lower device to the lower parse callback, so recursion is bounded in stacked non-Ethernet topologies and parse callbacks always run with the correct device context.

📍 영향받는 시스템

Linux kernel (team driver 사용 환경)

⚔️ 공격 벡터

특수하게 구성된 네트워크 토폴로지(예: GRE -> Bond -> Team)를 통해 잘못된 헤더 콜백을 유도하여 시스템 충돌 유발

🛡️ 대응 방법

Linux 커널을 최신 보안 패치가 적용된 버전으로 업데이트하여 team header_ops 래퍼 및 RCU 기반 포트 선택 로직 적용

🔧 검증 코드

출력된 커널 버전이 취약점이 해결된 최신 패치 버전인지 확인합니다.

Shell / Script
uname -r

📊 CVSS Vector String

CVSS Vector
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H

💻 영향받는 소프트웨어

Linux Kernel