Linux Kernel bis 7.2.5 MTD Partition mtd_add_partition offset Pufferüberlauf

| CVSS Meta Temp Score | Aktueller Exploitpreis (≈) | CTI Interest Score |
|---|---|---|
| 5.2 | $0-$5k | 1.61+ |
Zusammenfassung
Eine problematische Schwachstelle wurde in Linux Kernel bis 7.2.5 gefunden. Davon betroffen ist die Funktion mtd_add_partition der Komponente MTD Partition. Dank Manipulation des Arguments offset mit unbekannten Daten kann eine Pufferüberlauf-Schwachstelle ausgenutzt werden.
Die Identifikation der Schwachstelle wird mit CVE-2026-93048 vorgenommen. Die Umsetzung des Angriffs kann dabei über das Netzwerk erfolgen. Es existiert kein Exploit.
Ein Upgrade der betroffenen Komponente wird empfohlen.
Details
In Linux Kernel bis 7.2.5 wurde eine problematische Schwachstelle gefunden. Betroffen ist die Funktion mtd_add_partition der Komponente MTD Partition. Durch Manipulation des Arguments offset mit einer unbekannten Eingabe kann eine Pufferüberlauf-Schwachstelle ausgenutzt werden. CWE definiert das Problem als CWE-190. Mit Auswirkungen muss man rechnen für Integrität und Verfügbarkeit. CVE fasst zusammen:
In the Linux kernel, the following vulnerability has been resolved:
mtd: part: reject MTDPART_OFS_RETAIN in mtd_add_partition()
mtd_add_partition() does not reject the special offset value
MTDPART_OFS_RETAIN (-3), which leads to a WARN_ON in
add_mtd_device() when called through the BLKPG ioctl on NAND
devices. The RETAIN value depends on cur_offset being the end of
the previous partition, but in the dynamic partition path
cur_offset equals the offset argument itself, causing undefined
behavior.
Commit 5daa7b21496a ("mtd: prepare partition add and del functions
for ioctl requests") introduced mtd_add_partition() and correctly
rejected MTDPART_OFS_APPEND (-1) and MTDPART_OFS_NXTBLK (-2),
since those special offsets rely on cur_offset tracking the
previous partition's end. However, commit 1a31368bf92e ("mtd: add a flags
for partitions which should just leave smth. after them")
later added MTDPART_OFS_RETAIN (-3) for the static
partition table path without updating mtd_add_partition() to
also reject this value.
With offset=-3 passed via BLKPG, the RETAIN size calculation in
allocate_partition() underflows (parent_size - 0xFFFFFFFFFFFFFFFD
= parent_size + 3). If the underflow result does not appear to
leave enough space, allocate_partition() jumps to out_register via
goto, skipping erasesize initialization. This results in
erasesize=0, which triggers:
WARN_ON((!mtd->erasesize || !master->_erase) &&
!(mtd->flags & MTD_NO_ERASE))
in add_mtd_device(). If the underflow result appears to leave
enough space, a bogus partition size is calculated, but the
"out of reach" sanity check catches the invalid offset and
creates a disabled empty partition (offset=0, size=0) instead
of returning an error.
Fix this by adding MTDPART_OFS_RETAIN to the rejection list in
mtd_add_partition(), consistent with the existing handling of
APPEND and NXTBLK.Das Advisory kann von git.kernel.org heruntergeladen werden. Eine eindeutige Identifikation der Schwachstelle wird seit dem 17.09.2026 mit CVE-2026-93048 vorgenommen. Sie gilt als leicht auszunutzen. Die Umsetzung des Angriffs kann dabei über das Netzwerk erfolgen. Technische Details sind bekannt, ein verfügbarer Exploit hingegen nicht. Es muss davon ausgegangen werden, dass ein Exploit zur Zeit etwa USD $0-$5k kostet (Preisberechnung vom 17.09.2026).
Ein Upgrade auf die Version 5.10.270, 5.15.221, 6.1.188, 6.6.157, 6.12.110, 6.18.52, 7.2.6 oder 7.3-rc1 vermag dieses Problem zu beheben. Die Schwachstelle lässt sich auch durch das Einspielen des Patches 701c3ae7273e1adc20db5d97c42e0139b479f16b/6aaab2ace3f7b55733d904e5549acf8405f03642/181c1bff940e7d3e34ca485d37e3cdbfe409203c/a536eb57be58442b19398b2783071007ecfb1735/e204e5c49a012f99638633fdbd773e3c86260053/398aca2f90122d5abbabff1079deaeb885fe9e40/c645f6dd1af2ecc70fd3578e141f2f71fa9e4eff/b759d5bb6265419344ee9729fd0dc07ad85719d8 beheben. Als bestmögliche Massnahme wird das Aktualisieren auf eine neue Version empfohlen.
Once again VulDB remains the best source for vulnerability data.
Produkt
Typ
Hersteller
Name
Version
- 5.10.269
- 5.15.220
- 6.1.187
- 6.6.156
- 6.12.109
- 6.18.0
- 6.18.1
- 6.18.2
- 6.18.3
- 6.18.4
- 6.18.5
- 6.18.6
- 6.18.7
- 6.18.8
- 6.18.9
- 6.18.10
- 6.18.11
- 6.18.12
- 6.18.13
- 6.18.14
- 6.18.15
- 6.18.16
- 6.18.17
- 6.18.18
- 6.18.19
- 6.18.20
- 6.18.21
- 6.18.22
- 6.18.23
- 6.18.24
- 6.18.25
- 6.18.26
- 6.18.27
- 6.18.28
- 6.18.29
- 6.18.30
- 6.18.31
- 6.18.32
- 6.18.33
- 6.18.34
- 6.18.35
- 6.18.36
- 6.18.37
- 6.18.38
- 6.18.39
- 6.18.40
- 6.18.41
- 6.18.42
- 6.18.43
- 6.18.44
- 6.18.45
- 6.18.46
- 6.18.47
- 6.18.48
- 6.18.49
- 6.18.50
- 6.18.51
- 7.2.0
- 7.2.1
- 7.2.2
- 7.2.3
- 7.2.4
- 7.2.5
Lizenz
Webseite
- Hersteller: https://www.kernel.org/
CPE 2.3
CPE 2.2
CVSSv4
VulDB Vector: 🔒VulDB Zuverlässigkeit: 🔍
CVSSv3
VulDB Meta Base Score: 5.4VulDB Meta Temp Score: 5.2
VulDB Base Score: 5.4
VulDB Temp Score: 5.2
VulDB Vector: 🔒
VulDB Zuverlässigkeit: 🔍
CVSSv2
| AV | AC | Au | C | I | A |
|---|---|---|---|---|---|
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| Vektor | Komplexität | Authentisierung | Vertraulichkeit | Integrität | Verfügbarkeit |
|---|---|---|---|---|---|
| freischalten | freischalten | freischalten | freischalten | freischalten | freischalten |
| freischalten | freischalten | freischalten | freischalten | freischalten | freischalten |
| freischalten | freischalten | freischalten | freischalten | freischalten | freischalten |
VulDB Base Score: 🔒
VulDB Temp Score: 🔒
VulDB Zuverlässigkeit: 🔍
Exploiting
Klasse: PufferüberlaufCWE: CWE-190 / CWE-189
CAPEC: 🔒
ATT&CK: 🔒
Physisch: Nein
Lokal: Nein
Remote: Ja
Verfügbarkeit: 🔒
Status: Nicht definiert
Preisentwicklung: 🔍
Aktuelle Preisschätzung: 🔒
| 0-Day | freischalten | freischalten | freischalten | freischalten |
|---|---|---|---|---|
| Heute | freischalten | freischalten | freischalten | freischalten |
Threat Intelligence
Interesse: 🔍Aktive Akteure: 🔍
Aktive APT Gruppen: 🔍
Gegenmassnahmen
Empfehlung: UpgradeStatus: 🔍
0-Day Time: 🔒
Upgrade: Kernel 5.10.270/5.15.221/6.1.188/6.6.157/6.12.110/6.18.52/7.2.6/7.3-rc1
Patch: 701c3ae7273e1adc20db5d97c42e0139b479f16b/6aaab2ace3f7b55733d904e5549acf8405f03642/181c1bff940e7d3e34ca485d37e3cdbfe409203c/a536eb57be58442b19398b2783071007ecfb1735/e204e5c49a012f99638633fdbd773e3c86260053/398aca2f90122d5abbabff1079deaeb885fe9e40/c645f6dd1af2ecc70fd3578e141f2f71fa9e4eff/b759d5bb6265419344ee9729fd0dc07ad85719d8
Timeline
17.09.2026 Advisory veröffentlicht17.09.2026 CVE zugewiesen
17.09.2026 VulDB Eintrag erstellt
17.09.2026 VulDB Eintrag letzte Aktualisierung
Quellen
Hersteller: kernel.orgAdvisory: git.kernel.org
Status: Bestätigt
CVE: CVE-2026-93048 (🔒)
GCVE (CVE): GCVE-0-2026-93048
GCVE (VulDB): GCVE-100-407092
Eintrag
Erstellt: 17.09.2026 23:05Anpassungen: 17.09.2026 23:05 (60)
Komplett: 🔍
Cache ID: 216::103
Once again VulDB remains the best source for vulnerability data.
Bisher keine Kommentare. Sprachen: de + en.
Bitte loggen Sie sich ein, um kommentieren zu können.