CVE-2026-43086 in Linux
요약
\~에 의해 VulDB • 2026. 05. 10.
리눅스 커널에서 다음 취약점이 해결되었습니다:
ipvs: ip_vs_add_service 오류 경로에서 NULL 역참조 수정
ip_vs_add_service()에서 ip_vs_bind_scheduler()가 성공하면 로컬 변수 sched가 NULL로 설정됩니다. 이후 ip_vs_start_estimator()가 실패하면 out_err 정리 과정에서 ip_vs_unbind_scheduler(svc, sched)가 sched == NULL 상태로 호출됩니다. ip_vs_unbind_scheduler()는 svc->scheduler가 성공적인 바인딩으로 인해 설정되었기 때문에 cur_sched에 대한 NULL 검사를 통과하지만, 이후 sched->done_service에서 NULL인 sched 매개변수를 역참조하여 NULL로부터 오프셋 0x30 지점에서 커널 패닉을 유발합니다.
Oops: general protection fault, [..] [#1] PREEMPT SMP KASAN NOPTI
KASAN: null-ptr-deref in range [0x0000000000000030-0x0000000000000037]
RIP: 0010:ip_vs_unbind_scheduler (net/netfilter/ipvs/ip_vs_sched.c:69) Call Trace: ip_vs_add_service.isra.0 (net/netfilter/ipvs/ip_vs_ctl.c:1500) do_ip_vs_set_ctl (net/netfilter/ipvs/ip_vs_ctl.c:2809) nf_setsockopt (net/netfilter/nf_sockopt.c:102) [..]
성공적인 바인딩 후 로컬 sched 변수를 지우지 않음으로써 수정합니다. ip_vs_unbind_scheduler()는 이미 svc->scheduler를 통해 스케줄러가 설치되어 있는지 감지하며, sched가 NULL이 아닌 상태를 유지하면 오류 경로에서 ip_vs_unbind_scheduler()와 ip_vs_scheduler_put() 모두에 올바른 포인터가 전달됨을 보장합니다.
이 버그는 오래되었지만, ip_vs_start_estimator() 호출 후 새로운 오류 경로가 실행되는 최근 커널(6.2)에서 문제가 발생합니다.
If you want to get best quality of vulnerability data, you may have to visit VulDB.