🇰🇷 한글 설명
Linux 커널의 MDIO 모듈에서 mdiobus_get_phy() 함수가 호출자로부터 전달받은 addr 값을 검증하지 않아, mdio_map 배열의 범위를 벗어난 접근이 발생할 수 있습니다. 예를 들어 stmmac_init_phy()가 -1을 전달하는 경우가 있어, 이 값을 사용하기 전에 유효성 검사가 필요합니다.
💡 쉬운 설명
리눅스 커널이 네트워크 장치의 주소를 확인할 때 잘못된 값을 검사 없이 사용하여 메모리 경계를 넘어서는 문제가 있습니다. 이 결함이 수정되지 않으면 시스템이 비정상 동작하거나 불안정해질 수 있습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
net: mdio: validate parameter addr in mdiobus_get_phy()
The caller may pass any value as addr, what may result in an out-of-bounds
access to array mdio_map. One existing case is stmmac_init_phy() that
may pass -1 as addr. Therefore validate addr before using it.
📍 영향받는 시스템
수정 이전의 Linux 커널 (mdio 네트워크 PHY 관리 코드를 포함한 버전, 특정 릴리스 번호는 배포판 보안 공지 확인 필요)
⚔️ 공격 벡터
로컬 사용자 또는 잘못된 드라이버 설정을 통해 범위를 벗어난 addr 값이 전달되어 커널 메모리 경계 외부를 읽거나 쓰게 되는 방식입니다.
🛡️ 대응 방법
배포판 제공 보안 업데이트를 적용하거나, 수정이 포함된 최신 Linux 커널로 업그레이드하고 재부팅합니다.
🔧 검증 코드
출력된 커널 버전을 배포판 보안 공지에서 해당 CVE 수정 버전과 비교하여, 설치된 버전이 같거나 이후이면 패치된 것이고 이전이면 업데이트가 필요합니다.
uname -r && dpkg -l linux-image-$(uname -r) 2>/dev/null | grep -E '^ii' || rpm -q kernel 2>/dev/null