Уязвимость, затрагивающая все дистрибутивы Linux. Можно получить root-привилегии. Linux новости

Уязвимость, затрагивающая все дистрибутивы Linux. Можно получить root-привилегии

13
Лайков: +17
войдите, чтобы ставить лайки

Уязвимость pkexec

Специалисты из американской компании Qualys, занимающейся облачной безопасностью и сопутствующими услугами, обнаружили уязвимость, которая затрагивает все дистрибутивы Linux. Уязвимость была обнаружена в компоненте Polkit, также известном как PolicyKit.

Компонент PolicyKit используется для предоставления непривилегированным процессам возможности выполнения действий, которые требуют прав администратора. В состав PolicyKit входит утилита pkexec, которая позволяет авторизированным пользователям запускать программы от имени другого пользователя, включая root-пользователя.

Обнаруженная уязвимость позволяет непривилегированному пользователю получить привилегии root в системе. Сотрудники Qualys разработали эксплойт, с помощью которого смогли получить полные root-привилегии на стандартных установках дистрибутивов Ubuntu, Debian, Fedora и CentOS. Другие дистрибутивы, вероятно, также подвержены данной уязвимости.

Уязвимости был присвоен номер: CVE-2021-4034.

Принцип «взлома» основан на том, что при запуске утилиты pkexec не выполняется проверка счетчика количества аргументов командной строки (argc). В Linux можно выполнить команду pkexec без аргументов, используя системный вызов execve().

Man-страница pkexec
Man-страница pkexec

После такого вызова, pkexec попытается выполнить программу с правами суперпользователя, пытаясь получить название программы (команды) из первого аргумента командной строки (argv[1]), который на самом деле не был передан pkexec. В результате pkexec будет читать содержимое аргумента из области памяти, в которой размещаются переменные окружения, так как за массивом аргументов argv следует массив переменных окружения envp. Злоумышленник может определенным образом изменить соответствующую переменную окружения, что в результате позволит ему выполнить свой процесс с правами root-пользователя.

Архитектура PolKit
Архитектура PolKit

В целях безопасности сотрудники сотрудники Qualys не стали выкладывать свой эксплойт в общий доступ, так как уязвимость очень легко воспроизвести.

Примечательно, что данная уязвимость существует уже более 12 лет и затрагивает все версии pkexec, начиная с первой версии, которая вышла в мае 2009 года.

На сегодняшний день почти все популярные дистрибутивы уже подготовили патчи с устранением данной уязвимости. Если патч для вашего дистрибутива пока не готов, то в качестве временного решения можно удалить SUID-бит из pkexec, выполнив команду:

chmod 0755 /usr/bin/pkexec
13
  • Опубликовано: 01.02.2022

Комментарии

Аноним Конечно
01.02.2022
10:15
Постоянная ссылка на комментарийПостоянная ссылка на комментарий
+1
войдите, чтобы ставить лайки
Безопасность Линуксов и другие мифы нашего времени.
;-)
x230
Активный пользователь
Активный
01.02.2022
16:17
Постоянная ссылка на комментарийПостоянная ссылка на комментарийРодительский комментарийРодительский комментарий
+2
войдите, чтобы ставить лайки
Всё познаётся в сравненнии.
chiv
01.02.2022
18:40
Постоянная ссылка на комментарийПостоянная ссылка на комментарийРодительский комментарийРодительский комментарий
+4
войдите, чтобы ставить лайки
Не потрудитесь развернуть про мифы? Желательно со сравнительным анализом. Не?
Singular
Активный пользователь
Активный
01.02.2022
11:31
Постоянная ссылка на комментарийПостоянная ссылка на комментарий
+1
войдите, чтобы ставить лайки
Отдельное спасибо за новость!
Я бы не обратил внимание на то что у меня в сорсах неправильно записана секьюрити репа.
Думал, что обновы безопасности не приходят, а на самом деле это я к ним не прихожу.
Если у кого такая же проблема, вот правильная репа.
deb http://security.debian.org/debian-security bullseye-security main contrib non-free
Minor748
Активный пользователь
Активный
01.02.2022
11:51
Постоянная ссылка на комментарийПостоянная ссылка на комментарийРодительский комментарийРодительский комментарий
+2
войдите, чтобы ставить лайки
Спасибо, добавил. Прилетели обновы
x230
Активный пользователь
Активный
01.02.2022
16:18
Постоянная ссылка на комментарийПостоянная ссылка на комментарийРодительский комментарийРодительский комментарий
0
войдите, чтобы ставить лайки
А как это будет выглядеть в MX-Linux?
Minor748
Активный пользователь
Активный
01.02.2022
17:05
Постоянная ссылка на комментарийПостоянная ссылка на комментарийРодительский комментарийРодительский комментарий
+1
войдите, чтобы ставить лайки
https://ibb.co/QHDc5Rx
https://ibb.co/PwVrbBK
x230
Активный пользователь
Активный
01.02.2022
19:08
Постоянная ссылка на комментарийПостоянная ссылка на комментарийРодительский комментарийРодительский комментарий
0
войдите, чтобы ставить лайки
Круть!
Спасибо, познавательно. Кое-что возьму на вооружение.
Но я имел в виду 'deb http://security.debian.org/debian-security bullseye-security main contrib non-free'
Minor748
Активный пользователь
Активный
01.02.2022
19:21
Постоянная ссылка на комментарийПостоянная ссылка на комментарийРодительский комментарийРодительский комментарий
0
войдите, чтобы ставить лайки
Так вот через Muon и добавил. Там процесс обновления завершился с ошибкой, но было вроде 9 пакетов. Поэтому через консоль. Такую длинную команду на алиас забиндил
Dimanao
Активный пользователь
Активный
01.02.2022
16:54
Постоянная ссылка на комментарийПостоянная ссылка на комментарий
0
войдите, чтобы ставить лайки
Погодите ... Через SSH это возможно? К серваку ( если подруб по ключу)....
evgeni50
01.02.2022
19:32
Постоянная ссылка на комментарийПостоянная ссылка на комментарийРодительский комментарийРодительский комментарий
0
войдите, чтобы ставить лайки
никак, ssh не юзает его
PedroAmor
Активный пользователь
Активный
01.02.2022
21:20
Постоянная ссылка на комментарийПостоянная ссылка на комментарий
0
войдите, чтобы ставить лайки
Не рекомедую запускать chmod - Вы сразу блокируете для себя запускать update manager.
evgeni50
02.02.2022
03:36
Постоянная ссылка на комментарийПостоянная ссылка на комментарийРодительский комментарийРодительский комментарий
0
войдите, чтобы ставить лайки
у меня ничего не блокируется

Написать комментарий

Ваше имя:
Текст комментария:
  • Уважать других.
  • Не ругаться.
  • Без оскорблений.
  • Без грубости.
  • Не переходить на личности.
  • Писать на русском языке.
  • Без политики.
  • Без флуда.
Правила