Investigadores de las empresas Claroty y JFrog publicaron los resultados de una auditoría de seguridad del paquete BusyBox, ampliamente utilizado en dispositivos integrados y que ofrece un conjunto de utilidades estándar de UNIX, presentadas en un único archivo ejecutable. Durante la revisión se encontraron 14 vulnerabilidades, que ya han sido corregidas en la versión de agosto de BusyBox 1.34. Casi todos los problemas son de bajo riesgo y cuestionables en cuanto a su aplicación en ataques reales, ya que requieren la ejecución de utilidades con argumentos proporcionados externamente.
Se destaca una vulnerabilidad, CVE-2021-42374, que permite provocar una denegación de servicio al procesar un archivo comprimido especialmente diseñado utilizando la utilidad unlzma, y en caso de compilar con las opciones CONFIG_FEATURE_SEAMLESS_LZMA, también por cualquier otro componente de BusyBox, incluyendo tar, unzip, rpm, dpkg, lzma y man.
Las vulnerabilidades CVE-2021-42373, CVE-2021-42375, CVE-2021-42376 y CVE-2021-42377 permiten provocar una denegación de servicio, pero requieren la ejecución de las utilidades man, ash y hush con parámetros proporcionados por el atacante. Las vulnerabilidades desde CVE-2021-42378 hasta CVE-2021-42386 afectan a la utilidad awk y pueden potencialmente llevar a la ejecución de código, pero para ello el atacante debe lograr que awk ejecute un determinado patrón (es necesario ejecutar awk pasando como primer argumento de la línea de comandos datos obtenidos del atacante).
Además, se puede señalar la vulnerabilidad (CVE-2021-43523) en las bibliotecas uclibc y uclibc-ng, relacionada con el hecho de que al acceder a las funciones gethostbyname(), getaddrinfo(), gethostbyaddr() y getnameinfo() no se verifica ni se limpia el nombre de dominio devuelto por el servidor DNS. Por ejemplo, en respuesta a una determinada solicitud de resolución, un servidor DNS controlado por un atacante puede devolver hosts como ".attacker.com" y estos serán devueltos sin cambios a algún programa que sin limpieza podría mostrarlos en su interfaz web. El problema ha sido corregido en la versión uclibc-ng 1.0.39 mediante la adición de código para verificar la validez de los retornos. de nombres de dominio, implementado de manera similar a Glibc.
Fuente: opennet.ru
