CVE-2026-98636: vulnerability in Linux
squashfs: Add dictionary size range check to prevent shift-out-of-bounds
Published · Updated
3Vexday Risk Score
No sign of exploitation. No public exploitation artifact known so far.
ssvc Trackepss 0.2%
exploitation probability
0.2%top 93% of all CVEs
observed exploitation
nono source reports it
In the Linux kernel, the following vulnerability has been resolved:
squashfs: Add dictionary size range check to prevent shift-out-of-bounds
When an abnormal SquashFS image (COMP_OPTS flag is 1 but dictionary size
is 0) is mounted, and performs shift operations using dictionarysize, the
shift exponent is -1, causing a shift-out-of-bounds.
Detail as below:
squashfs_comp_opts(msblk, buffer, length)
squashfs_xz_comp_opts()
if (comp_opts)
n = ffs(opts->dict_size) - 1;<----opts->dict_size=0, n=-1
if (opts->dict_size != (1 << n) && opts->dict_size !=
(1 << n) + (1 << (n + 1))) <----shift-out-of-bounds
Fix it by adding a dictionary size range check before the shift operation.
Affected products
Linux · LinuxRelated CVEs — Linux
In the same product, most dangerous first.
CVE-2024-53197HIGHALSA: usb-audio: Fix potential out-of-bound accesses for Extigy and Mbox devicesEPSS 4.1%KEVCVE-2026-31431HIGHcrypto: algif_aead - Revert to operating out-of-placeEPSS 3.4%KEVCVE-2024-53104HIGHmedia: uvcvideo: Skip parsing frames of type UVC_VS_UNDEFINED in uvc_parse_formatEPSS 3.4%KEVCVE-2025-39682CRITICALtls: fix handling of zero-length records on the rx_listEPSS 2.9%KEVCVE-2024-36971HIGHnet: fix __dst_negative_advice() raceEPSS 2.7%KEVCVE-2025-39964HIGHcrypto: af_alg - Disallow concurrent writes in af_alg_sendmsgEPSS 1.4%KEV
References
https://git.kernel.org/stable/c/0cb85377daaefb4ce5ce72975f2deb27ee0e0cadhttps://git.kernel.org/stable/c/1f7745fb3580152ca902ef181b605f33cabfb1d0https://git.kernel.org/stable/c/7a1c293e7aa17f1afaee0684e0e931fe23a5a6b1https://git.kernel.org/stable/c/88c673a0bd233df44ca0020da82f4fd3876de27ahttps://git.kernel.org/stable/c/9d9c5c218ea356a1d88765214ad2919605280ab1https://git.kernel.org/stable/c/b02948a23455f8190a53887b2d2c13ae1d360ceahttps://git.kernel.org/stable/c/c68e0068a236f9a7dfc19720bdf11e5d80a85089https://git.kernel.org/stable/c/e1ca4e3a380ef3e8f46ce006f1146392e3f32c98