543 Vulnerabilities in FFmpeg: Hunting Flaws in the Industry Standard
FFmpeg serves as the industrial standard for mobile applications handling audio and video, parsing containers such as MP4, MOV, AVI, and RTSP into individual streams. The library ships with roughly 543 registered CVEs, many of which appear in bug bounty scopes.
Scope of the Problem
According to the Quokka “State of Mobile App Security 2026” report covering more than 150,000 applications, critical CVEs in third-party components affect 11% of Android and 13% of iOS apps. High-severity vulnerabilities appear in 65% of Android applications. While FFmpeg is not the only affected framework, it consistently ranks among the leaders.
Selected CVEs
PixelSmash (CVE-2026-8461), disclosed by JFrog in June 2026, is a heap out-of-bounds write in the MagicYUV decoder (libavcodec/magicyuv.c) that leads to full RCE. When slice_height is odd, the decoder writes extra pixel rows beyond the allocated buffer, corrupting the adjacent AVBuffer structure and redirecting its free pointer to system().
HTTP chunked overflow (CVE-2016-10190), rated CVSS 9.8, resides in libavformat/http.c. A malicious server sends a negative chunk size that bypasses size checks and causes recv() to write an enormous amount of data, overwriting the read_packet pointer inside AVIOContext and achieving RCE.
The AV1 RTP depacketizer vulnerability (DFVULN-127) discovered by the depthfirst agent in 2026 allows RCE with a single 183-byte RTP packet. Manipulation of the pktpos variable in libavformat/rtpdec_av1.c leads to an out-of-bounds write inside av_grow_packet, again hijacking an AVBuffer free pointer.
Locating FFmpeg in APKs
After unpacking with apktool, analysts search ABI directories for version strings:
- find . -iname "*.so" | xargs -I{} sh -c 'strings {} 2>/dev/null | grep -q "FFmpeg version" && echo {}'
Four common integration patterns exist: static linking inside an SDK library, dynamic linking of separate libavcodec.so and libavformat.so files, Java/Kotlin wrappers such as mobile-ffmpeg, and CLI binaries executed via Runtime.exec().
Version Identification and Build Configuration
Version information is embedded as plain text. The string “FFmpeg version” or the Lavc marker (e.g., Lavc56.60.100) reveals the exact release. NDK toolchain dates provide a rough age indicator when version strings are stripped. The full configure line listing enabled decoders, demuxers, and protocols can be recovered with strings or by enumerating exported symbols ending in _demuxer and _decoder.
Protocol handlers are high-value targets because exploitation requires only control of the URL passed to avformat_open_input().
Related articles
Security Week 2644: Active Exploitation of PHP2Shell Vulnerabilities Confirmed
PHP developers released patches for two critical vulnerabilities collectively known as PHP2Shell on October 20, affecting PHP 8.2 through 8.5 as well as older branches. The flaws allow unauthenticated remote code execution on affected servers, which power approximately 70 percent of websites. Despite expectations of immediate exploitation, confirmed attacks with working exploits only began on October 25. CrowdStrike noted technical difficulties in weaponizing the issues in real-world environments. Only one-fifth of top Russian websites had applied the fixes by October 25. Additional incidents included compromised eMudhra certificates, a critical GitLab flaw, and a 16-year-old Broadcom router vulnerability.
Positive Technologies Offers Up to 500,000 Rubles for Bypassing PT Application Firewall
Positive Technologies has expanded its Standoff Bug Bounty program to include rewards for bypassing its web application firewalls. Researchers can earn between 150,000 and 500,000 rubles for demonstrating practical bypasses against PT Application Firewall PRO and PT Application Firewall Cloud. The program targets the core protective mechanisms, including traffic filtering, attack detection rules, and the management layer used by administrators. Submissions must include reproducible attack scenarios that show how malicious requests can pass through undetected, rather than relying on scanner reports or theoretical findings. Reward amounts vary by severity and confirmed business impact, with critical issues in the PRO version paying up to 500,000 rubles. The company plans to use validated findings to strengthen detection rules and improve overall product resilience.
Tailscale SSH Vulnerability Allows Root Access via Unix Socket Redirection
A researcher identified flaws in Tailscale that let an attacker with existing SSH access on one node escalate to root privileges and move laterally across the network. Erica Windisch of Cyberdione Labs demonstrated the issues in lab conditions against Tailscale 1.104.2 and Headscale 0.29.5. The core problem stems from privileged operations performed by the tailscaled process when handling Unix socket redirection, granting an ordinary SSH session access to root-only resources. The researcher used the technique to interact with Docker and run elevated commands, and showed that broad access policies allow automated lateral movement in under a second. Additional issues include denial-of-service conditions and bypasses of certain restrictions. Recommendations include reviewing SSH policies and disabling unnecessary socket redirection, noting that Headscale 0.29.5 lacks an independent way to turn the feature off.
Critical CVE-2026-111497 Out-of-Bounds Write Flaw in Google Brotli Decoder Impacts Broad Range of Environments
A severe vulnerability has been identified in the Google-developed Brotli decoder used for decompressing data in web communications and other applications. The flaw, tracked as CVE-2026-111497, allows out-of-bounds writes when processing specially crafted compressed data, potentially enabling arbitrary code execution, information disclosure, or denial of service. It carries a CVSS v4.0 base score of 9.2 and is rated Critical. Google has released patched versions 1.2.1, 1.1.1, and 1.0.10 of the library. Node.js incorporated the fix in its updates, while Microsoft issued an out-of-band patch for .NET on October 25, 2026, to address the issue. The vulnerability affects any environment relying on the Brotli C implementation for data decompression.