Racket is a general-purpose programming language and an ecosystem for language-oriented programming. In versions prior to 8.2, code…
GitHub_M·CWE-441·Published 2021-07-19
Racket is a general-purpose programming language and an ecosystem for language-oriented programming. In versions prior to 8.2, code evaluated using the Racket sandbox could cause system modules to incorrectly use attacker-created modules instead of their intended dependencies. This could allow system functions to be controlled by the attacker, giving access to facilities intended to be restricted. This problem is fixed in Racket version 8.2. A workaround is available, depending on system settings. For systems that provide arbitrary Racket evaluation, external sandboxing such as containers limit the impact of the problem. For multi-user evaluation systems, such as the `handin-server` system, it is not possible to work around this problem and upgrading is required.
Racket is a general-purpose programming language and an ecosystem for language-oriented programming. In versions prior to 8.2, code evaluated using the Racket sandbox could cause system modules to incorrectly use attacker-created modules instead of their intended dependencies. This could allow system functions to be controlled by the attacker, giving access to facilities intended to be restricted. This problem is fixed in Racket version 8.2. A workaround is available, depending on system settings. For systems that provide arbitrary Racket evaluation, external sandboxing such as containers limit the impact of the problem. For multi-user evaluation systems, such as the `handin-server` system, it is not possible to work around this problem and upgrading is required.
Racket es un lenguaje de programación de propósito general y un ecosistema para la programación orientada al lenguaje. En versiones anteriores a 8.2, el código evaluado usando el sandbox de Racket podía causar que los módulos del sistema usaran incorrectamente módulos creados por el atacante en lugar de sus dependencias previstas. Esto podía permitir que las funciones del sistema fueran controladas por el atacante, dando acceso a instalaciones que se pretendía restringir. Este problema se ha corregido en la versión 8.2 de Racket. Hay una solución disponible, dependiendo de la configuración del sistema. Para los sistemas que proporcionan una evaluación arbitraria de Racket, los sandboxs externos, como los contenedores, limitan el impacto del problema. Para los sistemas de evaluación multiusuario, como el sistema "handin-server", no es posible solucionar este problema y es requerida una actualización
| Version | Type | Source | Base | Exp | Impact | Vector |
|---|---|---|---|---|---|---|
| 2.0 | Primary | NVD | 5.0 | 10.0 | 2.9 | AV:N/AC:L/Au:N/C:N/I:P/A:N |
| 3.1 | Primary | NVD | 7.5 | 3.9 | 3.6 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N |
| 3.1 | Primary | cve.org | 6.1 | — | — | CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:C/C:N/I:H/A:N |
| 3.1 | Primary | cve.org | 6.1 | — | — | CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:C/C:N/I:H/A:N |
| 3.1 | Secondary | NVD | 6.1 | 1.6 | 4.0 | CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:C/C:N/I:H/A:N |