Vulnerabilidad en kernel de Linux (CVE-2022-48752)
Gravedad CVSS v3.1:
MEDIA
Tipo:
No Disponible / Otro tipo
Fecha de publicación:
20/06/2024
Última modificación:
29/09/2025
Descripción
En el kernel de Linux, se resolvió la siguiente vulnerabilidad: powerpc/perf: corrija power_pmu_disable para llamar a clear_pmi_irq_pending solo si PMI está pendiente Ejecutando la autoprueba con CONFIG_PPC_IRQ_SOFT_MASK_DEBUG habilitado en el kernel activado a continuación: [172.851380] ---------- --[ cortar aquí ]------------ [ 172.851391] ADVERTENCIA: CPU: 8 PID: 2901 en arch/powerpc/include/asm/hw_irq.h:246 power_pmu_disable+0x270/0x280 [ 172.851402 ] Módulos vinculados en: dm_mod bonding nft_ct nf_conntrack nf_defrag_ipv6 nf_defrag_ipv4 ip_set nf_tables rfkill nfnetlink sunrpc xfs libcrc32c pseries_rng xts vmx_crypto uio_pdrv_genirq uio sch_fq_codel ip_tables ext4 mbcache j bd2 sd_mod t10_pi sg ibmvscsi ibmveth scsi_transport_srp fusible [172.851442] CPU: 8 PID: 2901 Comm: lost_exception_ No contaminado 5.16 .0-rc5-03218-g798527287598 #2 [ 172.851451] NIP: c00000000013d600 LR: c00000000013d5a4 CTR: c00000000013b180 [ 172.851458] REGS: 7687860 TRAMPA: 0700 No contaminado (5.16.0-rc5-03218-g798527287598) [ 172.851465] MSR: 8000000000029033 CR: 48004884 XER: 20040000 [ 172.851482] CFAR: c00000000013d5b4 IRQMASK: 1 [ 172.851482] GPR00: c00000000013d5a4 c00000001768 7b00 c000000002a10600 0000000000000004 [ 172.851482] GPR04: 0000000082004000 c0000008ba08f0a8 0000000000000000 00000008b7ed0000 [ 17 2.851482 ] GPR08: 00000000446194f6 0000000000008000 c00000000013b118 c000000000d58e68 [ 172.851482] GPR12: c00000000013d390 c00000001ec54a80 0000000000000000 0000000000000000 [ 172.851482] GPR16: 0000000000000000 0000000000000000 c000000015d5c708 c0000000025396d0 [ 172.8 51482] GPR20: 0000000000000000 0000000000000000 c00000000a3bbf40 0000000000000003 [ 172.851482] GPR24: 0000000000000000 c0000008ba097 400 c0000000161e0d00 c00000000a3bb600 [ 172.851482] GPR28: c000000015d5c700 0000000000000001 0000000082384090 c0000008ba0020d8 [ 172.851549] NIP [c00000000013d600] power_pmu_disable+0x270/0x280 [ 172.851557] LR [c00000000013d5a4] able+0x214/0x280 [ 172.851565] Seguimiento de llamadas: [ 172.851568] [c000000017687b00] [c00000000013d5a4] power_pmu_disable+0x214/0x280 (no confiable) [ 172.851579] [c000000017687b40] [c0000000003403ac] perf_pmu_disable+0x4c/0x60 [ 172.851588] [c000000017687b60] [c0000000003445e4] k_sched_out+0x1d4/0x660 [ 172.851596] [c000000017687c50] [c000000000d1175c] __schedule+0xbcc/0x12a0 [ 172.851602] [c000000017687d60] 00d11ea8] programación+0x78/0x140 [ 172.851608] [c000000017687d90] [c0000000001a8080] sys_sched_yield+0x20/0x40 [ 172.851615] [c000000017687db0] 34dc] system_call_exception+0x18c/0x380 [ 172.851622] [c000000017687e10] [c00000000000c74c] system_call_common+0xec/0x268 La advertencia indica que MSR_EE se configuró (interrupción habilitada) cuando se detectó un PMC desbordado. Esto podría suceder en power_pmu_disable ya que se ejecuta bajo la condición de desactivación suave de interrupción ( local_irq_save ) y no con interrupciones desactivadas por completo. commit 2c9ac51b850d ("powerpc/perf: Fix devoluciones de llamada de PMU para borrar el PMI pendiente antes de restablecer un PMC desbordado") destinado a borrar el bit pendiente de PMI en Paca al deshabilitar la PMU. Podría suceder que PMC se desborde mientras el código está en la función de devolución de llamada power_pmu_disable. Por lo tanto, agregue una verificación para ver si el bit pendiente de PMI está configurado en Paca antes de borrarlo a través de clear_pmi_pending.
Impacto
Puntuación base 3.x
5.50
Gravedad 3.x
MEDIA
Productos y versiones vulnerables
| CPE | Desde | Hasta |
|---|---|---|
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 5.10.94 (incluyendo) | 5.10.96 (excluyendo) |
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 5.15.17 (incluyendo) | 5.15.19 (excluyendo) |
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 5.16.3 (incluyendo) | 5.16.5 (excluyendo) |
| cpe:2.3:o:linux:linux_kernel:5.17:rc1:*:*:*:*:*:* |
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/28aaed966e76807a71de79dd40a8eee9042374dd
- https://git.kernel.org/stable/c/55402a4618721f350a9ab660bb42717d8aa18e7c
- https://git.kernel.org/stable/c/fa4ad064a6bd49208221df5e62adf27b426d1720
- https://git.kernel.org/stable/c/fb6433b48a178d4672cb26632454ee0b21056eaa
- https://git.kernel.org/stable/c/28aaed966e76807a71de79dd40a8eee9042374dd
- https://git.kernel.org/stable/c/55402a4618721f350a9ab660bb42717d8aa18e7c
- https://git.kernel.org/stable/c/fa4ad064a6bd49208221df5e62adf27b426d1720
- https://git.kernel.org/stable/c/fb6433b48a178d4672cb26632454ee0b21056eaa



