---
# System prepended metadata

title: Безопасность операционных систем - Linux
tags: [Linux]

---

# Безопасность операционных систем - Linux
###### tags: `Linux`
Существует несколько простых способов повысить привилегии:

0. Bash_history 
1. Suid-sgid файлы
2. Неправильно выстроенные права доступа
3. Эксплуатация уязвимостей ядра

Однако мне не удалось повысить привилегии этими способами, так что напишу в отчёт то, что мне показалось странным.
Мне был дан пользователь petya, который не имел никаких прав sudo, кроме /bin/ls, /admin-binaries/file-info, /usr/sbin/reboot. Узнать это можно командой sudo -l.

0. В самую первую очередь я решил заглянуть в bash_history, чтобы посмотреть, какие последние команды были использованы, однако последняя команда - это rm /.bash_history :)
1. Посмотрим, какие suid-файлы есть в системе:
![](https://i.imgur.com/VGffTvD.png)
В теории их наверняка можно как-то использовать

2. Также я обнаружил максимальные права на mysql:
![](https://i.imgur.com/AzK1jH3.png)
Открыв конфиг mysql, я обнаружил, что на машинке установлен MySQL версии 5.7:
![](https://i.imgur.com/2dfbrJN.png)
Уязвимость CVE-2016-6662 затрагивает все серверы MySQL в конфигурации по умолчанию во всех ветках версий (5.7, 5.6 и 5.5), включая последние версии, и может быть использована как локальными, так и удаленными злоумышленниками. Успешная эксплуатация может позволить злоумышленникам выполнить произвольный код с root привилегиями, которые затем позволят им полностью скомпрометировать сервер, на котором работает уязвимая версия MySQL. Скорее всего в системе именно этим способом можно было повысить привилегии.

3. Ещё один способ связан с эксплуатацией уязвимостей ядра. На данной машине был установлен ubuntu 22.04, версия ядра Linux 5.15.0-48-generic. В марте этого года была обнаружена уязвимость CVE-2022-0847: уязвимости в ядре Linux начиная с версии 5.8, которая позволяет перезаписывать данные в произвольных файлах только для чтения. Это приводит к повышению привилегий, поскольку непривилегированные процессы могут внедрять код в корневые процессы. Однако в нашем случае её нельзя проэксплуатировать, так как в систем отсутствует gcc (компилятор Си).
