CVE-2024-26858
net/mlx5e: Use a memory barrier to enforce PTP WQ xmit submission tracking occurs after populating the metadata_map
Severity Score
Exploit Likelihood
Affected Versions
Public Exploits
0Exploited in Wild
-Decision
Descriptions
In the Linux kernel, the following vulnerability has been resolved: net/mlx5e: Use a memory barrier to enforce PTP WQ xmit submission tracking occurs after populating the metadata_map Just simply reordering the functions mlx5e_ptp_metadata_map_put and
mlx5e_ptpsq_track_metadata in the mlx5e_txwqe_complete context is not good
enough since both the compiler and CPU are free to reorder these two
functions. If reordering does occur, the issue that was supposedly fixed by
7e3f3ba97e6c ("net/mlx5e: Track xmit submission to PTP WQ after populating
metadata map") will be seen. This will lead to NULL pointer dereferences in
mlx5e_ptpsq_mark_ts_cqes_undelivered in the NAPI polling context due to the
tracking list being populated before the metadata map.
En el kernel de Linux, se ha resuelto la siguiente vulnerabilidad: net/mlx5e: use una barrera de memoria para aplicar PTP WQ. El seguimiento de envío xmit ocurre después de completar metadata_map. Simplemente reordenar las funciones mlx5e_ptp_metadata_map_put y mlx5e_ptpsq_track_metadata en el contexto mlx5e_txwqe_complete no es lo suficientemente bueno ya que ambas el compilador y la CPU son libres de reordenar estas dos funciones. Si se produce un reordenamiento, se verá el problema que supuestamente fue solucionado por 7e3f3ba97e6c ("net/mlx5e: Seguimiento del envío de xmit a PTP WQ después de completar el mapa de metadatos"). Esto dará lugar a desreferencias de puntero NULL en mlx5e_ptpsq_mark_ts_cqes_undelivered en el contexto de sondeo NAPI debido a que la lista de seguimiento se completa antes del mapa de metadatos.
A vulnerability was found in the mlx5e_txwqe_complete() function in the Linux kernel. The CPU or compiler may reorder two of the functions: mlx5e_ptp_metadata_map_put() and mlx5e_ptpsq_track_metadata(), and a situation could arise where metadata tracking occurs before the metadata map is fully populated. This could lead to a NULL pointer dereference which can cause crashes.
In the Linux kernel, the following vulnerability has been resolved: net/mlx5e: Use a memory barrier to enforce PTP WQ xmit submission tracking occurs after populating the metadata_map Just simply reordering the functions mlx5e_ptp_metadata_map_put and mlx5e_ptpsq_track_metadata in the mlx5e_txwqe_complete context is not good enough since both the compiler and CPU are free to reorder these two functions. If reordering does occur, the issue that was supposedly fixed by 7e3f3ba97e6c ("net/mlx5e: Track xmit submission to PTP WQ after populating metadata map") will be seen. This will lead to NULL pointer dereferences in mlx5e_ptpsq_mark_ts_cqes_undelivered in the NAPI polling context due to the tracking list being populated before the metadata map.
CVSS Scores
SSVC
- Decision:Track
Timeline
- 2024-02-19 CVE Reserved
- 2024-04-17 CVE Published
- 2024-04-18 EPSS Updated
- 2024-12-19 CVE Updated
- ---------- Exploited in Wild
- ---------- KEV Due Date
- ---------- First Exploit
CWE
- CWE-476: NULL Pointer Dereference
CAPEC
References (8)
URL | Tag | Source |
---|---|---|
https://git.kernel.org/stable/c/4d510506b46504664eacf8a44a9e8f3e54c137b8 | Vuln. Introduced | |
https://git.kernel.org/stable/c/7e3f3ba97e6cc6fce5bf62df2ca06c8e59040167 | Vuln. Introduced | |
https://git.kernel.org/stable/c/a9d6c0c5a6bd9ca88e964f8843ea41bc085de866 | Vuln. Introduced |
URL | Date | SRC |
---|
URL | Date | SRC |
---|---|---|
https://access.redhat.com/security/cve/CVE-2024-26858 | 2024-07-17 | |
https://bugzilla.redhat.com/show_bug.cgi?id=2275735 | 2024-07-17 |
Affected Vendors, Products, and Versions
Vendor | Product | Version | Other | Status | ||||||
---|---|---|---|---|---|---|---|---|---|---|
Vendor | Product | Version | Other | Status | <-- --> | Vendor | Product | Version | Other | Status |
Linux Search vendor "Linux" | Linux Kernel Search vendor "Linux" for product "Linux Kernel" | >= 6.6.3 < 6.6.22 Search vendor "Linux" for product "Linux Kernel" and version " >= 6.6.3 < 6.6.22" | en |
Affected
| ||||||
Linux Search vendor "Linux" | Linux Kernel Search vendor "Linux" for product "Linux Kernel" | >= 6.7 < 6.7.10 Search vendor "Linux" for product "Linux Kernel" and version " >= 6.7 < 6.7.10" | en |
Affected
| ||||||
Linux Search vendor "Linux" | Linux Kernel Search vendor "Linux" for product "Linux Kernel" | >= 6.7 < 6.8 Search vendor "Linux" for product "Linux Kernel" and version " >= 6.7 < 6.8" | en |
Affected
| ||||||
Linux Search vendor "Linux" | Linux Kernel Search vendor "Linux" for product "Linux Kernel" | 6.5.13 Search vendor "Linux" for product "Linux Kernel" and version "6.5.13" | en |
Affected
|