THREATINT

We use these services and cookies to improve your user experience. You may opt out if you wish, however, this may limit some features on this site.

Please see our statement on Data Privacy.

Fathom (Privacy friendly web analytics)
Zendesk (Helpdesk and Chat)

Ok

Home | EN
Support
CVE
PUBLISHED

CVE-2024-26995

usb: typec: tcpm: Correct the PDO counting in pd_set

AssignerLinux
Reserved2024-02-19
Published2024-05-01
Updated2024-06-17

Description

In the Linux kernel, the following vulnerability has been resolved: usb: typec: tcpm: Correct the PDO counting in pd_set Off-by-one errors happen because nr_snk_pdo and nr_src_pdo are incorrectly added one. The index of the loop is equal to the number of PDOs to be updated when leaving the loop and it doesn't need to be added one. When doing the power negotiation, TCPM relies on the "nr_snk_pdo" as the size of the local sink PDO array to match the Source capabilities of the partner port. If the off-by-one overflow occurs, a wrong RDO might be sent and unexpected power transfer might happen such as over voltage or over current (than expected). "nr_src_pdo" is used to set the Rp level when the port is in Source role. It is also the array size of the local Source capabilities when filling up the buffer which will be sent as the Source PDOs (such as in Power Negotiation). If the off-by-one overflow occurs, a wrong Rp level might be set and wrong Source PDOs will be sent to the partner port. This could potentially cause over current or port resets.

Product status

Default status
unaffected

cd099cde4ed2 before f3da3192cdd3
affected

cd099cde4ed2 before c4128304c216
affected

Default status
affected

6.8
affected

Any version before 6.8
unaffected

6.8.8
unaffected

6.9
unaffected

References

https://git.kernel.org/stable/c/f3da3192cdd3fefe213390e976eec424a8e270b5

https://git.kernel.org/stable/c/c4128304c2169b4664ed6fb6200f228cead2ab70

cve.org CVE-2024-26995

nvd.nist.gov CVE-2024-26995

Download JSON

Share this page
https://cve.threatint.com/CVE/CVE-2024-26995
© Copyright 2024 THREATINT. Made in Cyprus with +