Bug 1223801 (CVE-2024-27006) - VUL-0: CVE-2024-27006: kernel: thermal/debugfs: Add missing count increment to thermal_debug_tz_trip_up()
Summary: VUL-0: CVE-2024-27006: kernel: thermal/debugfs: Add missing count increment t...
Status: RESOLVED FIXED
Alias: CVE-2024-27006
Product: SUSE Security Incidents
Classification: Novell Products
Component: Incidents (show other bugs)
Version: unspecified
Hardware: Other Other
: P3 - Medium : Normal
Target Milestone: ---
Assignee: Security Team bot
QA Contact: Security Team bot
URL: https://smash.suse.de/issue/403774/
Whiteboard: CVSSv3.1:SUSE:CVE-2024-27006:5.5:(AV:...
Keywords:
Depends on:
Blocks:
 
Reported: 2024-05-03 07:24 UTC by SMASH SMASH
Modified: 2024-05-06 07:42 UTC (History)
2 users (show)

See Also:
Found By: Security Response Team
Services Priority:
Business Priority:
Blocker: ---
Marketing QA Status: ---
IT Deployment: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description SMASH SMASH 2024-05-03 07:24:27 UTC
In the Linux kernel, the following vulnerability has been resolved:

thermal/debugfs: Add missing count increment to thermal_debug_tz_trip_up()

The count field in struct trip_stats, representing the number of times
the zone temperature was above the trip point, needs to be incremented
in thermal_debug_tz_trip_up(), for two reasons.

First, if a trip point is crossed on the way up for the first time,
thermal_debug_update_temp() called from update_temperature() does
not see it because it has not been added to trips_crossed[] array
in the thermal zone's struct tz_debugfs object yet.  Therefore, when
thermal_debug_tz_trip_up() is called after that, the trip point's
count value is 0, and the attempt to divide by it during the average
temperature computation leads to a divide error which causes the kernel
to crash.  Setting the count to 1 before the division by incrementing it
fixes this problem.

Second, if a trip point is crossed on the way up, but it has been
crossed on the way up already before, its count value needs to be
incremented to make a record of the fact that the zone temperature is
above the trip now.  Without doing that, if the mitigations applied
after crossing the trip cause the zone temperature to drop below its
threshold, the count will not be updated for this episode at all and
the average temperature in the trip statistics record will be somewhat
higher than it should be.

Cc :6.8+ <stable@vger.kernel.org> # 6.8+

References:
http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2024-27006
https://www.cve.org/CVERecord?id=CVE-2024-27006
https://git.kernel.org/stable/c/9c8215d32e730b597c809a9d2090bf8ec1b79fcf
https://git.kernel.org/stable/c/b552f63cd43735048bbe9bfbb7a9dcfce166fbdd
https://git.kernel.org/pub/scm/linux/security/vulns.git/plain/cve/published/2024/CVE-2024-27006.mbox
https://bugzilla.redhat.com/show_bug.cgi?id=2278287
https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/4EZ6PJW7VOZ224TD7N4JZNU6KV32ZJ53/
https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/DAMSOZXJEPUOXW33WZYWCVAY7Z5S7OOY/
https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/GCBZZEC7L7KTWWAS2NLJK6SO3IZIL4WW/
Comment 2 Andrea Mattiazzo 2024-05-06 07:42:39 UTC
All done, closing.