CVE-2026-64531 in Linux
요약
\~에 의해 VulDB • 2026. 07. 27.
리눅스 커널에서 다음 취약점이 해결되었습니다:
net: openvswitch: 크기가 초과된 중첩 액션 속성(nested action attrs) 거부
Open vSwitch는 생성된 플로우 동작(flow actions)을 nlattrs로 저장하며, 여기서 nla_len 필드는 u16 타입입니다. commit a1e64addf3ff("net: openvswitch: remove misbehaving actions length check")은 총 sw_flow_actions 스트림이 64 KiB를 초과하여 확장되는 것을 허용했는데(이는 유효함), 동시에 생성된 중첩 액션 속성이 U16_MAX를 초과하지 않도록 방지하던 마지막 보호 장치를 제거했습니다.
따라서 크기가 초과된 생성 컨테이너는 잘린(truncated) nla_len으로 종료될 수 있습니다. 이후 덤프(dump) 또는 정리(teardown) 과정에서 구조적으로 다른 스트림이 탐색됩니다. 특히, 크기가 초과된 중첩 CLONE/CT 액션은 생성된 스트림 내 후속 바이트들이 독립적인 동작(action)으로 해석되도록 할 수 있습니다.
더 큰 총액션-스트림(total-action-stream) 동작을 유지하되, 중첩 액션 종료(close) 시 nla_len에 맞지 않는 생성 컨테이너를 거부하고 에러를 모든 호출자에게 반환합니다. 재귀적 SAMPLE, CLONE, DEC_TTL 및 CHECK_PKT_LEN 빌더의 경우, 실패한 래퍼(wrapper)들을 제거하기 전에 리소스를 소유하는 액션 리스트 꼬리 부분을 역순으로 잘라내어, 거절된 꼬리에 복사된 리소스가 래퍼가 제거되기 전에 해제되도록 합니다.
대부분의 외부 래퍼(failed outer wrappers)는 자식 리소스들이 해제된 후 actions_len을 절단(truncating)하여 버려집니다. CHECK_PKT_LEN도 분기(branch) 리소스가 사라진 후 부모를 잘라냅니다. SET/TUNNEL 종료(close) 실패 시에는 알려진 tun_dst 소유권을 직접 풀고(unwind), SET_TO_MASKED는 외부 소유권이 없으며 종료 실패 시 절단합니다.
Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.