CVE-2024-26831

Summary

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

net/handshake: Fix handshake_req_destroy_test1

Recently, handshake_req_destroy_test1 started failing:

Expected handshake_req_destroy_test == req, but handshake_req_destroy_test == 0000000000000000 req == 0000000060f99b40 not ok 11 req_destroy works

This is because "sock_release(sock)" was replaced with "fput(filp)" to address a memory leak. Note that sock_release() is synchronous but fput() usually delays the final close and clean-up.

The delay is not consequential in the other cases that were changed but handshake_req_destroy_test1 is testing that handshake_req_cancel() followed by closing the file actually does call the ->hp_destroy method. Thus the PTR_EQ test at the end has to be sure that the final close is complete before it checks the pointer.

We cannot use a completion here because if ->hp_destroy is never called (ie, there is an API bug) then the test will hang.

Reported by: Guenter Roeck <linux@roeck-us.net>

Affected Software

VendorProductVersion RangeStatus
LinuxLinux4a0f07d71b0483cc08c03cefa7c85749e187c214 < d74226e03df1bf19848f18344401f254345af912affected
LinuxLinux4a0f07d71b0483cc08c03cefa7c85749e187c214 < 7f97805b8df6e33850e225e6bd3ebd9e246920afaffected
LinuxLinux4a0f07d71b0483cc08c03cefa7c85749e187c214 < 4e1d71cabb19ec2586827adfc60d68689c68c194affected
LinuxLinux1751e44980466e3ebc246d22d3ebd422197704b6affected
LinuxLinux6.5.6 < 6.6affected
LinuxLinux6.6affected
LinuxLinux0 < 6.6unaffected
LinuxLinux6.6.18 <= 6.6.*unaffected
LinuxLinux6.7.6 <= 6.7.*unaffected
LinuxLinux6.8 <= *unaffected

Weaknesses

ADP Enrichment

CVE Program Container

Additional References

CISA ADP Vulnrichment

  • SSVC:
  • Exploitation: none
    • Automatable: no
    • Technical Impact: partial

References