🇰🇷 한글 설명
Roxy-WI의 8.2.6.4 이전 버전에서는 인증된 사용자가 URL 경로를 통해 OS 명령어 인젝션(CMDI)을 수행할 수 있는 취약점이 존재합니다. 이는 configver 파라미터가 검증 없이 os.system을 통해 직접 실행되기 때문에 발생합니다.
💡 쉬운 설명
이 취약점은 로그인한 사용자가 시스템 명령어를 임의로 실행할 수 있게 해주는 심각한 보안 문제입니다. 공격자는 설정 파일 경로에 악의적인 명령어를 숨겨 서버를 장악할 수 있습니다.
🇺🇸 원문 (English)
Roxy-WI is a web interface for managing Haproxy, Nginx, Apache and Keepalived servers. In versions 8.2.6.4 and prior, POST /config/versions/<service>/<server_ip>/<configver>/save interpolates the URL-path configver parameter directly into a config-version path that ends up at os.system(f"dos2unix -q {cfg}"). configver is not run through EscapedString (Pydantic doesn't validate path segments declared as str) and the surrounding .. block is the broken tuple-membership patch from GHSA-vapt-004. An authenticated user with role <= 3 ("user") therefore reaches a bin/sh -c command-injection sink. At time of publication, there are no publicly available patches.
📍 영향받는 시스템
Roxy-WI versions <= 8.2.6.4
⚔️ 공격 벡터
인증된 사용자가 POST 요청의 URL 경로 파라미터에 악성 명령어를 삽입하여 os.system을 통해 실행
🛡️ 대응 방법
제공된 패치가 없으므로, 해당 서비스의 외부 노출을 차단하거나 임시로 웹 인터페이스 접근을 제한하십시오.
🔧 검증 코드
명령어 실행 결과 버전 정보가 8.2.6.4 이하로 출력되거나 파일이 존재하면 영향을 받습니다.
grep -r 'Roxy-WI' /etc/ 2>/dev/null | grep -i 'version' || cat /opt/roxy-wi/VERSION 2>/dev/null || rpm -q roxy-wi 2>/dev/null || dpkg -l roxy-wi 2>/dev/null