
CVE-2025-45422: Proximus b-box UPnP 지속성 및 접근 제어 우회
https://www.cve.org/CVERecord?id=CVE-2025-45422
이 스크립트는 펌웨어 버전 8c.725A를 실행하는 Proximus b-box 라우터에 영향을 미치는 CVE-2025-45422를 시연합니다. 이 라우터의 UPnP 기능을 이용하여 내부 클라이언트 IP 주소에 대한 임의의 포트 포워딩 규칙을 생성합니다.
UPnP 구현의 불충분한 접근 제어로 인해, 로컬 네트워크에 접근 가능한 공격자는 승인되지 않은 포트 매핑을 생성할 수 있습니다. 이러한 매핑은 라우터의 웹 인터페이스를 통해 영구적으로 제거할 수 없으며 비활성화만 가능합니다. 공격자는 이후 표준 UPnP 명령을 발행하여 언제든지 다시 활성화할 수 있습니다.
또한, 영향을 받는 장치에서 UPnP를 완전히 비활성화할 수 없어 내부 서비스의 무단 노출과 악의적인 포트 포워딩 구성의 지속성 위험이 증가합니다. 공격자는 NewLeaseDuration 매개변수를 사용하여 자동으로 만료되는 임시 포트 매핑을 생성할 수 있어 악의적인 활동의 가시성을 낮출 수 있습니다.
UPnP는 포트 매핑 관리를 위해 AddPortMapping() 및 DeletePortMapping() 동작을 정의합니다. 사용자가 관리 인터페이스를 통해 포트 매핑을 제거할 수 없는 반면 UPnP 클라이언트는 계속 생성할 수 있는 경우, 외부에 노출된 서비스에 대한 중요한 보안 제어를 상실합니다.
결과적으로, 장치 소유자가 GUI를 통해 영구적으로 제거할 수 있는 동등한 메커니즘이 없는 상황에서 공격자는 포트 포워딩 규칙을 생성하고 다시 활성화할 수 있습니다.
이 취약점은 펌웨어 버전 8c.725A를 실행하는 두 대의 개별 Proximus b-box 3 라우터에서 재현되었습니다.
취약점을 시연하는 것 외에도, 이 스크립트는 UPnP 포트 매핑을 열거하고 제거하는 기능을 제공하여 영향을 받는 사용자가 라우터의 웹 인터페이스를 통해 영구적으로 삭제할 수 없는 매핑을 제거할 수 있도록 합니다.
참고: 이 저장소는 취약점을 시연하기 위한 개념 증명 연구 코드를 포함합니다. PoC는 프로덕션 품질의 소프트웨어로 의도되지 않았으며 구현 특정 가정이나 제한 사항을 포함할 수 있습니다.