유니버설 플러그 앤 플레이
"오늘의AI위키"의 AI를 통해 더욱 풍부하고 폭넓은 지식 경험을 누리세요.
1. 개요
유니버설 플러그 앤 플레이(UPnP)는 미디어 및 장치 독립적인 사용자 인터페이스 제어를 지원하며, 운영 체제나 프로그래밍 언어에 독립적인 프로그래밍 제어가 가능한 기술이다. UPnP는 장치 검색, 설명, 제어, 이벤트 알림, 프리젠테이션의 기능을 제공하며, 인터넷 기술을 사용하여 HTTP, SOAP, XML을 통해 장치 간 통신을 수행한다. UPnP는 오디오/비디오 아키텍처를 포함한 다양한 구성 요소를 가지며, 디지털 리빙 네트워크 얼라이언스(DLNA)와 같은 관련 규격을 채택하고 있다. UPnP는 NAT 트래버설을 지원하며, UPnP IGD 프로토콜을 통해 라우터와 방화벽을 제어할 수 있지만, 인증 부재로 인한 보안 취약점과 CallStranger와 같은 보안 문제를 가지고 있다.
더 읽어볼만한 페이지
- 모바일 콘텐츠 - 모블로그
모블로그는 휴대폰이나 스마트폰으로 블로그를 관리, 편집, 작성하는 기술을 의미하며, 1995년 시작되어 스마트폰 기능을 활용한 멀티미디어 제작을 지원하고 교육 및 관광 분야에서 활용되지만, 모바일 기기 및 인터넷 접근성, 데이터 비용과 같은 과제도 안고 있다. - 모바일 콘텐츠 - 미니클립
미니클립은 2001년 설립되어 플래시 기반 브라우저 게임 포털로 인기를 얻은 온라인 게임 웹사이트 및 모바일 게임 개발사로, 2015년 텐센트에 인수된 후 Agar.io, 8 Ball Pool 등의 대표작을 통해 모바일 게임 시장으로 확장하고 2022년에는 SYBO를 인수하며 성장하고 있다. - 네트워크 프로토콜 - UUCP
UUCP는 유닉스 시스템 간 파일 복사, 원격 명령 실행, 이메일 및 유즈넷 뉴스 전송을 위한 프로토콜 및 프로그램 모음으로, 초기 인터넷 확장에 중요한 역할을 했으나 TCP/IP 기반 서비스 보편화로 사용이 감소했다. - 네트워크 프로토콜 - 프레임 릴레이
프레임 릴레이는 LAN 간 또는 WAN 종단점 간 데이터 전송을 위한 고속 패킷 교환 방식 통신 프로토콜로, X.25 프로토콜을 간소화하여 속도를 높이고, 영구 가상 회선을 통해 안정적인 연결을 제공하며, 서비스 품질 설정을 통해 프레임 우선순위를 지정할 수 있었으나, 현재는 다른 기술에 밀려 사용이 감소하고 있다.
유니버설 플러그 앤 플레이 | |
---|---|
일반 정보 | |
![]() | |
개발 | UPnP 포럼 |
최초 버전 | 2008년 |
최신 버전 | 1.1 (2008년 10월 15일) |
기술 정보 | |
유형 | 네트워킹 프로토콜 모음 |
용도 | 장치 간 통신 및 네트워크 설정 자동화 |
기반 프로토콜 | IP (인터넷 프로토콜) TCP (전송 제어 프로토콜) UDP (사용자 데이터그램 프로토콜) HTTP (하이퍼텍스트 전송 프로토콜) XML (확장성 마크업 언어) |
포트 | 1900 (UDP), 임의의 TCP 포트 |
표준 및 규격 | |
표준화 기관 | UPnP 포럼 (이전에는 UPnP Implementers Corporation) |
관련 표준 | DLNA (Digital Living Network Alliance) 윈도우 네트워크 플레이어 (Windows Network Player) |
보안 고려 사항 | |
잠재적 취약점 | 보안 취약점 및 악용 가능성 |
권장 조치 | UPnP 비활성화 펌웨어 업데이트 방화벽 설정 강화 |
장단점 | |
장점 | 네트워크 연결 자동화 장치 간 쉬운 통신 사용자 편의성 향상 |
단점 | 보안 취약점 가능성 네트워크 공격 위험 증가 불필요한 포트 개방 |
2. 기능
UPnP 아키텍처는 소비자 가전, 휴대 전화, 개인용 컴퓨터, 네트워크로 연결된 가전 제품의 장치 간 네트워킹을 허용한다. 이는 인터넷 프로토콜 스위트 (TCP/IP), HTTP, XML, SOAP와 같은 확립된 표준을 기반으로 하는 분산형 개방형 아키텍처 프로토콜이다. UPnP ''제어점''(CP)은 UPnP 프로토콜을 사용하여 UPnP ''제어 장치''(CD)를 제어하는 장치이다.[2]
UPnP 아키텍처는 제로 설정 네트워킹을 지원한다. UPnP 호환 장치는 어떤 공급업체에서든 동적으로 네트워크에 연결하여 IP 주소를 얻고, 이름을 알리고, 요청 시 기능을 알리거나 전달하며, 다른 장치의 존재와 기능에 대해 알 수 있다. 동적 호스트 설정 프로토콜(DHCP) 및 도메인 이름 시스템(DNS) 서버는 선택 사항이며 네트워크에서 사용할 수 있는 경우에만 사용된다. 장치는 상태 정보를 남기지 않고 자동으로 네트워크에서 연결을 끊을 수 있다.
UPnP는 2008년 12월에 73부로 구성된 국제 표준 ISO/IEC 29341로 게시되었다.[3][4][5][6][7][8]
UPnP의 다른 기능은 다음과 같다.
- 미디어 및 장치 독립성: UPnP 기술은 이더넷, FireWire, IR (IrDA), 가정용 배선 (G.hn) 및 RF (블루투스, Wi-Fi)를 포함하여 IP를 지원하는 많은 미디어에서 실행될 수 있다. 특수 장치 드라이버 지원이 필요하지 않다. 대신 일반적인 네트워크 프로토콜이 사용된다.
- 사용자 인터페이스(UI) 제어: ''선택적으로'' UPnP 아키텍처는 장치가 웹 브라우저를 통해 사용자 인터페이스를 제공할 수 있도록 한다.
- 운영 체제 및 프로그래밍 언어 독립성: 모든 운영 체제와 모든 프로그래밍 언어를 사용하여 UPnP 제품을 구축할 수 있다. UPnP 스택은 대부분의 플랫폼과 운영 체제에서 폐쇄형 및 오픈 소스 형태로 사용할 수 있다.
- 프로그램 방식 제어: UPnP 아키텍처는 또한 기존 응용 프로그램 프로그램 방식 제어를 가능하게 한다.
- 확장성: 각 UPnP 제품은 기본 아키텍처 위에 장치별 서비스를 계층화할 수 있다. UPnP 포럼에서 정의한 서비스를 다양한 방식으로 결합하는 것 외에도 공급업체는 자체 장치 및 서비스 유형을 정의할 수 있으며 공급업체 정의 작업, 상태 변수, 데이터 구조 요소 및 변수 값으로 표준 장치 및 서비스를 확장할 수 있다.
UPnP는 UPnP 포럼에서 정한 네트워크 프로토콜이다.
UPnP는 기본적인 구조를 정의하는 하위 계층에 해당하는 UPnP DA(UPnP Device Architecture)와 상위 계층인 UPnP DCP(UPnP Device Control Protocol)의 각 사양이 있다. 상위 계층으로, AV 콘텐츠 재생 등을 목적으로 하는 UPnP AV나, UPnP를 지원하는 광대역 라우터의 동작을 정한 UPnP IGD(Internet Gateway Device) 등이 유명하다. UPnP DA의 사양은 크게 어드레싱, 디스커버리, 디스크립션, 컨트롤, 이벤트 통지, 프레젠테이션으로 정의되어 있다.
UPnP에서는 각종 기능을 가진 장치와, 해당 장치를 제어하는 컨트롤 포인트를 정의하고 있다. 장치는 자신의 기능을 XML 형식으로 공개하며, 컨트롤 포인트는 이를 참조하여 필요한 기능을 이용할 수 있다. 버전 1.0에 대한 설명이다.
장치로, 콘텐츠 축적을 담당하는 미디어 서버와 콘텐츠 재생을 담당하는 미디어 렌더러의 두 종류를 정의하고 있다. 또한, 4종류의 서비스도 정의하고 있다. 커넥션 매니저 서비스는 각 장치에서 사용 가능한 프로토콜이나 콘텐츠 형식 등의 정보 교환 방식을 제공한다. 콘텐츠 디렉토리 서비스는 축적하는 콘텐츠의 메타데이터 관리 방식 등을 제공한다. 렌더링 컨트롤 서비스는 재생 시의 음량이나 밝기 등의 파라미터를 관리하는 방식을 제공한다. AV 전송 서비스는 콘텐츠의 전송에 관한 제어 기능을 제공한다.
3. 프로토콜
UPnP는 인터넷 프로토콜 스위트 (TCP/IP), HTTP, XML, SOAP와 같은 표준 기술을 기반으로 하는 분산형 개방형 아키텍처 프로토콜이다.[2] UPnP ''제어점''(CP)은 UPnP 프로토콜을 사용하여 UPnP ''제어 장치''(CD)를 제어하는 장치이다.[2]
UPnP는 일반적인 인터넷 기술을 사용한다. 네트워크가 인터넷 프로토콜 (IP)을 실행해야 한다고 가정하고, 장치/서비스 설명, 작업, 데이터 전송 및 이벤트를 제공하기 위해 IP 위에 HTTP, SOAP 및 XML을 사용한다. 장치 검색 요청 및 광고는 멀티캐스트를 사용하여 UDP 위에 HTTP를 실행하여 지원된다(HTTPMU라고 함). 검색 요청에 대한 응답도 UDP를 통해 전송되지만, 대신 유니캐스트를 사용하여 전송된다(HTTPU라고 함). UPnP는 수신된 데이터 확인 및 손상된 패킷 재전송이 필요하지 않아 오버헤드가 적기 때문에 UDP를 사용한다.[9]
UPnP는 UDP 포트 1900을 사용하며, 사용되는 모든 TCP 포트는 SSDP alive 및 응답 메시지에서 파생된다.[10]
UPnP는 UPnP 포럼에서 정한 네트워크 프로토콜이다. UPnP는 기본적인 구조를 정의하는 하위 계층에 해당하는 UPnP DA(UPnP Device Architecture)와 상위 계층인 UPnP DCP(UPnP Device Control Protocol)의 각 사양이 있다.
UPnP DA의 사양은 크게 어드레싱, 디스커버리, 디스크립션, 컨트롤, 이벤트 통지, 프레젠테이션으로 정의되어 있다.
기능 | 설명 |
---|---|
어드레싱 | 기기가 네트워크에 참여할 때 주소를 획득하는 방법에 대해 규정하고 있다. 일반적으로는 DHCP를 사용하지만, DHCP에 의한 주소 배포를 이용할 수 없는 경우, 자동 IP의 메커니즘을 사용하여 주소를 결정한다. |
디스커버리 | 단순 서비스 탐색 프로토콜(SSDP)이라는 UDP를 이용한 프로토콜을 사용하여 네트워크 상의 장치를 탐지한다. 네트워크에 참여한 장치는 멀티캐스트 패킷(NOTIFY 메서드)을 전송하고, 제어 지점은 이를 수신하여 장치를 탐지한다. 또한, 제어 지점 측에서 멀티캐스트 패킷(M_SEARCH 메서드)을 사용하여 문의하고, 장치가 응답하는 방식도 있다. |
디스크립션 | 장치가 제공할 수 있는 기능 및 정보를 설명하는 XML 파일이다. 장치 자체가 가진 서비스 등을 설명하는 장치 설명(Device Description)과 각 서비스가 가진 액션 등을 설명하는 서비스 설명(Service Description)의 두 종류가 있다. |
컨트롤 | 서비스가 가진 기능을 호출하는 액션과, 장치의 상태 변수를 묻는 쿼리가 있다. 이러한 메시지는 XML로 작성된 SOAP가 사용된다. |
이벤트 통지 | 장치에 특정 상태 변수를 지정하여 이벤트 구독 요청을 하면, 해당 상태 변수의 값이 변경될 때마다 이벤트가 통지된다. |
프레젠테이션 | 웹 브라우저에서 장치의 상태를 확인하고 제어할 수 있다. |
4. 구성 요소 (AV)
일반적으로 UPnP 오디오/비디오(AV) 아키텍처는 다음과 같은 요소로 구성된다.[17]
- 제어점: 미디어 서버 및 미디어 렌더러를 검색한 다음 연결하는 장치이다.
- 미디어 서버: 미디어 렌더러가 액세스할 수 있도록 네트워크에 콘텐츠를 저장하는 서버이다.
- 미디어 렌더러: 미디어 서버에서 수신된 콘텐츠를 렌더링(재생)하는 장치이다.
- UPnP 미디어 서버 제어점: 네트워크 상에서 UPnP 서버를 자동으로 감지하여 미디어/데이터 파일을 검색하고 스트리밍할 수 있는 UPnP 클라이언트(‘슬레이브’ 장치)이다.
- UPnP 미디어 렌더러 DCP: 콘텐츠를 렌더링(재생)할 수 있는 ‘슬레이브’ 장치이다.
- UPnP 렌더링 제어 DCP: 미디어 렌더러 설정(볼륨, 밝기, RGB, 선명도 등)을 제어한다.
- UPnP 원격 사용자 인터페이스(RUI) 클라이언트/서버: UPnP 클라이언트와 UPnP 서버 간에 네트워크를 통해 제어 명령(예: 녹음, 예약, 재생, 일시 정지, 정지 등)을 송수신한다.
- UPnP 원격 UI용 Web4CE (CEA 2014)[18]: 소비자 전자 협회의 R7 홈 네트워크 위원회에서 설계한 CEA-2014 표준이다. UPnP 컴퓨터 네트워크 및 인터넷(Web4CE)에서 원격 사용자 인터페이스를 위한 웹 페이지 기반의 프로토콜 및 소프트웨어 프레임워크이다. 이 표준을 통해 UPnP 지원 홈 네트워크 장치는 사용자 인터페이스(표시 및 제어 옵션)를 웹 페이지로 제공하여 홈 네트워크에 연결된 다른 장치에 표시할 수 있다. 즉, 이더넷과 CE-HTML이라는 특수 버전의 HTML을 사용하여 UPnP 홈 네트워크에서 소비자 전자 협회 장치에 대한 웹 브라우저 기반 통신 방식을 통해 컴퓨터 네트워크 장치를 제어할 수 있다.
- QoS (서비스 품질): UPnP AV(오디오 및 비디오)와 함께 사용할 수 있는 중요한(하지만 필수는 아님) 서비스 기능이다. QoS (서비스 품질)는 서로 다른 사용자 또는 데이터 흐름에 서로 다른 우선 순위를 제공하거나, 응용 프로그램의 요청에 따라 데이터 흐름에 특정 수준의 성능을 보장할 수 있는 제어 메커니즘을 의미한다. UPnP AV는 대부분 스트리밍 미디어를 제공하기 위한 것으로, 실시간 또는 실시간 오디오/비디오 데이터이므로 특정 시간 내에 전달되어야 하며, 그렇지 않으면 스트림이 중단된다. QoS 보장은 네트워크 용량이 제한된 경우(예: 인터넷과 같은 공용 네트워크) 특히 중요하며 다음과 같은 클래스들이 있다.
- UPnP용 QoS는 '''싱크 장치''' (클라이언트 측/프런트 엔드) 및 '''소스 장치''' (서버 측/백엔드) 서비스 기능으로 구성된다.
- '''트래픽 클래스''': 트래픽 스트림의 트래픽 종류를 나타낸다(예: 오디오 또는 비디오).
- '''트래픽 식별자(TID)''': 고유한 트래픽 스트림에 속하는 데이터 패킷을 식별한다.
- '''트래픽 사양(TSPEC)''': 트래픽 스트림의 특성을 정의하는 일련의 매개변수를 포함한다(예: 작동 요구 사항 및 스케줄링).
- '''트래픽 스트림(TS)''': 소스 장치에서 시작하여 하나 이상의 싱크 장치에서 종료되는 단방향 데이터 흐름이다.
- 원격 액세스: 동일한 멀티캐스트 도메인에 없는 UPnP 장치 세트를 연결하는 방법을 정의한다.
UPnP는 UPnP 포럼에서 정한 네트워크 프로토콜이다.
UPnP는 기본적인 구조를 정의하는 하위 계층에 해당하는 UPnP DA(UPnP Device Architecture)와 상위 계층인 UPnP DCP(UPnP Device Control Protocol)의 각 사양이 있다. 상위 계층으로, AV 콘텐츠 재생 등을 목적으로 하는 UPnP AV나, UPnP를 지원하는 광대역 라우터의 동작을 정한 UPnP IGD(Internet Gateway Device) 등이 유명하다. 버전 1.0에 대한 설명이다.
장치는 콘텐츠 축적을 담당하는 미디어 서버와 콘텐츠 재생을 담당하는 미디어 렌더러 두 종류로 정의된다. 또한, 4종류의 서비스도 정의하고 있다.
서비스 | 설명 |
---|---|
커넥션 매니저 서비스 | 각 장치에서 사용 가능한 프로토콜이나 콘텐츠 형식 등의 정보 교환 방식을 제공한다. |
콘텐츠 디렉토리 서비스 | 축적하는 콘텐츠의 메타데이터 관리 방식 등을 제공한다. |
렌더링 컨트롤 서비스 | 재생 시의 음량이나 밝기 등의 파라미터를 관리하는 방식을 제공한다. |
AV 전송 서비스 | 콘텐츠의 전송에 관한 제어 기능을 제공한다. |
5. 관련 규격
UPnP 아키텍처는 소비자 가전, 휴대 전화, 개인용 컴퓨터, 네트워크로 연결된 가전 제품의 장치 간 네트워킹을 허용하는 프로토콜이다. 이는 인터넷 프로토콜 스위트 (TCP/IP), HTTP, XML, SOAP와 같은 표준 기술을 기반으로 한다.
UPnP는 2008년 12월에 73부로 구성된 국제 표준 ISO/IEC 29341로 게시되었다.[3][4][5][6][7][8]
UPnP의 다른 기능은 다음과 같다.
- 미디어 및 장치 독립성: UPnP 기술은 이더넷, FireWire, IrDA, 가정용 배선 (G.hn) 및 RF (블루투스, Wi-Fi)를 포함하여 IP를 지원하는 많은 미디어에서 실행될 수 있다.
- 사용자 인터페이스(UI) 제어: UPnP 아키텍처는 장치가 웹 브라우저를 통해 사용자 인터페이스를 제공할 수 있도록 한다.
- 운영 체제 및 프로그래밍 언어 독립성: 모든 운영 체제와 모든 프로그래밍 언어를 사용하여 UPnP 제품을 구축할 수 있다.
- 확장성: 각 UPnP 제품은 기본 아키텍처 위에 장치별 서비스를 계층화할 수 있다.
UPnP 프로토콜은 1999년 10월에 결성된 UPnP 포럼에서 개발하였으며,[42] 2016년 이후 모든 UPnP 관련 활동은 개방형 연결 재단(OCF)에서 관리하고 있다.
2008년 가을, UPnP 포럼은 UPnP 1.0 장치 아키텍처의 후속 버전인 UPnP 1.1을 비준했다.[43]
UPnP 인터넷 게이트웨이 장치(IGD)[6] 표준에는 IETF 표준 포트 제어 프로토콜과 유사한 기능을 제공하는 WANIPConnection 서비스가 있다.
UPnP 장치 아키텍처에 대해 다음과 같은 여러 표준이 더 정의되었다.
- Wi-Fi Alliance는 무선 액세스 포인트와 관련된 "WFA 장치" 서비스 집합을 정의한다.
- * WFAWLANConfig 서비스는 필수 부분이며 무선 액세스 포인트의 기능을 쿼리하고 무선 연결을 설정하는 방법을 정의한다.[46]
UPnP는 UPnP 포럼에서 정한 네트워크 프로토콜이다. UPnP는 기본적인 구조를 정의하는 하위 계층에 해당하는 UPnP DA(UPnP Device Architecture)와 상위 계층인 UPnP DCP(UPnP Device Control Protocol)의 각 사양이 있다. 상위 계층으로, AV 콘텐츠 재생 등을 목적으로 하는 UPnP AV나, UPnP를 지원하는 광대역 라우터의 동작을 정한 UPnP IGD(Internet Gateway Device) 등이 있다.
UPnP를 채택한 규격으로 DLNA가 있다.
6. NAT 트래버설
NAT 트래버설의 한 가지 해결책인 인터넷 게이트웨이 장치 제어 프로토콜(UPnP IGD 프로토콜)은 UPnP를 통해 구현된다. 많은 라우터와 방화벽은 인터넷 게이트웨이 장치로 노출되어 로컬 UPnP 제어 지점이 장치의 외부 IP 주소 검색, 기존 포트 매핑 열거, 포트 매핑 추가 또는 제거를 포함한 다양한 작업을 수행할 수 있도록 한다. IGD 뒤의 UPnP 컨트롤러는 포트 매핑을 추가하여 외부 주소에서 내부 클라이언트로의 IGD 트래버설을 활성화할 수 있다.[19]
실제로는 하위 호환되는 매우 큰 IGDv1 및 IGDv2 사양에 대한 다양한 해석으로 인해 수많은 호환성 문제가 있다. 그중 하나는 인증된 IGDv2 라우터가 있는 현재 Microsoft Windows 및 Xbox 시스템에 통합된 UPnP IGD 클라이언트이다. 호환성 문제는 2001년 Windows XP에 IGDv1 클라이언트가 도입된 이후에도 여전히 존재하며, 라우터 포트 매핑을 불가능하게 만드는 해결 방법이 없는 IGDv2 라우터가 있다.[19]
UPnP가 라우터 포트 매핑 및 핀홀 제어에만 사용되는 경우, PCP 및 NAT-PMP와 같은 대안적이고 새로운 훨씬 더 간단하고 가벼운 프로토콜이 있으며, 둘 다 IETF에서 RFC로 표준화되었다. 이러한 대안은 서로 다른 클라이언트와 서버 간에 아직 호환성 문제가 없는 것으로 알려져 있지만, 채택률은 여전히 낮다. 소비자 라우터의 경우 현재 AVM과 오픈 소스 라우터 소프트웨어 프로젝트인 OpenWrt, OPNsense, pfSense만이 UPnP의 대안으로 PCP를 지원하는 것으로 알려져 있다. AVM의 Fritz!Box UPnP IGDv2 및 PCP 구현은 도입 이후 매우 버그가 많았으며, 많은 경우 작동하지 않는다.[20][21][22][23][24]
7. 문제점 및 보안 취약성
NAT 트래버설의 해결책 중 하나인 인터넷 게이트웨이 장치 제어 프로토콜(UPnP IGD 프로토콜)은 UPnP를 통해 구현된다. 많은 라우터와 방화벽은 UPnP 제어 지점을 통해 장치의 외부 IP 주소 검색, 포트 매핑 추가 또는 제거 등의 작업을 수행할 수 있도록 한다. 그러나 IGDv1 및 IGDv2 사양의 해석 차이로 인해 호환성 문제가 발생하며, 이는 2001년 Windows XP에 IGDv1 클라이언트가 도입된 이후에도 여전히 존재한다.[19]
UPnP를 라우터 포트 매핑 및 핀홀 제어에만 사용하는 경우, PCP 및 NAT-PMP과 같은 더 간단하고 가벼운 대안 프로토콜이 있다. 하지만 이러한 프로토콜의 채택률은 낮으며, OpenWrt, OPNsense, pfSense 등 일부 오픈 소스 라우터 소프트웨어와 AVM만이 PCP를 지원한다.[20][21][22][23][24]
UPnP 프로토콜은 기본적으로 인증을 구현하지 않아 보안 취약성이 존재한다.[25][26] UPnP 장치 구현은 추가적인 ''장치 보호'' 서비스 또는 ''장치 보안 서비스''를 구현해야 한다. UPnP-UP(Universal Plug and Play - User Profile)라는 비표준 솔루션도 제안되었지만,[27][28] 많은 UPnP 장치 구현에는 인증 메커니즘이 부족하다.[29][30]
인증 메커니즘이 없는 UPnP IGD 프로토콜을 실행하는 라우터 및 방화벽은 공격에 취약하다. 예를 들어, 특정 버전의 어도비 플래시 프로그램은 UPnP IGD 프로토콜을 구현하는 라우터를 악성 웹사이트에서 제어할 수 있는 HTTP 요청을 생성할 수 있다.[31] 이는 UPnP의 "방화벽-구멍-뚫기" 기능에만 적용된다.
2011년, 인터넷에서 UPnP 요청을 허용하는 일부 UPnP IGD 장치 스택의 결함을 악용하는 도구가 개발되어 공개되었다.[32][33] 이 문제는 전 세계적으로 확산되어 수백만 대의 취약한 장치가 발견되었다.[34]
2013년에는 Rapid7에서 6개월간의 연구를 통해 8,100만 개의 IP 주소에서 1,500개 회사의 약 6,900개 제품이 UPnP 요청에 응답하는 것을 확인했다. 이 중 80%는 가정용 라우터였으며, UPnP 프로토콜을 통해 장치에 접근하거나 조작할 수 있는 경우가 많았다. 2013년 2월, UPnP 포럼은 이러한 문제를 방지하기 위해 인증 프로그램을 개선했다.[36]
UPnP는 디지털 홈 네트워크에서 자주 사용되는 멀티캐스트 애플리케이션이기 때문에, 멀티캐스트 네트워크의 잘못된 구성은 UPnP 문제로 나타날 수 있다. IGMP 스누핑이 잘못 구성되면 UPnP/DLNA 장치 검색(SSDP)을 방해하여 UPnP의 안정성이 떨어지는 것처럼 보이게 할 수 있다.
2020년 6월에는 "CallStranger"라는 또 다른 프로토콜 설계 결함이 발표되었다.[37][38] 이 취약점은 공격자가 DDoS 공격, 데이터 유출 등을 수행할 수 있게 한다. OCF는 2020년 4월에 프로토콜 사양을 수정했지만,[39] 많은 장치가 쉽게 업그레이드할 수 없어 CallStranger는 오랫동안 위협으로 남을 가능성이 높다.[40][41]
많은 라우터(특히 가정용)에서 UPnP는 공장 출하 시 활성화되어 있지만, 인증을 요구하지 않아 악성 코드 등에 의해 사이버 공격을 받을 위험이 높아진다.
참조
[1]
웹사이트
What is UPnP (Universal Plug and Play)?
https://phoenixnap.c[...]
2022-01-13
[2]
웹사이트
Using the UPnP Control Point API
https://docs.microso[...]
Microsoft Developer Network
2012-09-14
[3]
웹사이트
UPnP Device Architecture v1.0
http://upnp.org/spec[...]
UPnP Forum
2008-10-15
[4]
웹사이트
UPnP Device Architecture v1.1
https://openconnecti[...]
UPnP Forum
2008-10-15
[5]
웹사이트
UPnP Device Architecture v2.0
https://openconnecti[...]
Open Connectivity Foundation
2020-04-17
[6]
웹사이트
UPnP InternetGatewayDevice v1.0/v2.0
https://openconnecti[...]
UPnP Forum
2010-12-10
[7]
웹사이트
ISO/IEC standard on UPnP device architecture makes networking simple and easy
https://www.iso.org/[...]
International Organization for Standardization
2008-12-10
[8]
웹사이트
UPnP Specifications Named International Standard for Device Interoperability for IP-based Network Devices
http://www.upnp.org/[...]
UPnP Forum
2009-02-05
[9]
웹사이트
Multicast and Unicast UDP HTTP Messages
http://www.upnp.org/[...]
UPnP Forum Technical Committee
2000-10-02
[10]
웹사이트
How Windows Firewall affects the UPnP framework in Windows XP Service Pack 2
http://support.micro[...]
Microsoft
2014-05-23
[11]
웹사이트
UPnP AV Architecture
http://upnp.org/spec[...]
UPnP Forum
2013-03-31
[12]
웹사이트
UPnP Forum Releases Enhanced AV Specifications Taking Home Network to the Next Level
http://www.upnp.org/[...]
UPnP Forum
2006-07-12
[13]
웹사이트
Device Control Protocols
http://upnp.org/inde[...]
UPnP Forum
[14]
웹사이트
DLNA Networked Device Interoperability Guidelines
https://spirespark.c[...]
Digital Living Network Alliance
2014-03-01
[15]
웹사이트
Digital living network alliance (DLNA) home networked device interoperability guidelines - Part 1: Architecture and protocols
https://webstore.iec[...]
International Electrotechnical Commission
2013-10-23
[16]
웹사이트
OpenCable Specifications Home Networking 2.0 - Home Networking Protocol 2.0 Revision 10
http://www.cablelabs[...]
Cable Television Laboratories
2013-05-30
[17]
웹사이트
How DLNA and UPnP will enable easy home video networks
https://www.edn.com/[...]
2005-09-09
[18]
웹사이트
CEA-2014-B (ANSI) - Web-based Protocol and Framework for Remote User Interface on UPnP Networks and the Internet (Web4CE)
http://www.ce.org/St[...]
Consumer Electronics Association
2011-01-01
[19]
웹사이트
Detect FDSSDP as a microsoft client · miniupnp/miniupnp@8381867
https://github.com/m[...]
[20]
문서
12 Fehler in der AVM UPnP IGD- und PCP-Implementation (aller FritzBoxen)
https://pastbin.net/[...]
[21]
웹사이트
UPnP not working with my FRITX!Box
https://forum.syncth[...]
2022-04-12
[22]
웹사이트
UPNP_GetValidIGD returns Temporary IPv6 Address, causing UPNP_AddPinHole to fail with 606 · Issue #600 · miniupnp/miniupnp
https://github.com/m[...]
[23]
웹사이트
upnpc shows wrong duration for port forward longer than 120 seconds · Issue #222 · miniupnp/miniupnp
https://github.com/m[...]
[24]
웹사이트
miniupnp.tuxfamily.org :: View topic - Setting up portforward doesn't work
https://miniupnp.tux[...]
[25]
웹사이트
Device Protection V 1.0
http://upnp.org/spec[...]
UPnP Forum
[26]
웹사이트
Device Security and Security Console V 1.0
http://upnp.org/spec[...]
UPnP Forum
[27]
웹사이트
UPnP-UP - Universal Plug and Play - User Profile
http://www.upnp-up.o[...]
[28]
간행물
A UPnP extension for enabling user authentication and authorization in pervasive systems
2010-11-01
[29]
웹사이트
Shorewall and UPnP
http://www.shorewall[...]
2014-06-04
[30]
웹사이트
Linux UPnP Internet Gateway Device - Documentation - Security
http://linux-igd.sou[...]
[31]
웹사이트
Hacking The Interwebs
http://www.gnucitize[...]
2008-01-12
[32]
웹사이트
UPnP Mapping
https://www.defcon.o[...]
[33]
웹사이트
US-CERT Vulnerability Note VU#357851
http://www.kb.cert.o[...]
CERT Coordination Center
2012-11-30
[34]
웹사이트
Millions of devices vulnerable via UPnP - Update
http://www.h-online.[...]
The H
2013-01-30
[35]
웹사이트
Whitepaper: Security Flaws in Universal Plug and Play: Unplug, Don't Play.
https://community.ra[...]
2013-01-29
[36]
웹사이트
UPnP Forum Responds to Recently Identified LibUPnP/MiniUPnP Security Flaw.
http://upnp.org/news[...]
UPnP Forum
2013-02-08
[37]
웹사이트
CERT/CC Vulnerability Note VU#339275
https://kb.cert.org/[...]
[38]
웹사이트
CallStranger CVE-2020-12695
https://callstranger[...]
2020-06-14
[39]
웹사이트
OCF - UPnP Standards & Architecture
https://openconnecti[...]
[40]
웹사이트
CVE-2020-12695: CallStranger Vulnerability in Universal Plug and Play (UPnP) Puts Billions of Devices at Risk
https://www.tenable.[...]
2020-06-08
[41]
웹사이트
Disable UPnP on Your Wireless Router Already
https://lifehacker.c[...]
2020-06-12
[42]
웹사이트
OCF - UPnP Standards & Architecture
https://openconnecti[...]
2023-09-27
[43]
간행물
UPnP 1.1 - designing for performance & compatibility
2005-02
[44]
웹사이트
UPnP Forum Gateway Working Committee: IGD:2 Improvements over IGD:1
http://www.upnp.org/[...]
UPnP Forum
2009-03-10
[45]
간행물
RFC 6886: NAT Port Mapping Protocol (NAT-PMP)
https://tools.ietf.o[...]
Internet Engineering Task Force
2013-04
[46]
웹사이트
WFA WLANConfig Service 1.0 Service Template Version 1.01
https://www.wi-fi.or[...]
2006-01
[47]
웹사이트
Wi-Fi Protected Setup Specification Version 2.0.8
https://www.wi-fi.or[...]
본 사이트는 AI가 위키백과와 뉴스 기사,정부 간행물,학술 논문등을 바탕으로 정보를 가공하여 제공하는 백과사전형 서비스입니다.
모든 문서는 AI에 의해 자동 생성되며, CC BY-SA 4.0 라이선스에 따라 이용할 수 있습니다.
하지만, 위키백과나 뉴스 기사 자체에 오류, 부정확한 정보, 또는 가짜 뉴스가 포함될 수 있으며, AI는 이러한 내용을 완벽하게 걸러내지 못할 수 있습니다.
따라서 제공되는 정보에 일부 오류나 편향이 있을 수 있으므로, 중요한 정보는 반드시 다른 출처를 통해 교차 검증하시기 바랍니다.
문의하기 : help@durumis.com