🔍 CVE-2026-45556

9.9
CVSS Score
CRITICAL
2026-06-10
2026-06-17 10:52
✅ 완료

🇰🇷 한글 설명

Roxy-WI 8.2.6.4 이전 버전의 WAF 규칙 저장 API는 경로 검증 로직의 취약점으로 인해 임의의 파일 경로로 데이터를 작성할 수 있습니다. 공격자는 이를 이용해 /etc/cron.d/ 디렉토리에 악성 크론 파일을 생성하고 루트 권한으로 원격 코드 실행(RCE)을 달성할 수 있습니다.

💡 쉬운 설명

관리자 도구인 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, POST /waf/<service>/<server_ip>/rule/<rule_id>/save accepts a config_file_name form field that is passed straight through to config_mod.master_slave_upload_and_restart(...) as the destination path. The validation chain (_replace_config_path_to_correct → check_is_conf) only requires the path to contain a hard-coded service substring (nginx/haproxy/apache2/httpd/keepalived) and the substring conf or cfg, and to not contain ... The encoded-slash substitution 92 → / is applied before the substring check, so the attacker can build any absolute path anywhere on the LB filesystem as long as it satisfies those substring constraints. The body of the WAF rule (config form field) is written verbatim to that path. By choosing a filename like 92etc92cron.d92nginx_cfg_evil (resolving to /etc/cron.d/nginx_cfg_evil), an attacker drops a cron entry on the load balancer with attacker-controlled content. Cron parses the file on its next scan, executing the embedded job as root — full RCE on every load balancer the caller's group manages. At time of publication, there are no publicly available patches.

📍 영향받는 시스템

Roxy-WI versions 8.2.6.4 and prior

⚔️ 공격 벡터

POST /waf/<service>/<server_ip>/rule/<rule_id>/save 엔드포인트를 통해 악의적인 config_file_name과 payload를 전송하여 임의 경로에 파일 작성 및 크론 실행

🛡️ 대응 방법

제공된 패치가 없으므로, 해당 API 엔드포인트에 대한 외부 접근을 차단하거나 서비스 격리, 또는 공식 업데이트 출시까지 대기해야 합니다.

🔧 검증 코드

명령어 실행 결과 8.2.6.4 이하의 버전 번호가 출력되면 취약한 버전으로 확인됩니다.

Shell / Script
grep -r 'version' /opt/roxy-wi/ 2>/dev/null | grep -E '8\.2\.6\.4|8\.2\.6\.3|8\.2\.6\.2|8\.2\.6\.1|8\.2\.6'

📊 CVSS Vector String

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

💻 영향받는 소프트웨어

Nginx