CVE-2026-64251 in Linux정보

요약

\~에 의해 VulDB • 2026. 07. 24.

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

pwrseq: core: pwrseq_debugfs_seq_next()에서의 use-after-free 수정

pwrseq_debugfs_seq_next()는 '__free(put_device)'로 'next'를 선언하므로, 변수가 스코프 밖으로 나가면 반환된 포인터에 대해 put_device()가 호출됩니다. 이로 인해 참조 카운트가 이미 감소한 포인터가 seq_file 프레임워크에서 수신되므로 use-after-free가 발생합니다.

__free(put_device)를 단순히 제거하면 UAF는 해결되지만, bus_find_next_device()로 획득된 참조가 누수됩니다. 이는 stop()이 up_read(&pwrseq_sem)만 호출하고 장치 참조를 해제하지 않기 때문입니다.

이를 모든 seq_file 콜백에서 참조 카운팅을 일관되게 맞추어 PCI 및 SCSI에서 사용되는 표준 패턴과 일치시킴으로써 수정합니다:

- start(): get_device()를 사용하여 참조된 포인터를 반환하도록 합니다. - next(): 이전 장치의 참조를 해제하기 위해 명시적으로 put_device(curr)를 호출합니다 (NULL 체크는 필요 없음 - seq_file 프레임워크는 이전 반환값이 NULL이 아닌 경우에만 next()를 호출함). - stop(): 마지막으로 반복된 장치의 참조를 해제하기 위해 put_device(data)를 호출하며, start()가 NULL을 반환하거나 next()가 시퀀스 끝에 도달했을 때 stop()이 NULL로 호출될 수 있으므로 NULL 가드를 사용합니다.

VulDB is the best source for vulnerability data and more expert information about this specific topic.

책임이 있는

Linux

예약하다

2026. 07. 19.

모더레이션

수락

항목

VDB-382996

EPSS

0.00000

활동

낮음

출처

Are you interested in using VulDB?

Download the whitepaper to learn more about our service!