What Is Adobe Flash Player?
Adobe Flash Player is the browser plugin and standalone runtime for Adobe Flash — the platform that dominated rich web content, animation, and games from the late 1990s through the 2010s. Flash Player was installed on over a billion devices at its peak and was the universal target for browser-based exploitation. Flash's complex ActionScript virtual machine and multimedia handling code have been a persistent source of critical memory safety vulnerabilities throughout Flash's history. Adobe retired Flash Player on December 31, 2020, and blocked Flash content from running in all major browsers. Systems still running Flash Player after end-of-life face unpatched vulnerabilities without any path to remediation.
Overview
CVE-2016-7855 is a use-after-free vulnerability in Adobe Flash Player that allows remote code execution when a user visits a web page or opens content containing a malicious Flash file. Adobe issued APSB16-37 as an emergency out-of-band patch on October 26, 2016, acknowledging that CVE-2016-7855 was being actively exploited in the wild in targeted attacks. The out-of-cycle release — outside Adobe's normal monthly patching schedule — reflects the severity and confirmed exploitation status of this zero-day. Adobe Flash Player is now end-of-life; any remaining Flash Player installations are permanently vulnerable to this and many other unpatched flaws. CISA added CVE-2016-7855 to the KEV catalog in March 2022.
Affected Versions
| Adobe Flash Player | Status |
|---|---|
| Flash Player 23.0.0.162 and earlier (Windows, macOS) | Vulnerable |
| Flash Player 23.0.0.162 and earlier (Linux) | Vulnerable |
| Flash Player 23.0.0.185 | Fixed |
| Flash Player (all versions, post-EOL) | Permanently vulnerable — no further patches |
Adobe Flash Player reached end-of-life December 31, 2020. No further security patches will be released.
Technical Details
Root Cause: Flash ActionScript Use-After-Free
CVE-2016-7855 is a use-after-free (CWE-416) in Adobe Flash Player's ActionScript virtual machine or multimedia handling code. Flash Player manages a large number of ActionScript objects (display objects, event listeners, bitmaps, video objects, text fields) through reference counting and a garbage collector. A use-after-free occurs when Flash retains a pointer to an ActionScript object after the object's memory has been freed — accessing the stale pointer provides an attacker with the ability to read freed memory containing attacker-controlled data or to corrupt the heap.
Flash UAF exploitation pattern:
- Attacker creates a specially crafted .swf file — ActionScript code that manipulates object lifetimes to trigger the UAF condition
- Flash Player processes the SWF — the ActionScript VM frees an object while retaining a live reference to it
- Heap spray fills freed memory — attacker's JavaScript/ActionScript sprays crafted data into heap memory to fill the freed slot with controlled content
- Controlled data at freed location — when Flash accesses the stale pointer, it reads attacker-controlled data (method table pointer, function pointer)
- Code execution — the attacker-controlled method pointer redirects Flash execution to shellcode
Emergency Out-of-Band Patch
Adobe's release of APSB16-37 on October 26, 2016 — between normal monthly patch cycles — confirms CVE-2016-7855 was an actively exploited zero-day:
- Adobe's standard patch schedule aligned with Microsoft's Patch Tuesday
- Emergency patches outside this schedule are reserved for actively exploited critical vulnerabilities
- Adobe acknowledged in APSB16-37 that "Adobe is aware of a report that an exploit for CVE-2016-7855 exists in the wild, and is being used in limited, targeted attacks"
Attack Characteristics
| Attribute | Detail |
|---|---|
| Attack Vector | Network — malicious web page or email with embedded Flash |
| User Interaction | Required — user views Flash content |
| Authentication | None required |
| Zero-Day Status | Exploited before patch (emergency release) |
| EOL Status | Flash Player is permanently end-of-life |
Discovery
CVE-2016-7855 was discovered through threat intelligence analysis of active exploitation, likely by a Flash security researcher or threat intelligence team. Adobe credited the discovery to Adobe security researchers and/or external reporters in APSB16-37.
Exploitation Context
- Targeted attacks before the patch: Adobe's acknowledgment of "limited, targeted attacks" using CVE-2016-7855 as a zero-day indicates a nation-state or sophisticated threat actor used this exploit in operations before Adobe could patch it; zero-day Flash exploits were valuable intelligence collection tools in 2016
- 2016 as peak Flash exploitation year: 2016 saw multiple Flash Player zero-days and emergency patches (APSB16-15, APSB16-18, APSB16-29, APSB16-37) reflecting intense nation-state and criminal focus on Flash exploitation — Flash was the most-targeted browser component of its era
- Exploit kit delivery: Flash UAFs were routinely incorporated into exploit kits (Angler, Magnitude, Neutrino) for mass criminal exploitation via malvertising campaigns; CVE-2016-7855 would have been adopted rapidly for kit use following APSB16-37
- Flash EOL and persistent risk: Adobe Flash Player is permanently end-of-life; any system still running Flash Player cannot be made safe; CISA's KEV required action for CVE-2016-7855 is: "The impacted product is end-of-life and should be disconnected if still in use"
Remediation
-
Remove Adobe Flash Player immediately — Flash Player reached end-of-life December 31, 2020 and receives no further security patches. Uninstall Flash Player from all systems using the Adobe Flash Player uninstaller or Windows Add/Remove Programs.
-
Verify Flash is blocked in browsers — all major browsers have blocked Flash by default since 2020. Confirm Flash content is blocked: Chrome → chrome://settings/content/flash, Firefox → Add-ons → Plugins. No browser should have Flash enabled.
-
Audit for Flash-dependent applications — identify any internal web applications or business processes that still require Flash Player; migrate these to HTML5, modern web technologies, or replace the application.
-
Block Flash at the network perimeter — configure web proxy or firewall rules to block .swf file downloads if Flash is no longer used, preventing any inadvertent Flash content loading.
-
Remove Flash from embedded systems — industrial HMI systems, kiosks, and embedded devices that run Flash are permanently vulnerable; replace or isolate these systems.
Key Details
| Property | Value |
|---|---|
| CVE ID | CVE-2016-7855 |
| Vendor / Product | Adobe — Flash Player |
| NVD Published | 2016-11-01 |
| NVD Last Modified | 2025-10-22 |
| CVSS 3.1 Score | 8.8 |
| CVSS 3.1 Vector | CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H |
| Severity | HIGH |
| CWE | CWE-416 — Use After Free find similar ↗ |
| CISA KEV Added | 2022-03-03 |
| CISA KEV Deadline | 2022-03-24 |
| Known Ransomware Use | No |
CVSS 3.1 Breakdown
Required Action
Timeline
| Date | Event |
|---|---|
| 2016-10-26 | Adobe releases emergency security bulletin APSB16-37 patching CVE-2016-7855 as an actively exploited zero-day |
| 2016-11-01 | CVE-2016-7855 published by NVD |
| 2022-03-03 | Added to CISA Known Exploited Vulnerabilities catalog |
| 2022-03-24 | CISA BOD 22-01 remediation deadline |
References
| Resource | Type |
|---|---|
| NVD — CVE-2016-7855 | Vulnerability Database |
| CISA KEV Catalog Entry | US Government |
| Adobe Security Bulletin APSB16-37 — Hotfix for Flash Player (October 2016) | Vendor Advisory |