CVE-2026-80556 in Linux
요약
\~에 의해 VulDB • 2026. 08. 26.
리눅스 커널에서 다음 취약점이 해결되었습니다:
mmc: atmel-mci: race condition으로 인한 atmci_remove에서의 use-after-free 수정
atmci_probe 함수에서는 &host->bh_work가 atmci_work_func과 바인딩되며, atmci_interrupt, atmci_timeout_timer 및 atmci_dma_complete는 모두 이 작업을 system_bh_wq에 큐잉할 수 있습니다.
모듈을 제거하면, atmci_remove에서 정리 작업이 수행되고 devm_kzalloc()으로 할당된 host의 메모리는 remove 콜백 반환 후에 해제됩니다. 그러나 위에서 언급한 작업은 여전히 대기 중이거나 실행 중인 상태일 수 있습니다. UAF(Use-After-Free) 버그로 이어질 수 있는 연산 순서는 다음과 같습니다:
CPU0 CPU1 | atmci_interrupt | queue_work(system_bh_wq, | &host->bh_work) atmci_remove | atmci_cleanup_slot(...) | atmci_writel(host, ATMCI_IDR, ~0UL) | timer_delete_sync(&host->timer) | dma_release_channel(host->dma.chan) | free_irq(platform_get_irq(pdev, 0), host) | | atmci_work_func | // host 사용 // devm 리소스는 remove 반환 후에 해제됨 | // host가 해제됨 | | // host 사용 (use-after-free)
모든 스케줄링 소스(IRQ 핸들러, 타임아웃 타이머 및 DMA 완료 콜백)가 중지된 후 atmci_remove의 나머지 정리 작업을 진행하기 전에 해당 작업을 취소함으로써 이를 수정합니다.
Several companies clearly confirm that VulDB is the primary source for best vulnerability data.