cbcvebase.
CVE-2016-0998
published 2016-03-12

CVE-2016-0998: Use-after-free vulnerability in Adobe Flash Player before 18.0.0.333 and 19.x through 21.x before 21.0.0.182 on Windows and OS X and before 11.2.202.577 on…

PriorityP270high8.8CVSS 3.1
AVNACLPRNUIRSUCHIHAH
EXPLOIT
EPSS
28.33%
98.1th percentile
Use-after-free vulnerability in Adobe Flash Player before 18.0.0.333 and 19.x through 21.x before 21.0.0.182 on Windows and OS X and before 11.2.202.577 on Linux, Adobe AIR before 21.0.0.176, Adobe AIR SDK before 21.0.0.176, and Adobe AIR SDK & Compiler before 21.0.0.176 allows attackers to execute arbitrary code via unspecified vectors, a different vulnerability than CVE-2016-0987, CVE-2016-0988, CVE-2016-0990, CVE-2016-0991, CVE-2016-0994, CVE-2016-0995, CVE-2016-0996, CVE-2016-0997, CVE-2016-0999, and CVE-2016-1000.

Affected

8 ranges
VendorProductVersion rangeFixed in
adobeair<= 20.0.0.233—
adobeair_desktop_runtime<= 20.0.0.260—
adobeair_sdk<= 20.0.0.260—
adobeair_sdk_compiler<= 20.0.0.260—
adobeflash_player<= 20.0.0.306—
adobeflash_player<= 11.2.202.569—
adobeflash_player_desktop_runtime<= 20.2.2.306—
samsungx14j_firmware——

Detection & IOCsextracted from sources · hover to see the quote

urlhttps://gitlab.com/exploit-database/exploitdb-bin-sploits/-/raw/main/bin-sploits/39612.zip↗
urlhttps://gitlab.com/exploit-database/exploitdb-bin-sploits/-/raw/main/bin-sploits/39631.zip↗
filenamecrasher2.swf↗
  • →Detect ActionScript execution of Object.unwatch() with zero parameters — the vulnerability is triggered by calling o.unwatch() on an empty object with no arguments, causing alloca(0) and an uninitialized stack parameter access. ↗
  • →Monitor for SWF files loaded with query parameters manipulating stack layout (e.g., ?num=<0-31>), which is a technique used in the PoC to shift the stack and trigger crashes across different browsers. ↗
  • →The root cause is the unwatch() method calling toString on args[0] before checking that args_size >= 1; detection logic should flag Flash content invoking unwatch() on objects without parameters in ActionScript 2 contexts. ↗
  • ·The vulnerability is specifically in the ActionScript 2 use-after-free fix introduced in the December 2015 Flash bulletin (APSB15-32); the uninitialized variable was introduced by Adobe's own patch, meaning patched-but-still-vulnerable versions exist between the December 2015 and March 2016 bulletins. ↗
  • ·The PoC is described as 'finicky' and requires a specific two-step load sequence (crasher2.swf?num=15 followed immediately by crasher2.swf?num=4) to reliably trigger the crash; real-world exploitation reliability may vary by browser and stack state. ↗

CVSS provenance

nvdv3.18.8HIGHCVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H
nvdv2.09.3CRITICALAV:N/AC:M/Au:N/C:C/I:C/A:C
osv8.8HIGH
vendor_redhat8.8HIGH
CVEs like this are exactly what “Exploited This Week” covers.

Every Monday: what got weaponized or added to CISA KEV in the last seven days — each CVE cross-linked to its PoC, Nuclei template, and detection rule. Free, one email a week, unsubscribe in one click.