🇰🇷 한글 설명
Linux 커널 regulator 코어에서, 커플링된 레귤레이터의 coupled_rdevs 메모리를 해제한 뒤 coupling_desc.n_coupled 값을 0으로 초기화하지 않아, 디바이스 unbind 이후 해당 레귤레이터에 접근할 때 NULL 포인터 역참조가 발생할 수 있습니다. 이로 인해 regulator_lock_recursive() 등에서 커널 패닉이 일어날 수 있으며, 수정은 n_coupled를 0으로 설정하는 것입니다.
💡 쉬운 설명
전원 공급을 조절하는 장치 드라이버를 제거한 뒤에도 잘못 남은 연결 정보가 남아 있어 시스템이 멈출 수 있는 문제입니다. 연결 정보를 명확히 비워 두는 방식으로 이를 막습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
regulator: core: fix NULL dereference on unbind due to stale coupling data
Failing to reset coupling_desc.n_coupled after freeing coupled_rdevs can
lead to NULL pointer dereference when regulators are accessed post-unbind.
This can happen during runtime PM or other regulator operations that rely
on coupling metadata.
For example, on ridesx4, unbinding the 'reg-dummy' platform device triggers
a panic in regulator_lock_recursive() due to stale coupling state.
Ensure n_coupled is set to 0 to prevent access to invalid pointers.
📍 영향받는 시스템
Linux 커널 regulator 코어를 사용하는 시스템 (수정이 반영되지 않은 커널 버전, 정확한 범위는 배포판 커널 패치 목록 확인 필요)
⚔️ 공격 벡터
일반적으로 원격 공격보다는 드라이버 unbind 등 로컬 권한이 있는 작업 중 발생하는 안정성(패닉) 문제이며, 악의적 권한 상승으로 이어질지는 불분명합니다.
🛡️ 대응 방법
배포판 또는 커널 제공처의 보안 업데이트를 적용하여 n_coupled 초기화가 포함된 커널로 업그레이드하십시오.
🔧 검증 코드
현재 실행 중인 커널 버전과 설치된 커널 패키지 정보를 확인하며, 배포판 보안 공지에서 해당 버전이 CVE-2025-38668 수정 버전에 포함되는지 대조하면 됩니다.
uname -r && (dpkg -l linux-image-$(uname -r) 2>/dev/null || rpm -q kernel 2>/dev/null) | head -n 5