CVE-2025-68794
In the Linux kernel, the following vulnerability has been resolved:
iomap: adjust read range correctly for non-block-aligned positions
iomap_adjust_read_range() assumes that the position and length passed in are block-aligned. This is not always the case however, as shown in the syzbot generated case for erofs. This causes too many bytes to be skipped for uptodate blocks, which results in returning the incorrect position and length to read in. If all the blocks are uptodate, this underflows length and returns a position beyond the folio.
Fix the calculation to also take into account the block offset when calculating how many bytes can be skipped for uptodate blocks.
CVSS
- Versión: 3.1
- Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
- Puntuación base: 9.8
Probabilidad de explotación (EPSS)
- Probabilidad de explotación en los próximos 30 días: 0.59%
- Percentil entre todas las CVEs puntuadas: 46
- Fecha de la puntuación: 6/10/2026
EPSS (Exploit Prediction Scoring System, de FIRST) estima la probabilidad de que una vulnerabilidad sea explotada en 30 días. Complementa a CVSS (impacto) y a CISA KEV (explotación confirmada).
🎯 Técnicas ATT&CK
Cómo se explota esta vulnerabilidad y qué consigue el atacante, en el lenguaje de MITRE ATT&CK.
- Explotación
T1190Exploit Public-Facing Applicationinitial access75 % - Impacto principal
T1499.004Application or System Exploitationimpact65 % - Impacto secundario
T1565.001Stored Data Manipulationimpact60 %
AV:N/AC:L/PR:N/UI:N indica explotación remota sin privilegios (T1190). El desbordamiento en iomap_adjust_read_range() permite DoS (A:H) y corrupción de datos (I:H) al retornar posición/longitud incorrecta en lectura de bloques.
Inferido por nuestro agente de análisis a partir de la descripción oficial, el vector CVSS y la CWE, y comprobado por un supervisor. Puede contener errores.
🛡️ Mitigaciones ATT&CK que cubren estas técnicas
Tecnologías afectadas (1)
⚠ Inferidas por IA a partir de la descripción — NVD aún no ha analizado esta CVE; no son CPE verificados.
Referencias
- https://git.kernel.org/stable/c/12053695c8ef5410e8cc6c9ed4c0db9cd9c82b3e
- https://git.kernel.org/stable/c/142194fb21afe964d2d194cab1fc357cbf87e899
- https://git.kernel.org/stable/c/275b37a1e5c2c8abd313e8075f6aec9a349f291b
- https://git.kernel.org/stable/c/7aa6bc3e8766990824f66ca76c19596ce10daf3e
- https://git.kernel.org/stable/c/82b60ffbb532d919959702768dca04c3c0500ae5
- https://git.kernel.org/stable/c/b8c9f25fd84328c5fcc4f70c6d1e8f1d4787eaac
- https://git.kernel.org/stable/c/ce20f49ac9194cf81a77f01d1c316d7c17ae753c
JSON original (NVD)
Mostrar
{
"id": "CVE-2025-68794",
"cveTags": [],
"metrics": {
"cvssMetricV31": [
{
"type": "Secondary",
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"cvssData": {
"scope": "UNCHANGED",
"version": "3.1",
"baseScore": 9.8,
"attackVector": "NETWORK",
"baseSeverity": "CRITICAL",
"vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H",
"integrityImpact": "HIGH",
"userInteraction": "NONE",
"attackComplexity": "LOW",
"availabilityImpact": "HIGH",
"privilegesRequired": "NONE",
"confidentialityImpact": "HIGH"
},
"impactScore": 5.9,
"exploitabilityScore": 3.9
}
]
},
"affected": [
{
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"affectedData": [
{
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"vendor": "Linux",
"product": "Linux",
"versions": [
{
"status": "affected",
"version": "9dc55f1389f9569acf9659e58dd836a9c70df217",
"lessThan": "ce20f49ac9194cf81a77f01d1c316d7c17ae753c",
"versionType": "git"
},
{
"status": "affected",
"version": "9dc55f1389f9569acf9659e58dd836a9c70df217",
"lessThan": "275b37a1e5c2c8abd313e8075f6aec9a349f291b",
"versionType": "git"
},
{
"status": "affected",
"version": "9dc55f1389f9569acf9659e58dd836a9c70df217",
"lessThan": "b8c9f25fd84328c5fcc4f70c6d1e8f1d4787eaac",
"versionType": "git"
},
{
"status": "affected",
"version": "9dc55f1389f9569acf9659e58dd836a9c70df217",
"lessThan": "82b60ffbb532d919959702768dca04c3c0500ae5",
"versionType": "git"
},
{
"status": "affected",
"version": "9dc55f1389f9569acf9659e58dd836a9c70df217",
"lessThan": "12053695c8ef5410e8cc6c9ed4c0db9cd9c82b3e",
"versionType": "git"
},
{
"status": "affected",
"version": "9dc55f1389f9569acf9659e58dd836a9c70df217",
"lessThan": "142194fb21afe964d2d194cab1fc357cbf87e899",
"versionType": "git"
},
{
"status": "affected",
"version": "9dc55f1389f9569acf9659e58dd836a9c70df217",
"lessThan": "7aa6bc3e8766990824f66ca76c19596ce10daf3e",
"versionType": "git"
}
],
"programFiles": [
"fs/iomap/buffered-io.c"
],
"defaultStatus": "unaffected"
},
{
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"vendor": "Linux",
"product": "Linux",
"versions": [
{
"status": "affected",
"version": "4.19"
},
{
"status": "unaffected",
"version": "0",
"lessThan": "4.19",
"versionType": "semver"
},
{
"status": "unaffected",
"version": "5.10.267",
"versionType": "semver",
"lessThanOrEqual": "5.10.*"
},
{
"status": "unaffected",
"version": "5.15.218",
"versionType": "semver",
"lessThanOrEqual": "5.15.*"
},
{
"status": "unaffected",
"version": "6.1.185",
"versionType": "semver",
"lessThanOrEqual": "6.1.*"
},
{
"status": "unaffected",
"version": "6.6.120",
"versionType": "semver",
"lessThanOrEqual": "6.6.*"
},
{
"status": "unaffected",
"version": "6.12.64",
"versionType": "semver",
"lessThanOrEqual": "6.12.*"
},
{
"status": "unaffected",
"version": "6.18.3",
"versionType": "semver",
"lessThanOrEqual": "6.18.*"
},
{
"status": "unaffected",
"version": "6.19",
"versionType": "original_commit_for_fix",
"lessThanOrEqual": "*"
}
],
"programFiles": [
"fs/iomap/buffered-io.c"
],
"defaultStatus": "affected"
}
]
}
],
"published": "2026-01-13T16:16:01.310",
"references": [
{
"url": "https://git.kernel.org/stable/c/12053695c8ef5410e8cc6c9ed4c0db9cd9c82b3e",
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://git.kernel.org/stable/c/142194fb21afe964d2d194cab1fc357cbf87e899",
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://git.kernel.org/stable/c/275b37a1e5c2c8abd313e8075f6aec9a349f291b",
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://git.kernel.org/stable/c/7aa6bc3e8766990824f66ca76c19596ce10daf3e",
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://git.kernel.org/stable/c/82b60ffbb532d919959702768dca04c3c0500ae5",
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://git.kernel.org/stable/c/b8c9f25fd84328c5fcc4f70c6d1e8f1d4787eaac",
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://git.kernel.org/stable/c/ce20f49ac9194cf81a77f01d1c316d7c17ae753c",
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
}
],
"vulnStatus": "Deferred",
"descriptions": [
{
"lang": "en",
"value": "In the Linux kernel, the following vulnerability has been resolved:\n\niomap: adjust read range correctly for non-block-aligned positions\n\niomap_adjust_read_range() assumes that the position and length passed in\nare block-aligned. This is not always the case however, as shown in the\nsyzbot generated case for erofs. This causes too many bytes to be\nskipped for uptodate blocks, which results in returning the incorrect\nposition and length to read in. If all the blocks are uptodate, this\nunderflows length and returns a position beyond the folio.\n\nFix the calculation to also take into account the block offset when\ncalculating how many bytes can be skipped for uptodate blocks."
},
{
"lang": "es",
"value": "En el kernel de Linux, la siguiente vulnerabilidad ha sido resuelta:\n\niomap: ajustar el rango de lectura correctamente para posiciones no alineadas a bloques\n\niomap_adjust_read_range() asume que la posición y la longitud pasadas están alineadas a bloques. Sin embargo, este no siempre es el caso, como se muestra en el caso generado por syzbot para erofs. Esto causa que se salten demasiados bytes para bloques actualizados, lo que resulta en la devolución de una posición y longitud incorrectas para leer. Si todos los bloques están actualizados, esto provoca un desbordamiento negativo de la longitud y devuelve una posición más allá del folio.\n\nCorregir el cálculo para también tener en cuenta el desplazamiento del bloque al calcular cuántos bytes pueden ser saltados para bloques actualizados."
}
],
"lastModified": "2026-08-27T13:16:52.537",
"sourceIdentifier": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
}