🇰🇷 한글 설명
Linux 커널의 i40e 드라이버에서 PF 리셋과 ethtool 테스트가 짧은 간격으로 실행될 경우 발생하는 레이스 컨디션 취약점입니다. 이로 인해 setup_tx_descriptors 함수에서 콜 트레이스가 발생하며 시스템 패닉(커널 크래시)을 유발할 수 있습니다.
💡 쉬운 설명
네트워크 장치를 재설정하는 도중에 동시에 테스트 명령을 내리면 컴퓨터 시스템이 충돌하여 멈출 수 있는 문제입니다. 특정 명령들이 서로 엉키면서 발생하는 소프트웨어 오류입니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
i40e: Fix call trace in setup_tx_descriptors
After PF reset and ethtool -t there was call trace in dmesg
sometimes leading to panic. When there was some time, around 5
seconds, between reset and test there were no errors.
Problem was that pf reset calls i40e_vsi_close in prep_for_reset
and ethtool -t calls i40e_vsi_close in diag_test. If there was not
enough time between those commands the second i40e_vsi_close starts
before previous i40e_vsi_close was done which leads to crash.
Add check to diag_test if pf is in reset and don't start offline
tests if it is true.
Add netif_info("testing failed") into unhappy path of i40e_diag_test()
📍 영향받는 시스템
i40e 드라이버를 사용하는 Linux 커널 시스템
⚔️ 공격 벡터
로컬 권한을 가진 사용자가 PF 리셋과 ethtool 테스트 명령을 매우 짧은 간격으로 연속 실행하여 시스템을 중단시킴
🛡️ 대응 방법
i40e 드라이버의 패치가 적용된 최신 Linux 커널로 업데이트
🔧 검증 코드
출력된 커널 버전이 해당 취약점이 해결된 패치 버전 이후인지 확인