[Redhat] CVE-2024-1086 Netfilter in kernel 보안 취약점
Netfilter의 권한 상승 취약점(CVE-2024-1086)에 대한 개요, 영향 범위, 대응 및 완화 방법을 정리합니다.
요약
리눅스 커널의 Netfilter 기능에서 권한 상승 보안 취약점이 발견되었습니다. 이 취약점은 nft_verdict_init()
함수 내 처리 로직의 결함으로 인해 발생합니다. 긍정적인 값을 drop error
로 오인하여 nf_hook_slow()
함수에서 NF_DROP
처리를 하게 되며, 이로 인해 이중 해제(double-free) 취약점이 발생할 수 있습니다.
해당 취약점은 로컬 사용자가 이를 악용해 시스템 내에서 권한 상승을 유발할 수 있는 심각한 보안 문제입니다.
nft_verdict_init()
함수 내 처리 로직의 결함으로 인해 발생합니다. 긍정적인 값을 drop error
로 오인하여 nf_hook_slow()
함수에서 NF_DROP
처리를 하게 되며, 이로 인해 이중 해제(double-free) 취약점이 발생할 수 있습니다.해당 취약점은 로컬 사용자가 이를 악용해 시스템 내에서 권한 상승을 유발할 수 있는 심각한 보안 문제입니다.
영향 받는 버전
다음 Red Hat Enterprise Linux 버전이 영향을 받습니다
RHEL 7 (kernel 및 kernel-rt)
RHEL 8 (kernel 및 kernel-rt)
RHEL 9 (kernel 및 kernel-rt)
다음 Red Hat Enterprise Linux 버전이 영향을 받습니다
RHEL 7 (kernel 및 kernel-rt)
RHEL 8 (kernel 및 kernel-rt)
RHEL 9 (kernel 및 kernel-rt)
RHEL 7 (kernel 및 kernel-rt)
RHEL 8 (kernel 및 kernel-rt)
RHEL 9 (kernel 및 kernel-rt)
조치 방법
이 취약점은 Red Hat Enterprise Linux 9.4 버전에서 패치를 통해 수정될 예정입니다. 가장 확실한 대응은 보안 패치가 반영된 최신 커널로 업데이트하는 것입니다.
취약점이 해결된 커널 버전은 다음과 같습니다
- RHEL7 kernel-3.10.0-1160.114.2.el7.x86_64.rpm 이상
- RHEL8 kernel-4.18.0-513.24.1.el8_9.x86_64.rpm 이상
- RHEL9 kernel-5.14.0-427.13.1.el9_4.x86_64.rpm 이상
인터넷 진흥원에서 제시한 커널 해결 버전은 6버전이라고 되어있는데 레드햇은 현재까지 6버전대의 커널이 제공되지 않습니다. 따라서 위에 패치된 버전을 설치하여야 합니다.
주의사항
일부 보안 권고에서는 커널 6버전 이상을 요구하고 있으나, Red Hat에서는 현재 시점(2024년 5월 기준)까지 6버전대 커널을 공식적으로 제공하지 않고 있습니다. 따라서 위에 제시된 RHEL 버전에 맞는 패치된 커널을 설치해야 실제 취약점이 해결됩니다.
완화 방법 (커널 업데이트가 어려운 경우)
1. Netfilter (nf_tables) 커널 모듈 비활성화
nf_tables
커널 모듈을 비활성화하여 Netfilter 관련 기능을 차단할 수 있습니다. 단, 이 방법은 firewalld
등을 사용하지 않는 시스템에서만 적용 가능합니다. 방화벽을 사용 중인 환경에서는 서비스 중단이 발생할 수 있으므로 주의가 필요합니다.
커널 모듈 비활성화 방법은 "커널 모듈 비활성화" 문서를 참고하십시오.
2. 사용자 네임스페이스 비활성화
컨테이너를 사용하지 않는 RHEL 환경에서는 사용자 네임스페이스를 비활성화하여 완화할 수 있습니다. 아래 명령어를 통해 설정합니다:
# echo "user.max_user_namespaces=0" > /etc/sysctl.d/userns.conf # sysctl -p /etc/sysctl.d/userns.conf
이 방법은 컨테이너 기반 배포 환경에서는 사용할 수 없습니다.
댓글
댓글 쓰기