🇰🇷 한글 설명
Linux 커널의 mlx5 네트워크 드라이버에서 복잡한 규칙 재해시(rehash) 과정 중 오류가 발생할 경우 시스템이 소프트 락업(soft lock-up) 상태에 빠질 수 있는 취약점입니다. 이 패치는 규칙 이동 실패 시 커널이 중단되지 않고 정상적으로 동작을 계속할 수 있도록 오류 처리 흐름을 개선합니다.
💡 쉬운 설명
네트워크 장치에서 데이터를 처리하는 규칙을 변경하다가 오류가 나면 컴퓨터가 멈춰버릴 수 있는 문제입니다. 이번 수정으로 오류가 발생하더라도 컴퓨터가 멈추지 않고 계속 작동할 수 있게 되었습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
net/mlx5: HWS, fix complex rules rehash error flow
Moving rules from matcher to matcher should not fail.
However, if it does fail due to various reasons, the error flow
should allow the kernel to continue functioning (albeit with broken
steering rules) instead of going into series of soft lock-ups or
some other problematic behaviour.
Similar to the simple rules, complex rules rehash logic suffers
from the same problems. This patch fixes the error flow for moving
complex rules:
- If new rule creation fails before it was even enqeued, do not
poll for completion
- If TIMEOUT happened while moving the rule, no point trying
to poll for completions for other rules. Something is broken,
completion won't come, just abort the rehash sequence.
- If some other completion with error received, don't give up.
Continue handling rest of the rules to minimize the damage.
- Make sure that the first error code that was received will
be actually returned to the caller instead of replacing it
with the generic error code.
All the aforementioned issues stem from the same bad error flow,
so no point fixing them one by one and leaving partially broken
code - fixing them in one patch.
📍 영향받는 시스템
Linux kernel (mlx5 driver module)
⚔️ 공격 벡터
로컬 시스템에서 네트워크 규칙을 조작하여 커널의 오류 처리 로직을 유도함으로써 시스템 서비스 거부(DoS) 유발
🛡️ 대응 방법
Linux 커널을 최신 보안 패치가 적용된 버전으로 업데이트하십시오.
🔧 검증 코드
출력된 커널 버전이 해당 취약점이 해결된 패치 버전 이후인지 확인하십시오.