Command-not-found: как хакеры подсовывают линуксоидам вредоносные пакеты

Command-not-found: как хакеры подсовывают линуксоидам вредоносные пакеты

Предустановленная утилита подрывает безопасность миллионов пользователей Ubuntu.

image

Исследователи из Aqua Security обнаружили критическую уязвимость, позволяющую злоумышленникам взламывать системы на базе Linux. Речь идёт об эксплуатации встроенной в дистрибутив Ubuntu утилиты «command-not-found», которая помогает пользователям устанавливать недостающие программы.

Command-not-found предлагает установить пакеты, когда пользователи пытаются запустить команды, отсутствующие в системе. Причём утилита может рекомендовать как стандартные APT-пакеты, так и snap-пакеты из репозитория Snappy. Для сканирования имеющегося ПО используется внутренняя база данных, а для поиска snap-аналогов запускается команда advise-snap.

Изучив принцип работы утилиты, исследователи компании Aqua Security выяснили, что её можно обмануть через систему алиасов. Для поиска snap-пакетов утилита полагается на соответствие команды и имени пакета. Злоумышленники же могут зарегистрировать любое имя для вредоносного snap-пакета, указав нужный алиас.

По итогу, когда пользователи попытаются запустить команду, связанную с этим алиасом, command-not-found будет рекомендовать им установить поддельный пакет.

Ещё один вектор атаки связан с возможностью регистрировать snap-пакеты с именами, совпадающими с уже существующими APT-пакетами. Так, например, взломщики могут выпустить зловредный snap-пакет «jupyter-notebook», а утилита command-not-found будет по умолчанию рекомендовать его вместо оригинального APT-пакета.

По подсчётам экспертов, около 26% команд для APT-пакетов в Ubuntu уязвимы для такой подмены. Злоумышленники могут зарегистрировать соответствующий snap от своего имени, это не составляет какого-либо труда.

Кроме того, взломщики могут использовать опечатки, которые часто допускают неопытные пользователи при вводе команд. Например, вместо «ifconfig» человек может набрать «ifconfigg». Создав поддельный snap-пакет «ifconfigg», хакеры обеспечат его рекомендацию command-not-found вместо пакета net-tools, содержащего оригинальную команду.

Исследователи называют описанную проблему системной для Ubuntu и указывают на необходимость серьёзных обновлений утилиты. Они также призывают пользователей внимательно проверять репутацию и источник рекомендуемых пакетов, прежде чем их устанавливать.

Разработчикам APT-пакетов, в свою очередь, рекомендуется регистрировать snap-имена, связанные с их продуктами. Это поможет предотвратить подмену злоумышленниками.

Неизвестно, использовалась ли уже уязвимость command-not-found в реальных атаках. Тем не менее, проблема уже получила широкую огласку. В Canonical, компании-разработчике Ubuntu, обещают предпринять меры по исправлению уязвимости в ближайшее время.

Теория струн? У нас целый оркестр научных фактов!

От классики до авангарда — наука во всех жанрах

Настройтесь на нашу волну — подпишитесь