🔍 CVE-2026-45550

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

🇰🇷 한글 설명

Roxy-WI의 모니터링 설정 업데이트 API는 사용자 권한 검증이 부족하여, 인증된 사용자가 다른 사용자의 모니터링 데이터를 임의로 수정할 수 있습니다. 이는 데이터베이스 쿼리에서 사용자 그룹 필터링을 누락시켜 발생한 인스턴스 레벨 권한 우회 취약점입니다.

💡 쉬운 설명

이 취약점은 로그인한 사용자가 다른 사람의 설정을 마음대로 바꿀 수 있게 해줍니다. 개발자가 보안 코드를 작성한 것을 알았지만, 수정 기능에만 적용하지 않아 발생한 실수입니다.

🇺🇸 원문 (English)

Roxy-WI is a web interface for managing Haproxy, Nginx, Apache and Keepalived servers. In versions 8.2.6.4 and prior, PUT /smon/check (app/routes/smon/routes.py:117-138) gates only on roxywi_common.check_user_group_for_flask() — which validates that the caller has some group, not that the target check_id belongs to it. The downstream SQL update functions update_smon, update_smonHttp, update_smonTcp, update_smonPing, update_smonDns (app/modules/db/smon.py:515-562) all execute WHERE smon_id = ? with no user_group filter. The DELETE path is correctly filtered (app/modules/db/smon.py:319-327 does WHERE id = ? AND user_group = ?), demonstrating that the maintainers know the right pattern but did not apply it on UPDATE. Therefore any authenticated user can iterate over smon_id values and silently rewrite any other tenant's HTTP / TCP / Ping / DNS monitoring check. At time of publication, there are no publicly available patches.

📍 영향받는 시스템

Roxy-WI version 8.2.6.4 and prior

⚔️ 공격 벡터

인증된 사용자가 PUT /smon/check 엔드포인트를 통해 다른 사용자의 smon_id를 대상으로 SQL 업데이트를 수행

🛡️ 대응 방법

업데이트 API에 대상 리소스의 소유자 검증 로직을 추가하고, 공식 패치가 출시될 때까지 즉시 업그레이드

🔧 검증 코드

해당 함수 호출 후 smon_id에 대한 추가 권한 검증 로직이 없으면 취약점이 존재할 가능성이 높습니다.

Shell / Script
grep -r 'check_user_group_for_flask' app/routes/smon/routes.py

📊 CVSS Vector String

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

💻 영향받는 소프트웨어

Apache HTTP Server