CVE-2015-8872
The set_fat function in fat.c in dosfstools before 4.0 might allow attackers to corrupt a FAT12...
The set_fat function in fat.c in dosfstools before 4.0 might allow attackers to corrupt a FAT12 filesystem or cause a denial of service (invalid memory read and crash) by writing an odd number of clusters to the third to last entry on a FAT12 filesystem, which triggers an "off-by-two error."
Attack profile
How easy it is to exploit
- Attack vector
- Local
- Complexity
- Low
- Privileges needed
- None
- User interaction
- None
What an attacker can affect
- Confidentiality
- None
- Integrity
- None
- Availability
- High
Exploit likelihood
What each source reports
NVD Score used
6.2
The set_fat function in fat.c in dosfstools before 4.0 might allow attackers to corrupt a FAT12 filesystem or cause a denial of service (invalid memory read and crash) by writing an odd number of clusters to the third to last entry on a FAT12 filesystem, which triggers an "off-by-two error."
- Record
CVE-2015-8872- CVSS 3.0
- 6.2 Medium
CVSS:3.0/AV:L/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H - CVSS 2.0
- 2.1 Low
AV:L/AC:L/Au:N/C:N/I:N/A:P - Weakness
- CWE-189
- Updated
- 2026-11-02
CVE List No score
The set_fat function in fat.c in dosfstools before 4.0 might allow attackers to corrupt a FAT12 filesystem or cause a denial of service (invalid memory read and crash) by writing an odd number of clusters to the third to last entry on a FAT12 filesystem, which triggers an "off-by-two error."
- Record
CVE-2015-8872- Updated
- 2026-11-02
EUVDEUVD-2015-8728 No score
The set_fat function in fat.c in dosfstools before 4.0 might allow attackers to corrupt a FAT12 filesystem or cause a denial of service (invalid memory read and crash) by writing an odd number of clusters to the third to last entry on a FAT12 filesystem, which triggers an "off-by-two error."
- Record
EUVD-2015-8728- Updated
- 2026-11-03
GitHub AdvisoriesGHSA-2vww-49j7-chwm
6.2
The set_fat function in fat.c in dosfstools before 4.0 might allow attackers to corrupt a FAT12...
The set_fat function in fat.c in dosfstools before 4.0 might allow attackers to corrupt a FAT12 filesystem or cause a denial of service (invalid memory read and crash) by writing an odd number of clusters to the third to last entry on a FAT12 filesystem, which triggers an "off-by-two error."
- Record
GHSA-2vww-49j7-chwm- CVSS 3.0
- 6.2 Medium
CVSS:3.0/AV:L/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H - Updated
- 2026-11-02
OSV
6.2
The set_fat function in fat.c in dosfstools before 4.0 might allow attackers to corrupt a FAT12 filesystem or cause a denial of service (invalid memory read and crash) by writing an odd number of clusters to the third to last entry on a FAT12 filesystem, which triggers an "off-by-two error."
- Record
CVE-2015-8872- CVSS 3.0
- 6.2 Medium
CVSS:3.0/AV:L/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H - Updated
- 2026-11-02
OSVDEBIAN-CVE-2015-8872
6.2
The set_fat function in fat.c in dosfstools before 4.0 might allow attackers to corrupt a FAT12 filesystem or cause a denial of service (invalid memory read and crash) by writing an odd number of clusters to the third to last entry on a FAT12 filesystem, which triggers an "off-by-two error."
- Record
DEBIAN-CVE-2015-8872- CVSS 3.0
- 6.2 Medium
CVSS:3.0/AV:L/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H - Updated
- 2026-11-02
Show 5 moreShow less
OSVUBUNTU-CVE-2015-8872
6.2
The set_fat function in fat.c in dosfstools before 4.0 might allow attackers to corrupt a FAT12 filesystem or cause a denial of service (invalid memory read and crash) by writing an odd number of clusters to the third to last entry on a FAT12 filesystem, which triggers an "off-by-two error."
- Record
UBUNTU-CVE-2015-8872- CVSS 3.0
- 6.2 Medium
CVSS:3.0/AV:L/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H - Updated
- 2026-11-02
OSVMGASA-2016-0184 No score
Updated dosfstools packages fix security vulnerabilities
Updated dosfstools package fixes security vulnerabilities:
In dosfstools before 4.0, if the third to last entry was written on a FAT12 filesystem with an odd number of clusters, the second to last entry would be corrupted. This corruption may also lead to invalid memory accesses when the corrupted entry becomes out of bounds and is used later (CVE-2015-8872).
In dosfstools before 4.0, the variable used for storing the FAT size (in bytes) was an unsigned int. Since the size in sectors read from the BPB was not sufficiently checked, this could end up being zero after multiplying it with the sector size while some offsets still stayed excessive. Ultimately it would cause segfaults when accessing FAT entries for which no memory was allocated (CVE-2016-4804).
- Record
MGASA-2016-0184- Updated
- 2026-11-02
OSVSUSE-SU-2016:2145-1 No score
Security update for dosfstools
dosfstools was updated to fix two security issues.
These security issues were fixed:
- CVE-2015-8872: The set_fat function in fat.c in dosfstools might have allowed attackers to corrupt a FAT12 filesystem or cause a denial of service (invalid memory read and crash) by writing an odd number of clusters to the third to last entry on a FAT12 filesystem, which triggers an 'off-by-two error (bsc#980364).
- CVE-2016-4804: The read_boot function in boot.c in dosfstools allowed attackers to cause a denial of service (crash) via a crafted filesystem, which triggers a heap-based buffer overflow in the (1) read_fat function or an out-of-bounds heap read in (2) get_fat function (bsc#980377).
This non-security issue was fixed:
- bsc#912607: Attempt to rename root dir in fsck due to uninitialized fields.
- Record
SUSE-SU-2016:2145-1- Updated
- 2026-11-02
OSVSUSE-SU-2016:2146-1 No score
Security update for dosfstools
dosfstools was updated to fix two security issues.
These security issues were fixed:
- CVE-2015-8872: The set_fat function in fat.c in dosfstools might have allowed attackers to corrupt a FAT12 filesystem or cause a denial of service (invalid memory read and crash) by writing an odd number of clusters to the third to last entry on a FAT12 filesystem, which triggers an 'off-by-two error (bsc#980364).
- CVE-2016-4804: The read_boot function in boot.c in dosfstools allowed attackers to cause a denial of service (crash) via a crafted filesystem, which triggers a heap-based buffer overflow in the (1) read_fat function or an out-of-bounds heap read in (2) get_fat function (bsc#980377).
- Record
SUSE-SU-2016:2146-1- Updated
- 2026-11-02
OSVUSN-2986-1 No score
dosfstools vulnerabilities
Hanno Böck discovered that dosfstools incorrectly handled certain malformed filesystems. A local attacker could use this issue to cause dosfstools to crash, resulting in a denial of service, or possibly execute arbitrary code.
- Record
USN-2986-1- Updated
- 2026-11-02
Affected products
Affected packages
| Package | Affected | Fixed |
|---|---|---|
dosfstoolsDebian:12 |
before 4.0-1 | 4.0-1 |
dosfstoolsDebian:13 |
before 4.0-1 | 4.0-1 |
dosfstoolsDebian:14 |
before 4.0-1 | 4.0-1 |
dosfstoolsDebian:8 |
before 3.0.27-1+deb8u1, plus listed versions 3.0.27-1 |
3.0.27-1+deb8u1 |
dosfstoolsDebian:7 |
before 3.0.13-1+deb7u1, plus listed versions 3.0.13-1 |
3.0.13-1+deb7u1 |
dosfstoolsMageia:5 |
before 3.0.27-1.1.mga5 | 3.0.27-1.1.mga5 |
dosfstoolsSUSE:Linux Enterprise Desktop 12 SP1 |
before 3.0.26-6.5 | 3.0.26-6.5 |
dosfstoolsSUSE:Linux Enterprise Server 12 SP1 |
before 3.0.26-6.5 | 3.0.26-6.5 |
dosfstoolsSUSE:Linux Enterprise Server for SAP Applications 12 SP1 |
before 3.0.26-6.5 | 3.0.26-6.5 |
dosfstoolsSUSE:Linux Enterprise Server 11 SP4 |
before 3.0.26-3.1 | 3.0.26-3.1 |
dosfstoolsSUSE:Linux Enterprise Server for SAP Applications 11 SP4 |
before 3.0.26-3.1 | 3.0.26-3.1 |
dosfstoolsUbuntu:14.04:LTS |
before 3.0.26-1ubuntu0.1, plus listed versions 3.0.16-2ubuntu23.0.24-13.0.25-13.0.26-1 |
3.0.26-1ubuntu0.1 |
dosfstoolsUbuntu:16.04:LTS |
before 3.0.28-2ubuntu0.1, plus listed versions 3.0.28-13.0.28-2 |
3.0.28-2ubuntu0.1 |
History
| Recorded | Changed | Sources |
|---|---|---|
| aliases | EUVD | |
| first indexed | CVE List, GitHub Advisories, NVD, OSV |
Dates are when Every CVE recorded each change. Upstream dates may differ.
In short
CVE-2015-8872 is a medium vulnerability (CVSS 6.2) in Dosfstools Project Dosfstools, published December 31, 2015. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 0.42%, the 36th percentile. Fixed in dosfstools 4.0-1.
References
lists.opensuse.org/opensuse-updates/2016-06/msg00001.html
github.com/dosfstools/dosfstools/releases/tag/v4.0
github.com/dosfstools/dosfstools/issues/12
blog.fuzzing-project.org/44-dosfstools-fsck.vfat-Several-invalid-memory-accesses.html
ubuntu.com/usn/USN-2986-1
github.com/dosfstools/dosfstools/commit/07908124838afcc99c577d1d3e84cef2dbd39cb7
Show 20 moreShow less
lists.opensuse.org/opensuse-updates/2016-09/msg00014.html
securityfocus.com/bid/90311
lists.debian.org/debian-lts-announce/2020/05/msg00028.html
nvd.nist.gov/vuln/detail/CVE-2015-8872
github.com/advisories/GHSA-2vww-49j7-chwm
security-tracker.debian.org/tracker/CVE-2015-8872
advisories.mageia.org/MGASA-2016-0184.html
bugs.mageia.org/show_bug.cgi?id=18462
openwall.com/lists/oss-security/2016/05/14/1
suse.com/support/update/announcement/2016/suse-su-20162145-1
bugzilla.suse.com/912607
bugzilla.suse.com/980364
bugzilla.suse.com/980377
suse.com/security/cve/CVE-2015-8872
suse.com/security/cve/CVE-2016-4804
suse.com/support/update/announcement/2016/suse-su-20162146-1
ubuntu.com/security/CVE-2015-8872
ubuntu.com/security/notices/USN-2986-1
cve.org/CVERecord?id=CVE-2015-8872
ubuntu.com/security/CVE-2016-4804