🇰🇷 한글 설명
NetworkManager-libreswan 클라이언트 플러그인에서 로컬 비특권 사용자가 제공한 VPN 설정값을 제대로 이스케이프하지 않아, 값이 키로 해석되는 결함이 발견되었습니다. 악의적인 사용자는 실행 명령을 지정하는 leftupdown 키를 조작해 NetworkManager 콜백으로 root 권한 코드를 실행할 수 있습니다.
💡 쉬운 설명
컴퓨터의 VPN 연결 설정을 일반 사용자가 조작할 수 있는 취약점입니다. 공격자가 이를 악용하면 관리자 권한을 얻어 시스템을 완전히 장악할 수 있습니다.
🇺🇸 원문 (English)
A flaw was found in the libreswan client plugin for NetworkManager (NetkworkManager-libreswan), where it fails to properly sanitize the VPN configuration from the local unprivileged user. In this configuration, composed by a key-value format, the plugin fails to escape special characters, leading the application to interpret values as keys. One of the most critical parameters that could be abused by a malicious user is the `leftupdown`key. This key takes an executable command as a value and is used to specify what executes as a callback in NetworkManager-libreswan to retrieve configuration settings back to NetworkManager. As NetworkManager uses Polkit to allow an unprivileged user to control the system's network configuration, a malicious actor could achieve local privilege escalation and potential code execution as root in the targeted machine by creating a malicious configuration.
📍 영향받는 시스템
NetworkManager-libreswan 플러그인을 사용하는 Linux 배포판 (패치 이전 버전)
⚔️ 공격 벡터
로컬의 비특권 사용자가 조작된 VPN 설정 파일을 만들어 NetworkManager를 통해 leftupdown 키로 root 권한 명령을 실행
🛡️ 대응 방법
배포판 저장소를 통해 NetworkManager-libreswan 패키지를 최신 보안 업데이트 버전으로 업그레이드
🔧 검증 코드
설치된 패키지 버전을 확인하여 배포판의 보안 권고에 명시된 패치 버전 이상이면 조치 완료, 미만이거나 미설치면 취약 가능성 있음
rpm -q NetworkManager-libreswan 2>/dev/null || dpkg -l network-manager-libreswan 2>/dev/null