🔍 CVE-2026-119335

7.8
CVSS Score
HIGH
2026-10-30
2026-10-30 20:17
✅ 완료

🇰🇷 한글 설명

Pi-hole은 클라이언트 소프트웨어 설치 없이 원치 않는 콘텐츠로부터 기기를 보호하는 DNS 싱크홀입니다. 6.5 이전 버전의 advanced/Scripts/utils.sh getFTLPID() 함수는 PID 파일 내용을 검증하지만, 첫 글자가 숫자가 아닌 값만 거부하여 숫자로 시작하는 산술 표현식을 허용합니다. 이로 인해 pihole 사용자 권한의 공격자가 root로 실행되는 pihole 하위 명령어를 통해 임의 명령을 실행할 수 있습니다.

💡 쉬운 설명

일반 사용자 권한으로 침입한 공격자가 특정 설정 파일에 조작된 값을 넣어 관리자(root) 권한을 얻을 수 있는 취약점입니다. 6.5 버전에서 수정되었습니다.

🇺🇸 원문 (English)

Pi-hole is a DNS sinkhole that protects devices from unwanted content without installing any client-side software. Prior to 6.5, advanced/Scripts/utils.sh getFTLPID() attempts to validate the pihole-owned /run/pihole-FTL.pid file with expr "${FTL_PID}" : "[^[:digit:]]", but this rejects only values whose first character is not a digit. An attacker with code execution as the pihole user can write a digit-prefixed arithmetic expression to the pihole-owned PID file. Root-run pihole subcommands then evaluate [[ "$pid" -eq "-1" ]], causing Bash to recursively evaluate array subscripts and execute command substitution as root. This bypasses the content-validation portion of the CVE-2026-41489 remediation while leaving its hardcoded PID-file path protection intact. This issue is fixed in version 6.5.

📍 영향받는 시스템

Pi-hole 6.5 이전 버전

⚔️ 공격 벡터

pihole 사용자 권한으로 코드 실행이 가능한 공격자가 숫자로 시작하는 산술 표현식을 /run/pihole-FTL.pid에 기록하여 root 권한으로 명령 실행

🛡️ 대응 방법

Pi-hole을 6.5 이상으로 업데이트

🔧 검증 코드

출력된 Pi-hole 버전이 6.5 이상이면 취약점이 수정된 것이며, 6.5 미만이면 즉시 업데이트가 필요합니다.

Shell / Script
pihole -v 2>/dev/null | grep -i 'Pi-hole version'

📊 CVSS Vector String

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

💻 영향받는 소프트웨어

Storage Protect Client