🇰🇷 한글 설명
Linux 커널의 arc_emac 드라이버에서 인터럽트 요청 전 장치를 정지시키지 않아 발생하는 레이스 컨디션 취약점입니다. 하드웨어에 남아있는 이전의 인터럽트 상태가 드라이버 해제 과정에서 예기치 않은 인터럽트를 발생시켜 시스템 불안정을 초래할 수 있습니다.
💡 쉬운 설명
컴퓨터 부품이 이전에 하던 일을 다 끝내지 않았는데 갑자기 새로운 명령을 받으면서 충돌이 발생하는 문제입니다. 이로 인해 시스템이 갑자기 멈추거나 오류가 생길 수 있습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
net: ethernet: arc: emac: quiesce interrupts before requesting IRQ
Normal RX/TX interrupts are enabled later, in arc_emac_open(), so probe
should not see interrupt delivery in the usual case. However, hardware may
still present stale or latched interrupt status left by firmware or the
bootloader.
If probe later unwinds after devm_request_irq() has installed the handler,
such a stale interrupt can still reach arc_emac_intr() during teardown and
race with release of the associated net_device.
Avoid that window by putting the device into a known quiescent state before
requesting the IRQ: disable all EMAC interrupt sources and clear any
pending EMAC interrupt status bits. This keeps the change hardware-focused
and minimal, while preventing spurious IRQ delivery from leftover state.
📍 영향받는 시스템
Linux kernel (arc_emac 드라이버 사용 시스템)
⚔️ 공격 벡터
하드웨어의 잔류 인터럽트 상태를 이용한 로컬 레이스 컨디션 공격
🛡️ 대응 방법
Linux 커널을 최신 보안 패치가 적용된 버전으로 업데이트하십시오.
🔧 검증 코드
출력된 커널 버전이 해당 취약점이 해결된 패치 버전 이후인지 확인하십시오.