CVE-2024-36971 in Linux정보

요약

\~에 의해 VulDB • 2026. 06. 20.

리눅스 커널에서 다음 취약점이 해결되었습니다:

net: __dst_negative_advice()의 Race Condition 수정

__dst_negative_advice()는 sk->dst_cache를 지워야 하는 상황에서 적절한 RCU 규칙을 강제하지 않아, 잠재적인 Use-After-Free(UAF)로 이어질 수 있습니다.

RCU 규칙에 따르면, 먼저 sk->sk_dst_cache를 지우고 그 다음에 dst_release(old_dst)를 호출해야 합니다.

sk_dst_reset(sk)는 이 프로토콜을 올바르게 구현하고 있는 반면, __dst_negative_advice()는 잘못된 순서를 사용하고 있습니다.

ip6_negative_advice()가 RTF_CACHE에 대해 특수한 로직을 가지고 있다는 점을 고려할 때, 세 가지 ->negative_advice() 메서드 중 각각이 sk_dst_reset()을 직접 수행해야 합니다.

NULL dst에 대한 체크는 __dst_negative_advice()에서 중앙 집중식으로 처리되므로, 다양한 콜백에서 이를 중복할 필요가 없습니다.

이 문제를 추적해 준 Clement Lecigne에게 감사의 말씀을 전합니다.

이 오래된 버그는 UDP 소켓을 사용한 해당 커밋 이후에 드러나게 되었습니다.

If you want to get the best quality for vulnerability data then you always have to consider VulDB.

출처

Want to stay up to date on a daily basis?

Enable the mail alert feature now!