{"id":"CVE-2025-68251","state":"PUBLISHED","title":"erofs: avoid infinite loops due to corrupted subpage compact indexes","description":"In the Linux kernel, the following vulnerability has been resolved:\n\nerofs: avoid infinite loops due to corrupted subpage compact indexes\n\nRobert reported an infinite loop observed by two crafted images.\n\nThe root cause is that `clusterofs` can be larger than `lclustersize`\nfor !NONHEAD `lclusters` in corrupted subpage compact indexes, e.g.:\n\n  blocksize = lclustersize = 512   lcn = 6   clusterofs = 515\n\nMove the corresponding check for full compress indexes to\n`z_erofs_load_lcluster_from_disk()` to also cover subpage compact\ncompress indexes.\n\nIt also fixes the position of `m->type >= Z_EROFS_LCLUSTER_TYPE_MAX`\ncheck, since it should be placed right after\n`z_erofs_load_{compact,full}_lcluster()`.","publishedAt":"2025-12-16T14:32:17.979Z","updatedAt":"2026-10-21T12:38:08.014Z","severity":null,"assigner":"Linux","products":["Linux Linux"],"affected":[{"vendor":"Linux","product":"Linux","defaultStatus":"unaffected","versions":[{"version":"3f691aa676f29586e83e6c032713554a290418c3","status":"affected","lessThan":"b18a82503a67a530d48f5a5b429e162749fe2c89","versionType":"git"},{"version":"8d2517aaeea3ab8651bb517bca8f3c8664d318ea","status":"affected","lessThan":"dbfac1b85d0753996ddfef636934d431b588dd1f","versionType":"git"},{"version":"8d2517aaeea3ab8651bb517bca8f3c8664d318ea","status":"affected","lessThan":"8675447a8794983f2b7e694b378112772c17635e","versionType":"git"},{"version":"8d2517aaeea3ab8651bb517bca8f3c8664d318ea","status":"affected","lessThan":"e13d315ae077bb7c3c6027cc292401bc0f4ec683","versionType":"git"},{"version":"22438a34d383ec2789eaf450728e38abc53051f8","status":"affected","versionType":"git"},{"version":"6.6.16","status":"affected","lessThan":"6.6.160","versionType":"semver"},{"version":"6.7.4","status":"affected","lessThan":"6.8","versionType":"semver"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["fs/erofs/zmap.c"]},{"vendor":"Linux","product":"Linux","defaultStatus":"affected","versions":[{"version":"6.8","status":"affected"},{"version":"0","status":"unaffected","lessThan":"6.8","versionType":"semver"},{"version":"6.6.160","status":"unaffected","lessThanOrEqual":"6.6.*","versionType":"semver"},{"version":"6.12.91","status":"unaffected","lessThanOrEqual":"6.12.*","versionType":"semver"},{"version":"6.17.6","status":"unaffected","lessThanOrEqual":"6.17.*","versionType":"semver"},{"version":"6.18","status":"unaffected","lessThanOrEqual":"*","versionType":"original_commit_for_fix"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["fs/erofs/zmap.c"]}],"references":["https://git.kernel.org/stable/c/b18a82503a67a530d48f5a5b429e162749fe2c89","https://git.kernel.org/stable/c/dbfac1b85d0753996ddfef636934d431b588dd1f","https://git.kernel.org/stable/c/8675447a8794983f2b7e694b378112772c17635e","https://git.kernel.org/stable/c/e13d315ae077bb7c3c6027cc292401bc0f4ec683"],"weaknesses":[],"ingestedAt":"2026-10-29T20:09:56.034Z","source":{"repository":"CVEProject/cvelistV5","path":"cves/2025/68xxx/CVE-2025-68251.json","commit":"556c9d3a8cd17e218bb8e452ba7cd619a384ff47"},"raw":{"dataType":"CVE_RECORD","dataVersion":"5.2","cveMetadata":{"cveId":"CVE-2025-68251","state":"PUBLISHED","datePublished":"2025-12-16T14:32:17.979Z","dateUpdated":"2026-10-21T12:38:08.014Z","assignerShortName":"Linux","assignerOrgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","dateReserved":"2025-12-16T13:41:40.266Z"},"containers":{"cna":{"title":"erofs: avoid infinite loops due to corrupted subpage compact indexes","descriptions":[{"lang":"en","value":"In the Linux kernel, the following vulnerability has been resolved:\n\nerofs: avoid infinite loops due to corrupted subpage compact indexes\n\nRobert reported an infinite loop observed by two crafted images.\n\nThe root cause is that `clusterofs` can be larger than `lclustersize`\nfor !NONHEAD `lclusters` in corrupted subpage compact indexes, e.g.:\n\n  blocksize = lclustersize = 512   lcn = 6   clusterofs = 515\n\nMove the corresponding check for full compress indexes to\n`z_erofs_load_lcluster_from_disk()` to also cover subpage compact\ncompress indexes.\n\nIt also fixes the position of `m->type >= Z_EROFS_LCLUSTER_TYPE_MAX`\ncheck, since it should be placed right after\n`z_erofs_load_{compact,full}_lcluster()`."}],"affected":[{"vendor":"Linux","product":"Linux","defaultStatus":"unaffected","versions":[{"version":"3f691aa676f29586e83e6c032713554a290418c3","status":"affected","lessThan":"b18a82503a67a530d48f5a5b429e162749fe2c89","versionType":"git"},{"version":"8d2517aaeea3ab8651bb517bca8f3c8664d318ea","status":"affected","lessThan":"dbfac1b85d0753996ddfef636934d431b588dd1f","versionType":"git"},{"version":"8d2517aaeea3ab8651bb517bca8f3c8664d318ea","status":"affected","lessThan":"8675447a8794983f2b7e694b378112772c17635e","versionType":"git"},{"version":"8d2517aaeea3ab8651bb517bca8f3c8664d318ea","status":"affected","lessThan":"e13d315ae077bb7c3c6027cc292401bc0f4ec683","versionType":"git"},{"version":"22438a34d383ec2789eaf450728e38abc53051f8","status":"affected","versionType":"git"},{"version":"6.6.16","status":"affected","lessThan":"6.6.160","versionType":"semver"},{"version":"6.7.4","status":"affected","lessThan":"6.8","versionType":"semver"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["fs/erofs/zmap.c"]},{"vendor":"Linux","product":"Linux","defaultStatus":"affected","versions":[{"version":"6.8","status":"affected"},{"version":"0","status":"unaffected","lessThan":"6.8","versionType":"semver"},{"version":"6.6.160","status":"unaffected","lessThanOrEqual":"6.6.*","versionType":"semver"},{"version":"6.12.91","status":"unaffected","lessThanOrEqual":"6.12.*","versionType":"semver"},{"version":"6.17.6","status":"unaffected","lessThanOrEqual":"6.17.*","versionType":"semver"},{"version":"6.18","status":"unaffected","lessThanOrEqual":"*","versionType":"original_commit_for_fix"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["fs/erofs/zmap.c"]}],"references":[{"url":"https://git.kernel.org/stable/c/b18a82503a67a530d48f5a5b429e162749fe2c89"},{"url":"https://git.kernel.org/stable/c/dbfac1b85d0753996ddfef636934d431b588dd1f"},{"url":"https://git.kernel.org/stable/c/8675447a8794983f2b7e694b378112772c17635e"},{"url":"https://git.kernel.org/stable/c/e13d315ae077bb7c3c6027cc292401bc0f4ec683"}],"providerMetadata":{"shortName":"Linux","orgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","dateUpdated":"2026-10-21T12:38:08.014Z"},"cpeApplicability":[{"nodes":[{"operator":"OR","negate":false,"cpeMatch":[{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"6.6.16","versionEndExcluding":"6.6.160"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"6.8","versionEndExcluding":"6.12.91"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"6.8","versionEndExcluding":"6.17.6"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"6.8","versionEndExcluding":"6.18"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"6.7.4"}]}]}],"x_generator":{"engine":"bippy-1.2.0"}}}}}