Skip to content
Heist/ feed
Back to feed
Medium

FFmpeg through 9.0.2 Stack Exhaustion via Recursive Free of pssh Boxes

Type: advisorySources: OSV

FFmpeg through 9.0.2 contains a stack exhaustion vulnerability in av_encryption_init_info_free() in libavutil/encryption_info.c, which recursively frees AVEncryptionInitInfo linked lists built by the MOV demuxer's mov_read_pssh(). Attackers can supply a crafted MP4 file with tens of thousands of small pssh boxes to exhaust the stack and crash the process, while also causing quadratic CPU consumption.

Products
Not specified
Affected versions
Not specified
Fixed versions
Not specified
CVEs
CVE-2026-107678
Confirmed fixed CVEs
Not specified
Updated in this feed
6 Nov 2026, 02:40 UTC · Revision 1

Source evidence

FFmpeg through 9.0.2 Stack Exhaustion via Recursive Free of pssh Boxes

core-osv · Original source

Published 8 Oct 2026, 15:28 UTC

FFmpeg through 9.0.2 contains a stack exhaustion vulnerability in av_encryption_init_info_free() in libavutil/encryption_info.c, which recursively frees AVEncryptionInitInfo linked lists built by the MOV demuxer's mov_read_pssh(). Attackers can supply a crafted MP4 file with tens of thousands of small pssh boxes to exhaust the stack and crash the process, while also causing quadratic CPU consumption.

osv:CVE-2026-107678
Complete source record
{
  "id": "d40885d4e93349984b2dded7fe782caf05a07e74c0a893a8be1e103d5f293aa4",
  "url": "https://osv.dev/vulnerability/CVE-2026-107678",
  "method": "structured",
  "payload": {
    "kind": "advisory",
    "title": "FFmpeg through 9.0.2 Stack Exhaustion via Recursive Free of pssh Boxes",
    "summary": "FFmpeg through 9.0.2 contains a stack exhaustion vulnerability in av_encryption_init_info_free() in libavutil/encryption_info.c, which recursively frees AVEncryptionInitInfo linked lists built by the MOV demuxer's mov_read_pssh(). Attackers can supply a crafted MP4 file with tens of thousands of small pssh boxes to exhaust the stack and crash the process, while also causing quadratic CPU consumption.",
    "evidence": "osv:CVE-2026-107678",
    "products": [],
    "severity": "medium",
    "structured": {
      "id": "CVE-2026-107678",
      "aliases": [
        "CVE-2026-107678"
      ],
      "metrics": [
        {
          "type": "CVSS_V4",
          "score": "CVSS:4.0/AV:L/AC:H/AT:P/PR:N/UI:P/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N"
        }
      ],
      "affected": [
        {
          "ranges": [
            {
              "repo": "https://git.ffmpeg.org/ffmpeg.git",
              "type": "GIT",
              "events": [
                {
                  "introduced": "0"
                },
                {
                  "last_affected": "946fcce07b6dcd0331c8cc609192aeff5e1924f8"
                }
              ],
              "database_specific": {
                "extracted_events": [
                  {
                    "cpe": "cpe:2.3:a:ffmpeg:ffmpeg:*:*:*:*:*:*:*:*",
                    "range": [
                      {
                        "introduced": "0"
                      },
                      {
                        "last_affected": "9.0.2"
                      }
                    ],
                    "source": "CPE_RANGE"
                  }
                ]
              }
            },
            {
              "repo": "https://github.com/ffmpeg/ffmpeg",
              "type": "GIT",
              "events": [
                {
                  "introduced": "0"
                },
                {
                  "last_affected": "946fcce07b6dcd0331c8cc609192aeff5e1924f8"
                }
              ],
              "database_specific": {
                "extracted_events": [
                  {
                    "range": [
                      {
                        "introduced": "0"
                      },
                      {
                        "last_affected": "9.0.2"
                      }
                    ],
                    "source": "AFFECTED_FIELD",
                    "strategy": "StandardRange"
                  },
                  {
                    "cpe": "cpe:2.3:a:ffmpeg:ffmpeg:*:*:*:*:*:*:*:*",
                    "range": [
                      {
                        "introduced": "0"
                      },
                      {
                        "last_affected": "9.0.2"
                      }
                    ],
                    "source": "CPE_RANGE"
                  }
                ]
              }
            }
          ],
          "versions": [
            "n9.0.2",
            "n9.0.1",
            "n9.0",
            "n8.2-dev",
            "n8.1-dev",
            "n7.2-dev",
            "n7.1-dev",
            "n6.2-dev",
            "n6.1-dev",
            "n5.2-dev",
            "n5.1-dev",
            "n4.5-dev",
            "n4.4-dev",
            "n4.3-dev",
            "n4.2-dev",
            "n4.1-dev",
            "n3.5-dev",
            "n3.4-dev",
            "n3.3-dev",
            "n3.2-dev",
            "n3.1-dev",
            "n2.9-dev",
            "n2.8-dev",
            "n2.7-dev",
            "n2.6-dev",
            "n2.5-dev",
            "n2.4-dev",
            "n2.3-dev",
            "n2.2-dev",
            "n2.0",
            "n2.1-dev",
            "n1.3-dev",
            "n1.2-dev",
            "n1.1-dev",
            "n0.12-dev",
            "n0.11-dev",
            "n0.8",
            "N"
          ],
          "database_specific": {
            "source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-107678.json"
          }
        }
      ],
      "modified": "2026-10-28T02:30:46.183572934Z",
      "provider": "osv",
      "references": [
        "https://code.ffmpeg.org/FFmpeg/FFmpeg",
        "https://ffmpeg.org/",
        "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/107xxx/CVE-2026-107678.json",
        "https://nvd.nist.gov/vuln/detail/CVE-2026-107678",
        "https://www.vulncheck.com/advisories/ffmpeg-through-9.0.2-stack-exhaustion-via-recursive-free-of-pssh-boxes",
        "https://code.ffmpeg.org/FFmpeg/FFmpeg/pulls/24593",
        "https://github.com/FFmpeg/FFmpeg/blob/n9.0.2/libavformat/mov.c#L8070",
        "https://github.com/FFmpeg/FFmpeg/blob/n9.0.2/libavutil/encryption_info.c#L219-L231"
      ],
      "provider_metadata": {
        "cwe_ids": [
          "CWE-674"
        ],
        "cna_assigner": "VulnCheck",
        "osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/107xxx/CVE-2026-107678.json"
      }
    },
    "related_cves": [
      {
        "value": "CVE-2026-107678",
        "evidence": "/id"
      }
    ],
    "security_relevant": true,
    "severity_evidence": "/severity/0/score"
  },
  "source_id": "core-osv",
  "document_id": 514363,
  "published_at": "2026-10-08T15:28:43.274+00:00"
}