Skip to main content
← All vulnerabilities
CVE-2026-93159

crypto: atmel-sha204a - fix heap info leak on I2C transfer failure

Published
Last modified
published
Not listed in CISA KEV
Fix
Fixed in 5.10.270, 5.15.221, 6.1.188, 6.6.157, 6.12.110, and 2 more
None on Exploit-DB, Metasploit or GitHub

Summary

In the Linux kernel, the following vulnerability has been resolved: crypto: atmel-sha204a - fix heap info leak on I2C transfer failure The nonblocking RNG path allocates a work_data structure to track the state of an in-flight asynchronous I2C request. This pointer is stored in rng->priv and later consumed by the read path once the transaction completes. If the underlying I2C transfer fails, the completion callback is invoked with a non-zero status. In this case, the allocated work_data is not usable for producing RNG output and must not remain associated with the hwrng state. Previously, the failure path only logged a warning but left the pointer state uncleared, which can result in subsequent read attempts observing stale state and interpreting it as valid completion data. Fix this by freeing the pending work_data. The I2C transaction reports an error. This ensures that failed requests do not leave residual state behind that could be interpreted as valid RNG data on later reads. Clearing rng->priv is done at the subsequent call to nonblocking read.

Timeline

  1. CVE published
  2. Record last updated

Affected versions

  • Linux Linux

    From da001fb651b00e1deeaf24767dd691ae8152a4f5 · fixed in a430b5b6d2ddd2b266330f8507a655be1148347d; From da001fb651b00e1deeaf24767dd691ae8152a4f5 · fixed in 4e76d85e505b7451925efbcd67c015e8c2440c68; From da001fb651b00e1deeaf24767dd691ae8152a4f5 · fixed in bcac9052e19490231ff6e0678a06bd2fcf8db3af; From da001fb651b00e1deeaf24767dd691ae8152a4f5 · fixed in 28cc179252347718f97045dd5ea74165609dbd7d; From da001fb651b00e1deeaf24767dd691ae8152a4f5 · fixed in 0d6db386133d9230befb77967bbf130443964860; From da001fb651b00e1deeaf24767dd691ae8152a4f5 · fixed in f4d347fb1309b69ea6f817a17e6b2893c8d754b7; From da001fb651b00e1deeaf24767dd691ae8152a4f5 · fixed in 94abda77b57a35b82bba0365bad072d94d67ffe9; From da001fb651b00e1deeaf24767dd691ae8152a4f5 · fixed in 72bbf11ba14bd7d5fbf31a1ec42fff608b657f74

  • Linux Linux

    5.3

  • KernelLinux

    From 5.3.0 · fixed in 5.10.270; From 5.11.0 · fixed in 5.15.221; From 5.16.0 · fixed in 6.1.188; From 6.2.0 · fixed in 6.6.157; From 6.7.0 · fixed in 6.12.110; From 6.13.0 · fixed in 6.18.52; From 6.19.0 · fixed in 7.2.6

References 8

git.kernel.org