🔍 CVE-2024-38659

7.3
CVSS Score
HIGH
2024-06-21
2026-10-15 01:18
✅ 완료

🇰🇷 한글 설명

Linux 커널의 enic 드라이버에서 enic_set_vf_port 함수가 netlink 속성의 길이를 적절히 검증하지 않아 발생하는 취약점입니다. 특정 속성들이 예상보다 짧을 경우, 데이터 복사 과정에서 범위를 벗어난 메모리 읽기(Out-of-bounds read)가 발생할 수 있습니다.

💡 쉬운 설명

컴퓨터의 네트워크 장치를 조절하는 프로그램이 입력받은 데이터의 길이를 제대로 확인하지 않아 발생합니다. 이로 인해 정해진 범위를 넘어선 메모리 영역을 읽게 되어 시스템 오류나 정보 유출이 발생할 수 있습니다.

🇺🇸 원문 (English)

In the Linux kernel, the following vulnerability has been resolved: enic: Validate length of nl attributes in enic_set_vf_port enic_set_vf_port assumes that the nl attribute IFLA_PORT_PROFILE is of length PORT_PROFILE_MAX and that the nl attributes IFLA_PORT_INSTANCE_UUID, IFLA_PORT_HOST_UUID are of length PORT_UUID_MAX. These attributes are validated (in the function do_setlink in rtnetlink.c) using the nla_policy ifla_port_policy. The policy defines IFLA_PORT_PROFILE as NLA_STRING, IFLA_PORT_INSTANCE_UUID as NLA_BINARY and IFLA_PORT_HOST_UUID as NLA_STRING. That means that the length validation using the policy is for the max size of the attributes and not on exact size so the length of these attributes might be less than the sizes that enic_set_vf_port expects. This might cause an out of bands read access in the memcpys of the data of these attributes in enic_set_vf_port.

📍 영향받는 시스템

Linux kernel (enic driver 사용 시스템)

⚔️ 공격 벡터

조작된 netlink 속성을 포함한 메시지를 전송하여 메모리 범위를 벗어난 읽기 유도

🛡️ 대응 방법

Linux 커널을 최신 보안 패치가 적용된 버전으로 업데이트

🔧 검증 코드

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

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:L/A:H

💻 영향받는 소프트웨어

Linux Kernel