NVD Recent CVEs
CVE-2026-64251:Linux内核已修复以下漏洞:pwrseq: core: 修复pwrseq_debugfs_seq_next()中的释放后使用问题
Linux内核已修复以下漏洞:pwrseq: core: 修复pwrseq_debugfs_seq_next()中的释放后使用问题。pwrseq_debugfs_seq_next()使用__free(put_device)声明了‘next’变量,这会导致当变量超出作用域时,put_device()被调用在返回的指针上。由于seq_file框架接收到的指针引用已被释放,这会导致释放后使用问题。直接移除__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)释放最后一个迭代设备的引用,并添加NULL防护,因为当start()返回NULL或next()到达序列末尾时,stop()可能会用NULL调用。