🔍 CVE-2025-38149

5.5
CVSS Score
MEDIUM
2025-07-03
2026-11-05 21:18
✅ 완료

🇰🇷 한글 설명

Linux 커널의 네트워크 PHY 드라이버에서, 네트워크 포트를 비활성화했다가 다시 활성화할 때 phydev->devlink 포인터가 해제 후에도 초기화되지 않아 NULL 포인터 역참조로 커널 크래시가 발생할 수 있습니다. 패치는 device link 삭제 시 해당 포인터를 함께 초기화하도록 수정합니다.

💡 쉬운 설명

네트워크 포트를 껐다 켜는 과정에서 시스템이 잘못된 기억을 참조해 멈출 수 있는 결함입니다. 이를 고치려면 연결을 끊을 때 관련 정보를 함께 지우도록 바꾸면 됩니다.

🇺🇸 원문 (English)

In the Linux kernel, the following vulnerability has been resolved: net: phy: clear phydev->devlink when the link is deleted There is a potential crash issue when disabling and re-enabling the network port. When disabling the network port, phy_detach() calls device_link_del() to remove the device link, but it does not clear phydev->devlink, so phydev->devlink is not a NULL pointer. Then the network port is re-enabled, but if phy_attach_direct() fails before calling device_link_add(), the code jumps to the "error" label and calls phy_detach(). Since phydev->devlink retains the old value from the previous attach/detach cycle, device_link_del() uses the old value, which accesses a NULL pointer and causes a crash. The simplified crash log is as follows. [ 24.702421] Call trace: [ 24.704856] device_link_put_kref+0x20/0x120 [ 24.709124] device_link_del+0x30/0x48 [ 24.712864] phy_detach+0x24/0x168 [ 24.716261] phy_attach_direct+0x168/0x3a4 [ 24.720352] phylink_fwnode_phy_connect+0xc8/0x14c [ 24.725140] phylink_of_phy_connect+0x1c/0x34 Therefore, phydev->devlink needs to be cleared when the device link is deleted.

📍 영향받는 시스템

패치 이전의 Linux 커널 (PHY 네트워크 드라이버를 사용하는 시스템, 버전은 수정 커밋 기준으로 확인 필요)

⚔️ 공격 벡터

로컬 사용자 또는 관리 권한자가 네트워크 포트 비활성화/재활성화를 반복하면 커널 패닉이 유발될 수 있으며, 원격 공격 경로는 명시되지 않음

🛡️ 대응 방법

배포판 제공 최신 커널 업데이트를 설치하고 재부팅하여 수정된 커널을 적용

🔧 검증 코드

출력된 커널 버전을 배포판 보안 공지 또는 수정 커밋이 포함된 커널 버전과 비교하여, 최신 보안 업데이트가 적용되었는지 확인합니다.

Shell / Script
uname -r

📊 CVSS Vector String

CVSS Vector
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H

💻 영향받는 소프트웨어

Linux Kernel