🇰🇷 한글 설명
Linux 커널의 sata_dwc_460ex 드라이버에서 인터럽트 핸들러가 등록되기 전에 SATA 인터럽트가 활성화되는 취약점이 발견되었습니다. 이로 인해 초기화 과정 중 오류가 발생할 경우 핸들러가 없는 상태에서 인터럽트가 발생하여 스퓨리어스 인터럽트 스톰(spurious interrupt storm)이 발생할 수 있습니다.
💡 쉬운 설명
컴퓨터 부품이 신호를 보낼 준비가 되기도 전에 신호를 받을 준비를 마쳐버리는 문제입니다. 이 과정에서 오류가 생기면 컴퓨터가 처리할 수 없는 신호가 폭주하여 시스템이 멈출 수 있습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
ata: sata_dwc_460ex: enable SATA interrupts only after IRQ handler is registered
sata_dwc_enable_interrupts() is called before platform_get_irq() and
ata_host_activate(), leaving the SATA controller's interrupt mask
enabled without a registered handler. If a later step fails (irq
request, phy init, etc.) or if the controller asserts an interrupt
during probe, the irq line may fire with no handler, causing a
spurious interrupt storm.
Move sata_dwc_enable_interrupts() after ata_host_activate() so that
interrupts are only unmasked once the handler is registered and the
core is fully initialized.
📍 영향받는 시스템
Linux kernel (sata_dwc_460ex 드라이버를 사용하는 시스템)
⚔️ 공격 벡터
로컬 시스템의 하드웨어 초기화 과정 중 오류를 유도하여 인터럽트 폭주를 일으키는 방식
🛡️ 대응 방법
Linux 커널을 최신 패치가 적용된 버전으로 업데이트하여 인터럽트 활성화 순서를 수정해야 합니다.
🔧 검증 코드
출력된 커널 버전이 해당 취약점이 수정된 패치 버전 이후인지 확인합니다.