Выпуск стандартной Си-библиотеки Musl 1.1.17 с устранением уязвимости

Представлен релиз стандартной Си-библиотеки Musl 1.1.17, предоставляющей реализацию libc, которая подходит для применения как на стационарных ПК и серверах, так и на мобильных системах, сочетая полноценную поддержку стандартов (как в Glibc) с небольшим размером, низким потреблением ресурсов и высокой производительностью (как в uClibc, dietlibc и Android Bionic). Имеется поддержка всех обязательных интерфейсов C99 и POSIX 2008, а также частично C11 и набор расширений для многопоточного программирования (POSIX threads), управления памятью и работы с локалями. Код Musl поставляется под свободной лицензией MIT.

В новой версии устранена уязвимость (CVE-2017–15650) в коде разбора ответов от DNS-сервера, которая может потенциально привести в выполнению кода при использовании функции getaddrinfo (), в случае если злоумышленник контролирует работу DNS-сервера, указанного в resolv.conf, или может вклиниться в трафик (MITM). В качестве обходного пути защиты можно запустить собственный локальный кэширующий DNS-сервер и указать его в resolv.conf.

Из новых возможностей можно выделить поддержку отложенной привязки символов (deferred symbol binding) в компоновщике (эмуляция RTLD_LAZY), опцию для переопределения значения argv[0] при запуске программы через ldso, поддержку запуска новых сеансов при помощи posix_spawn (POSIX_SPAWN_SETSID), возможность определения активной для потока локали (расширение _NL_LOCALE_NAME), улучшение совместимости с приложениями, платформами и сборочными системами.

© OpenNet