"value":"In the Linux kernel, the following vulnerability has been resolved:\n\nchar: tpm: Protect tpm_pm_suspend with locks\n\nCurrently tpm transactions are executed unconditionally in\ntpm_pm_suspend() function, which may lead to races with other tpm\naccessors in the system.\n\nSpecifically, the hw_random tpm driver makes use of tpm_get_random(),\nand this function is called in a loop from a kthread, which means it's\nnot frozen alongside userspace, and so can race with the work done\nduring system suspend:\n\n tpm tpm0: tpm_transmit: tpm_recv: error -52\n tpm tpm0: invalid TPM_STS.x 0xff, dumping stack for forensics\n CPU: 0 PID: 1 Comm: init Not tainted 6.1.0-rc5+ #135\n Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.0-20220807_005459-localhost 04/01/2014\n Call Trace:\n tpm_tis_status.cold+0x19/0x20\n tpm_transmit+0x13b/0x390\n tpm_transmit_cmd+0x20/0x80\n tpm1_pm_suspend+0xa6/0x110\n tpm_pm_suspend+0x53/0x80\n __pnp_bus_suspend+0x35/0xe0\n __device_suspend+0x10f/0x350\n\nFix this by calling tpm_try_get_ops(), which itself is a wrapper around\ntpm_chip_start(), but takes the appropriate mutex.\n\n[Jason: reworked commit message, added metadata]"
"value":"En el kernel de Linux, se ha resuelto la siguiente vulnerabilidad: char: tpm: Proteger tpm_pm_suspend con bloqueos Actualmente, las transacciones tpm se ejecutan incondicionalmente en la funci\u00f3n tpm_pm_suspend(), lo que puede generar ejecuciones con otros accesores tpm en el sistema. Espec\u00edficamente, el controlador tpm hw_random hace uso de tpm_get_random(), y esta funci\u00f3n se llama en un bucle desde un kthread, lo que significa que no est\u00e1 congelada junto con el espacio de usuario, y por lo tanto puede competir con el trabajo realizado durante la suspensi\u00f3n del sistema: tpm tpm0: tpm_transmit: tpm_recv: error -52 tpm tpm0: TPM_STS.x 0xff no v\u00e1lido, volcando pila para an\u00e1lisis forense CPU: 0 PID: 1 Comm: init No contaminado 6.1.0-rc5+ #135 Nombre del hardware: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.0-20220807_005459-localhost 04/01/2014 Rastreo de llamadas: tpm_tis_status.cold+0x19/0x20 tpm_transmit+0x13b/0x390 tpm_transmit_cmd+0x20/0x80 tpm1_pm_suspend+0xa6/0x110 tpm_pm_suspend+0x53/0x80 __pnp_bus_suspend+0x35/0xe0 __device_suspend+0x10f/0x350 Solucione este problema llamando a tpm_try_get_ops(), que es un contenedor de tpm_chip_start(), pero toma el mutex apropiado. [Jason: mensaje de confirmaci\u00f3n redise\u00f1ado, metadatos agregados]"