Linux: regulator: ltc3676: don't read the write-only HRST and CLIRQ registers
What fixes it
- 1fb0d58fd363b439b4faf08a16ee6ae38b575cd4LinuxCVE List
- 199a62d70314d21f06a9a6faaa3ef54d0404910cLinuxCVE List
- 28c2388ee24cdbefbcc458fa41ef7bffaaa1cc83LinuxCVE List
A fixed version on one release line is not the upgrade target for every line. Check your exact version and any vendor backports.
Description
In the Linux kernel, the following vulnerability has been resolved:
regulator: ltc3676: don't read the write-only HRST and CLIRQ registers
HRST (0x1e) and CLIRQ (0x1f) are write-only command strobes. Writing HRST triggers a hard reset of the chip and writing CLIRQ clears the interrupt; reading them returns nothing useful, and the read itself fires the command.
The result is that a plain register dump resets the board:
cat /sys/kernel/debug/regmap/2-003c/registers
walks every readable register, hits HRST, and the board reboots.
Split the callback back in two so HRST and CLIRQ stay writable but are no longer readable. The readable range is left unchanged (LTC3676_BUCK1 ... LTC3676_IRQSTAT).
Text from CVE List
Affected versions 12
- Linuxaffected: 37b918a034feda1b1ef404acf003812f37ab8da2 before fd376d83741118e0212f0da985889c1a98d9c827CVE List
- Linuxaffected: 37b918a034feda1b1ef404acf003812f37ab8da2 before 1fb0d58fd363b439b4faf08a16ee6ae38b575cd4CVE List
- Linuxaffected: 37b918a034feda1b1ef404acf003812f37ab8da2 before 199a62d70314d21f06a9a6faaa3ef54d0404910cCVE List
- Linuxaffected: 37b918a034feda1b1ef404acf003812f37ab8da2 before ca5d85335a8fa6e87b45629f1a07b412482cab17CVE List
- Linuxaffected: 37b918a034feda1b1ef404acf003812f37ab8da2 before 28c2388ee24cdbefbcc458fa41ef7bffaaa1cc83CVE List
- Linuxaffected: 4.9CVE List
- Linuxunaffected: all versions before 4.9CVE List
- Linuxunaffected: 6.6.160 through 6.6.*CVE List
- Linuxunaffected: 6.12.113 through 6.12.*CVE List
- Linuxunaffected: 6.18.57 through 6.18.*CVE List
- Linuxunaffected: 7.2.11 through 7.2.*CVE List
- Linuxunaffected: 7.3CVE List
References 5
- git.kernel.org/stable/c/fd376d83741118e0212f0da985889c1a98d9c827Referencevia CVE List
- git.kernel.org/stable/c/1fb0d58fd363b439b4faf08a16ee6ae38b575cd4Referencevia CVE List
- git.kernel.org/stable/c/199a62d70314d21f06a9a6faaa3ef54d0404910cReferencevia CVE List
- git.kernel.org/stable/c/ca5d85335a8fa6e87b45629f1a07b412482cab17Referencevia CVE List
- git.kernel.org/stable/c/28c2388ee24cdbefbcc458fa41ef7bffaaa1cc83Referencevia CVE List