Vulnerabilidad en kernel de Linux (CVE-2021-47012)
Gravedad CVSS v3.1:
ALTA
Tipo:
CWE-416
Utilización después de liberación
Fecha de publicación:
28/02/2024
Última modificación:
09/12/2024
Descripción
En el kernel de Linux se ha resuelto la siguiente vulnerabilidad: RDMA/siw: Corrige un use after free en siw_alloc_mr Nuestro analizador de código informó un UAF. En siw_alloc_mr(), llama a siw_mr_add_mem(mr,..). En la implementación de siw_mr_add_mem(), mem se asigna a mr->mem y luego mem se libera mediante kfree(mem) si xa_alloc_ciclic() falla. Aquí, mr->mem todavía apunta a un objeto liberado. Después, la ejecución continúa hasta la rama err_out de siw_alloc_mr, y el mr->mem liberado se usa en siw_mr_drop_mem(mr). Mi parche mueve "mr->mem = mem" detrás de la sección if (xa_alloc_ciclic(..)<0) {}, para evitar el uaf.
Impacto
Puntuación base 3.x
7.80
Gravedad 3.x
ALTA
Productos y versiones vulnerables
CPE | Desde | Hasta |
---|---|---|
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 5.3 (incluyendo) | 5.4.119 (excluyendo) |
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 5.5 (incluyendo) | 5.10.37 (excluyendo) |
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 5.11 (incluyendo) | 5.11.21 (excluyendo) |
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 5.12 (incluyendo) | 5.12.4 (excluyendo) |
Para consultar la lista completa de nombres de CPE con productos y versiones, ver esta página
Referencias a soluciones, herramientas e información
- https://git.kernel.org/stable/c/3093ee182f01689b89e9f8797b321603e5de4f63
- https://git.kernel.org/stable/c/30b9e92d0b5e5d5dc1101ab856c17009537cbca4
- https://git.kernel.org/stable/c/3e22b88e02c194f6c80867abfef5cc09383461f4
- https://git.kernel.org/stable/c/608a4b90ece039940e9425ee2b39c8beff27e00c
- https://git.kernel.org/stable/c/ad9ce7188432650469a6c7625bf479f5ed0b6155
- https://git.kernel.org/stable/c/3093ee182f01689b89e9f8797b321603e5de4f63
- https://git.kernel.org/stable/c/30b9e92d0b5e5d5dc1101ab856c17009537cbca4
- https://git.kernel.org/stable/c/3e22b88e02c194f6c80867abfef5cc09383461f4
- https://git.kernel.org/stable/c/608a4b90ece039940e9425ee2b39c8beff27e00c
- https://git.kernel.org/stable/c/ad9ce7188432650469a6c7625bf479f5ed0b6155