{"dataType":"CVE_RECORD","dataVersion":"5.2","cveMetadata":{"cveId":"CVE-2026-53387","assignerOrgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","state":"PUBLISHED","assignerShortName":"Linux","dateReserved":"2026-06-09T07:44:35.402Z","datePublished":"2026-07-19T11:59:33.888Z","dateUpdated":"2026-08-17T04:50:38.188Z"},"containers":{"cna":{"providerMetadata":{"orgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","shortName":"Linux","dateUpdated":"2026-08-17T04:50:38.188Z"},"descriptions":[{"lang":"en","value":"In the Linux kernel, the following vulnerability has been resolved:\n\niio: light: veml6075: add bounds check to veml6075_it_ms index\n\nveml6075_it_ms has 5 elements but VEML6075_CONF_IT can yield values 0-7.\nIf it returns a value >= 5, this causes an out-of-bounds array access.\nAdd a bounds check and return -EINVAL if the index is out of range.\n\nThe problem values are reserved so should never be read from the\nregister. Hence this is hardening against fault device, missprogramming\nor bus corruption."}],"metrics":[{"cvssV3_1":{"version":"3.1","vectorString":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:H","baseScore":7.1,"baseSeverity":"HIGH"},"scenarios":[{"lang":"en","value":"AV:L - The vulnerable code is reached only via local sysfs reads of IIO channel attributes (e.g. in_intensity_uva_raw), which require filesystem access on the target system; there is no network-facing kernel entry point.\nAC:L - An attacker with access to /dev/i2c-* can use I2C_SLAVE_FORCE and I2C_RDWR to program reserved IT values (5–7) into the sensor configuration register, then reliably trigger the out-of-bounds read with a normal sysfs read.\nPR:L - Triggering the bug requires only reading world-readable (0444) IIO sysfs attributes, which is available to an unprivileged local user on typical embedded/Linux deployments where /sys is accessible.\nUI:N - Exploitation requires no action by a separate victim; the attacker directly issues the sysfs read that invokes the vulnerable measurement path.\nS:U - Impact is confined to kernel driver behavior on the local system; there is no crossing of security boundaries such as VM escape, sandbox escape, or IOMMU bypass.\nC:H - The bug is an out-of-bounds read of kernel memory (up to 12 bytes past a static array in .rodata) when the integration-time index is 5, 6, or 7; per kernel scoring guidance, out-of-bounds reads are rated High unless strictly bounded, and the leaked value is not returned to userspace.\nI:N - The flaw is a read-only out-of-bounds array access; the out-of-bounds value is consumed only by msleep() and does not modify memory or enable arbitrary writes or code execution.\nA:H - An out-of-bounds integration-time value fed into msleep() can produce a very long uninterruptible sleep while the driver mutex is held, blocking all concurrent sensor reads and causing a denial of service on embedded/IoT systems that depend on the UV sensor."}]}],"affected":[{"product":"Linux","vendor":"Linux","defaultStatus":"unaffected","repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["drivers/iio/light/veml6075.c"],"versions":[{"version":"3b82f43238aecd73464aeacc9c73407079511533","lessThan":"df9127a1d2d748e426c49c8fcd9b6801e4eb743d","status":"affected","versionType":"git"},{"version":"3b82f43238aecd73464aeacc9c73407079511533","lessThan":"0a89002737ee34decc20fa232204dbe5fe83e0de","status":"affected","versionType":"git"},{"version":"3b82f43238aecd73464aeacc9c73407079511533","lessThan":"f75beebcd5bc9bdc80e0722142e78a6f306214ee","status":"affected","versionType":"git"},{"version":"3b82f43238aecd73464aeacc9c73407079511533","lessThan":"e545936e06f1c7173ab41a5f33a77ff43ced3a8d","status":"affected","versionType":"git"},{"version":"3b82f43238aecd73464aeacc9c73407079511533","lessThan":"307dc4240bd41852d9e0912921e298160db1c109","status":"affected","versionType":"git"}]},{"product":"Linux","vendor":"Linux","defaultStatus":"affected","repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["drivers/iio/light/veml6075.c"],"versions":[{"version":"6.8","status":"affected"},{"version":"0","lessThan":"6.8","status":"unaffected","versionType":"semver"},{"version":"6.12.95","lessThanOrEqual":"6.12.*","status":"unaffected","versionType":"semver"},{"version":"6.18.37","lessThanOrEqual":"6.18.*","status":"unaffected","versionType":"semver"},{"version":"7.0.14","lessThanOrEqual":"7.0.*","status":"unaffected","versionType":"semver"},{"version":"7.1.2","lessThanOrEqual":"7.1.*","status":"unaffected","versionType":"semver"},{"version":"7.2","lessThanOrEqual":"*","status":"unaffected","versionType":"original_commit_for_fix"}]}],"cpeApplicability":[{"nodes":[{"operator":"OR","negate":false,"cpeMatch":[{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"6.8","versionEndExcluding":"6.12.95"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"6.8","versionEndExcluding":"6.18.37"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"6.8","versionEndExcluding":"7.0.14"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"6.8","versionEndExcluding":"7.1.2"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"6.8","versionEndExcluding":"7.2"}]}]}],"references":[{"url":"https://git.kernel.org/stable/c/df9127a1d2d748e426c49c8fcd9b6801e4eb743d"},{"url":"https://git.kernel.org/stable/c/0a89002737ee34decc20fa232204dbe5fe83e0de"},{"url":"https://git.kernel.org/stable/c/f75beebcd5bc9bdc80e0722142e78a6f306214ee"},{"url":"https://git.kernel.org/stable/c/e545936e06f1c7173ab41a5f33a77ff43ced3a8d"},{"url":"https://git.kernel.org/stable/c/307dc4240bd41852d9e0912921e298160db1c109"}],"title":"iio: light: veml6075: add bounds check to veml6075_it_ms index","x_generator":{"engine":"bippy-1.2.0"}}}}