Linux | PrivESC #1
Tadn3wb
Существует много методов повышения привилегий. Предлагаю рассмотреть стандартные методы. В первой части серий статей мы рассмотрим повышение привилегий с помощью sudo через бинарник под NANO, используя open source инструменты.
Open source который мы будем использовать в нашей статье - https://gtfobins.github.io
Этот метод повышение привилегий рассмотрен на ресурсе TryHackMe. Но к сожалению, некоторые не могут приобрести подписку для практики. Мы намерены помочь с этим. Как машинку для рассмотрения повышения привилегий мы будем использовать тачку того же ресурса - THM.
Давайте рассмотрим, что мы прошли все этапы раскрутки какой либо уязвимости и получили RCE доступ, с минимальными привилегиями.
Что нам делать дальше? - Крутить дальше. Повышать своё преимущество. Улучшать свою позицию.
Для начала, нам нужно собрать как больше информации внутри самой системы.
Давайте рассмотрим стандартные команды для сбора информации внутри системы.
hostname - имя хоста
uname - a - сведения о ядре
uname - r - версия kernel
cat /proc/version - информация о версии ядра и о компиляторе gcc
cat /etc/issue - информация о системе
ps -A - все запущенные процессы
ps axjf - дерево процессов
env - переменная среда
cat /etc/passwd - все пользователи в системе
history - история команд
netstat -a - все прослушиваемые порты
sudo -l - Привелегии root
О сборе информации с помощью автоматических инструментов, мы поговорим в следующей статье.
Итак, мы собрали информацию. Обнаружили что нам доступны команды sudo.
Как такое возможно?
Сейчас спецы меня закидают камнями, говоря как у www-data пользователя могут быть sudo права. Всё просто - иногда добрые и любимые наши админы дают права на запись пользователю www-data и меняют разрешение на 777. Я не знаю с чем это связано, зачем они так делают.
Может быть неграмотность админа, может быть пьяный был когда настраивал apache. В любом случае - человеческий фактор. На каждый человеческий фактор - найдётся свой человек, который это исправит, или про использует. Но я на практике такое встретил совсем недавно, и был тоже удивлён.

Мы выполнили команду sudo -l и увидели где нам доступны sudo права.
Дальнейшем нашим шагом будет, собственно повышение привилегий через бинарники.
Как я и писал ранее мы будем использовать сайт - https://gtfobins.github.io/
GTFOBins - это подготовленный список двоичных файлов Unix, которые можно использовать для обхода локальных ограничений безопасности в неправильно сконфигурированных системах.
Вводим наш бинарник под текстовый редактор - nano, выбираем sudo, и видим команды.
sudo nano
^R^X
reset; sh 1>&0 2>&0
Для начала, вызываем nano с помощью sudo
Потом нажимаем CTRL + R и CTRL + X
Появляется command to execute ---> вводим нашу команду.

Дальше мы видим возможность вводить команды с правами root пользователя.

Сегодня мы с вами разобрали повышение привилегий через sudo с помощью текстового редактора nano. Дальше больше! С вами был Tadn3wb 😘