CVE-2025-38377: rose: fix dangling neighbour pointers in rose_rt_device_down()

Published Jul 25, 2025
·
Updated

In the Linux kernel, the following vulnerability has been resolved:

rose: fix dangling neighbour pointers in rosertdevicedown()

There are two bugs in rosertdevicedown() that can cause use-after-free:

1. The loop bound t->count is modified within the loop, which can cause the loop to terminate early and miss some entries.

2. When removing an entry from the neighbour array, the subsequent entries are moved up to fill the gap, but the loop index i is still incremented, causing the next entry to be skipped.

For example, if a node has three neighbours (A, A, B) with count=3 and A is being removed, the second A is not checked.

i=0: (A, A, B) -> (A, B) with count=2 ^ checked i=1: (A, B) -> (A, B) with count=2 ^ checked (B, not A!) i=2: (doesn't occur because i < count is false)

This leaves the second A in the array with count=2, but the roseneigh structure has been freed. Code that accesses these entries assumes that the first count entries are valid pointers, causing a use-after-free when it accesses the dangling pointer.

Fix both issues by iterating over the array in reverse order with a fixed loop bound. This ensures that all entries are examined and that the removal of an entry doesn't affect subsequent iterations.

Affected Software

18 affected components
Linux Linux kernel
Linux Linux kernel>=2.6.13<5.4.296
Linux Linux kernel>=5.5<5.10.240
Linux Linux kernel>=5.11<5.15.187
Linux Linux kernel>=5.16<6.1.144
Linux Linux kernel>=6.2<6.6.97
Linux Linux kernel>=6.7<6.12.37
Linux Linux kernel>=6.13<6.15.6
Linux Linux kernel=2.6.12
Linux Linux kernel=2.6.12-rc2
Linux Linux kernel=2.6.12-rc3
Linux Linux kernel=2.6.12-rc4
Linux Linux kernel=2.6.12-rc5
Linux Linux kernel=6.16-rc1
Linux Linux kernel=6.16-rc2
Linux Linux kernel=6.16-rc3
Linux Linux kernel=6.16-rc4
Debian Debian Linux=11.0

Event History

Jul 25, 2025
CVE Published
via MITRE·12:53 PM
Data Sourced
via MITRE·12:53 PM
DescriptionSeverity
Data Sourced
via NVD·01:15 PM
RemedyDescriptionSeverityWeaknessAffected Software

Frequently Asked Questions

1

What is the severity of CVE-2025-38377?

CVE-2025-38377 has a high severity due to the potential for use-after-free vulnerabilities in the Linux kernel.

2

How do I fix CVE-2025-38377?

To fix CVE-2025-38377, update your Linux kernel to the latest version where the vulnerability has been patched.

3

What systems are affected by CVE-2025-38377?

CVE-2025-38377 affects various versions of the Linux kernel that include the rose protocol implementation.

4

Can CVE-2025-38377 cause system crashes?

Yes, CVE-2025-38377 can lead to system instability and crashes due to the use-after-free nature of the vulnerability.

5

Is there a workaround for CVE-2025-38377?

Currently, the best workaround for CVE-2025-38377 is to apply the kernel patch or upgrade to a safe version.

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203