---
id: CVE-2025-37891
title: |-
  In the Linux kernel, the following vulnerability has been resolved:

  ALSA: ump: Fix buffer overflow at UMP SysEx message conversion

  The conversion function from MIDI 1.0 to UMP packet contains an
  internal buffer to keep the incoming MID…
summary: |-
  In the Linux kernel, the following vulnerability has been resolved:

  ALSA: ump: Fix buffer overflow at UMP SysEx message conversion

  The conversion function from MIDI 1.0 to UMP packet contains an
  internal buffer to keep the incoming MID…
severity: high
cvss: 7.8
cvssVector: 'CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H'
cwe:
  - CWE-120
vendor: linux
product: linux_kernel
affected:
  - 'linux_kernel >= 6.5, < 6.6.90'
  - 'linux_kernel >= 6.7, < 6.12.28'
  - 'linux_kernel >= 6.13, < 6.14.6'
  - linux_kernel = 6.15
patched:
  - linux_kernel 6.14.6
published: '2025-05-19'
updated: '2026-10-15'
sourceUpdated: '2026-10-15T22:18:20.240'
source: NVD
sourceUrl: 'https://nvd.nist.gov/vuln/detail/CVE-2025-37891'
references:
  - url: 'https://git.kernel.org/stable/c/226beac5605afbb33f8782148d188b64396145a4'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/42ef48dd4ebb082a1a90b5c3feeda2e68a9e32fe'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/56f1f30e6795b890463d9b20b11e576adf5a2f77'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/ce4f77bef276e7d2eb7ab03a5d08bcbaa40710ec'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
tags:
  - nvd
  - cve.org
epss: 0.00245
epssPercentile: 0.15692
ssvc:
  exploitation: none
  automatable: 'no'
  technicalImpact: total
  timestamp: '2026-10-15T21:45:48.474769Z'
ingestedAt: '2026-10-15T22:48:25.483Z'
---

## Overview

In the Linux kernel, the following vulnerability has been resolved:

ALSA: ump: Fix buffer overflow at UMP SysEx message conversion

The conversion function from MIDI 1.0 to UMP packet contains an
internal buffer to keep the incoming MIDI bytes, and its size is 4, as
it was supposed to be the max size for a MIDI1 UMP packet data.
However, the implementation overlooked that SysEx is handled in a
different format, and it can be up to 6 bytes, as found in
do_convert_to_ump().  It leads eventually to a buffer overflow, and
may corrupt the memory when a longer SysEx message is received.

The fix is simply to extend the buffer size to 6 to fit with the SysEx
UMP message.

## Affected

- `linux_kernel >= 6.5, < 6.6.90`
- `linux_kernel >= 6.7, < 6.12.28`
- `linux_kernel >= 6.13, < 6.14.6`
- `linux_kernel = 6.15`

## Remediation

Upgrade past the affected range:

- `linux_kernel 6.14.6`
