🇰🇷 한글 설명
Roxy-WI의 Pydantic 검증 로직에서 특수문자 제거 과정의 결함으로 인해 명령어 삽입 공격이 가능합니다. 공격자는 .. 페이로드에 특수문자를 추가하여 차단 규칙을 우회하고, 최종적으로 shlex.quote() 처리 없이 시스템에 전달되도록 할 수 있습니다.
💡 쉬운 설명
Roxy-WI 프로그램의 보안 검증 기능에 구멍이 있어 해커가 악성 명령어를 숨겨 실행할 수 있습니다. 현재 공식 패치가 없으므로 주의가 필요합니다.
🇺🇸 원문 (English)
Roxy-WI is a web interface for managing Haproxy, Nginx, Apache and Keepalived servers. In versions 8.2.6.4 and prior, EscapedString (app/modules/roxywi/class_models.py:16-30) is the centralised Pydantic validator used on dozens of fields including SSH credential name, username, description, etc. Its if/elif/elif/else flow returns the metacharacter-stripped value without also enforcing the .. block. An attacker who appends a single ;, &, |, $, or backtick to a .. payload routes the value through the strip arm, where .. survives unblocked and the result is not shlex.quote()'d either. At time of publication, there are no publicly available patches.
📍 영향받는 시스템
Roxy-WI version 8.2.6.4 and prior
⚔️ 공격 벡터
SSH 자격 증명 이름 등 입력 필드를 통해 특수문자가 포함된 .. 페이로드를 삽입하여 시스템 명령어 주입을 유도
🛡️ 대응 방법
공식 패치 출시 전까지 입력값에 대한 엄격한 검증 및 shlex.quote() 적용을 강화하고, 가능한 경우 서비스 접근을 제한하십시오.
🔧 검증 코드
출력된 버전이 8.2.6.5 미만이면 취약한 버전이므로 패치 또는 업그레이드가 필요합니다.
pip show roxy-wi 2>/dev/null | grep -E 'Version' | grep -vE '8.2.6.5|8.2.6.6'