🇰🇷 한글 설명
Linux 커널의 pci_endpoint_test 모듈에서 pci_endpoint_test_ioctl() 함수 호출 시 배열 언더플로우가 발생하는 취약점입니다. 특정 커밋에서 enum 타입이 부호 없는 정수에서 부호 있는 정수로 변경됨에 따라, 사용자가 음수 값을 입력할 경우 배열의 잘못된 인덱스에 접근할 수 있습니다.
💡 쉬운 설명
컴퓨터 프로그램이 숫자를 처리할 때 잘못된 음수 값을 입력받아 메모리의 엉뚱한 곳을 건드리는 문제입니다. 이로 인해 시스템이 불안정해지거나 보안 문제가 생길 수 있습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
misc: pci_endpoint_test: Fix array underflow in pci_endpoint_test_ioctl()
Commit eefb83790a0d ("misc: pci_endpoint_test: Add doorbell test case")
added NO_BAR (-1) to the pci_barno enum which, in practical terms,
changes the enum from an unsigned int to a signed int. If the user
passes a negative number in pci_endpoint_test_ioctl() then it results in
an array underflow in pci_endpoint_test_bar().
📍 영향받는 시스템
pci_endpoint_test 모듈이 포함된 Linux 커널 (eefb83790a0d 커밋 이후 버전)
⚔️ 공격 벡터
로컬 사용자가 pci_endpoint_test_ioctl을 통해 음수 인덱스 값을 전달하여 메모리 언더플로우 유도
🛡️ 대응 방법
해당 취약점이 수정된 최신 Linux 커널 버전으로 업데이트
🔧 검증 코드
출력된 커널 버전이 취약점이 수정된 패치 버전 이후인지 확인