Исправление критической уязвимости в Alpine Linux
В apk, стандартном пакетном менеджере Alpine Linux, были обнаружены несколько уязвимостей. Наиболее серьезная из них позволяет произвести исполнение вредоносного кода на машине пользователя.
Эксплуатация уязвимости возможна по той причине, что по-умолчанию репозитории не используют TLS для распространения пакетов.
Пакеты Alpine распространяются как файлы .apk, которые по сути являются архивами tar.gz. Когда пакетный менеджер apk получает пакеты, он распаковывает их содержимое в корневую директорию файловой системы до того, как проверяет их подлинность. Во время распаковки архива каждый файл получает суффикс .apk-new. После, когда apk обнаруживает несоответствие контрольных сумм, пакетный менеджер производит удаление всех файлов.
Благодаря особенностям удаления символических ссылок существует возможность сделать файл доступным и после «удаления» файлов пакетным менеджером.
Тем самым существует возможность записи произвольного файла в выбранную директорию. Используя директории вида /etc/apk/commit_hooks.d/, запись файла может приводить к исполнению кода на целевой системе.
Стоит отметить, что эксплуатация уязвимости происходит незаметно для пользователя.
Пользователям рекомендуется незамедлительно обновиться до последней версии, доступной от команды Alpine.
>>> Исправление
>>> Подробности