In the Linux kernel, the following vulnerability has been resolved: x86/mm: Fix pti_clone_pgtable() alignment assumption Guenter reported dodgy crashes on an i386-nosmp build using GCC-11 that had the form of endless traps until entry stack exhaust and then #DF from the stack guard. It turned out that pti_clone_pgtable() had alignment assumptions on the start address, notably it hard assumes start is PMD aligned. This is true on x86_64, but very much not true on i386. These assumptions can cause the end condition to malfunction, leading to a 'short' clone. Guess what happens when the user mapping has a short copy of the entry text? Use the correct increment form for addr to avoid alignment assumptions.
En el kernel de Linux, se ha resuelto la siguiente vulnerabilidad: x86/mm: Corregir la suposición de alineación de pti_clone_pgtable() Guenter informó de fallos sospechosos en una compilación de i386-nosmp que utilizaba GCC-11 que tenían la forma de trampas infinitas hasta el agotamiento de la pila de entrada y luego #DF desde la protección de la pila. Resultó que pti_clone_pgtable() tenía suposiciones de alineación en la dirección de inicio, en particular, supone con fuerza que el inicio está alineado con PMD. Esto es cierto en x86_64, pero no es cierto en absoluto en i386. Estas suposiciones pueden provocar que la condición final funcione mal, lo que lleva a un clon "corto". ¿Adivina qué ocurre cuando la asignación de usuario tiene una copia corta del texto de entrada? Utiliza la forma de incremento correcta para addr para evitar suposiciones de alineación.
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
| Attack Vector | LOCAL |
|---|---|
| Attack Complexity | LOW |
| Privileges Required | LOW |
| User Interaction | NONE |
| Scope | UNCHANGED |
| Confidentiality Impact | NONE |
| Integrity Impact | NONE |
| Availability Impact | HIGH |
| Source | Type | Description |
|---|---|---|
| [email protected] | Primary |
en
NVD-CWE-noinfo
|
| Vendor | Product | Version | Update | Type |
|---|---|---|---|---|
| linux | linux_kernel | * | <built-in method update of dict object at 0x7fd36be61340> | Operating System |
| linux | linux_kernel | * | <built-in method update of dict object at 0x7fd36be62f80> | Operating System |
| linux | linux_kernel | * | <built-in method update of dict object at 0x7fd36b44a9c0> | Operating System |
| linux | linux_kernel | * | <built-in method update of dict object at 0x7fd319ebba00> | Operating System |
| linux | linux_kernel | * | <built-in method update of dict object at 0x7fd36be62380> | Operating System |
| linux | linux_kernel | * | <built-in method update of dict object at 0x7fd36be62580> | Operating System |
| linux | linux_kernel | * | <built-in method update of dict object at 0x7fd319ebaf00> | Operating System |
| linux | linux_kernel | 6.11 | <built-in method update of dict object at 0x7fd319eb8380> | Operating System |
| Vulnerable | CPE |
|---|---|
| Yes | cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* |
| Yes | cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* |
| Yes | cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* |
| Yes | cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* |
| Yes | cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* |
| Yes | cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* |
| Yes | cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* |
| Yes | cpe:2.3:o:linux:linux_kernel:6.11:rc1:*:*:*:*:*:* |