CVE-2026-84270 Gvfs: mtp: out-of-bounds read in do_read()
Description
A flaw was found in the MTP backend in gvfs. When reading a file from a mounted MTP device, do_read() in gvfsbackendmtp.c trusts the data length returned by the device without limiting it to the original size requested by the client. If a malicious MTP device responds with more bytes than requested, this unrestricted length is passed directly to memcpy(). This causes the operation to read memory outside the intended boundaries. This allows an attacker who plugs in a malicious MTP device to cause a segmentation fault when a file is read and crash the gvfsd-mtp process, resulting in a denial of service.
CVSS 3.1 detail
Vector CVSS:3.1/AV:P/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:HExploitable with physical access to the machine, without an account and if a user takes an action; an attacker can seriously compromise confidentiality, integrity or availability.
- Attack vector
- Physical
- Attack complexity
- Low
- Privileges required
- None
- Interaction
- Required
- Scope
- Unchanged
- Confidentiality
- None
- Integrity
- None
- Availability
- High
Affected products and versions
| Product | Affected versions | Fixed in |
|---|---|---|
| Red Hat Enterprise Linux 10 | Versions not published | |
| Red Hat Enterprise Linux 6 | Versions not published | |
| Red Hat Enterprise Linux 7 | Versions not published | |
| Red Hat Enterprise Linux 8 | Versions not published | |
| Red Hat Enterprise Linux 9 | Versions not published | |
| gvfs 1.60 | earliest → < 1.60.2 | 1.60.2 |
References
- access.redhat.com access.redhat.com
- RHBZ#2526794 bugzilla.redhat.com
- gitlab.gnome.org gitlab.gnome.org
Timeline
- Published
- Last modified