Атака на уязвимую систему Deathnote Vulnhub. Получение доступа к системе пользователя и суперпользователя root. Часть 7

в 15:36, , рубрики: enum, nmap, passwd, virtualbox, брутфорс, доступ, информационная безопасность, сканирование, энумерация

Всех приветствую, читатели !

Седьмая часть анализа защищенности, правда в этот раз системы (серверной) Vulnhub. Система я поднимал на virtualbox, а не на докер, то есть иной метод виртуализации.

Вот ссылки на первые четыре части уязвимых веб-приложений, советую ознакомиться:

https://habr.com/ru/articles/894508/
https://habr.com/ru/articles/895092/
https://habr.com/ru/articles/895856/
https://habr.com/ru/articles/897296/
https://habr.com/ru/articles/898918/ (это уязвимая ОС на virtualbox)
https://habr.com/ru/articles/902248/

Примечание

Правовая информация:

Данная статья создана исключительно в ознакомительных/образовательных/развивающих целях.
Автор статьи не несет ответственности за ваши действия.
Автор статьи ни к чему не призывает, более того напоминаю о существовании некоторых статей в уголовном кодексе РФ, их никто не отменял:
УК РФ Статья 272. Неправомерный доступ к компьютерной информации
УК РФ Статья 273. Создание, использование и распространение вредоносных компьютерных программ
УК РФ Статья 274. Нарушение правил эксплуатации средств хранения, обработки или передачи компьютерной информации и информационно-телекоммуникационных сетей

Все атаки я проводил на локальный сервер, внутри моего сетевого интерфейса, на моем компьютере, то есть все действия легитимны.

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

Алгоритм атаки будет следующий:

  1. Скачивание образа виртуальной машины, запуск и настройка образа. Поиск системы внутри сетевого интерфейса

  2. Сканирование цели

  3. Энумерация

  4. Анализ скачанного файла с сервера

  5. Энумерация (более глубокая)

  6. Получение доступа к системе взломом при помощи брутфорс-атаки

  7. Повышение привелегий

Итак приступим к практике

1) Скачивание образа виртуальной машины, запуск и настройка образа. Поиск системы внутри сетевого интерфейса

Скачать образ виртуальной машниы можно здесь https://www.vulnhub.com/entry/deathnote-1,739/. На странице отсутствуют варианты прохождения данной уязвимой ОС.

В качестве атакующей ОС я использовал Debian GNU/Linux (с некоторыми специальными программами, предустановленными мной). Кроме того, так как мы используем образ под virtualbox, должна быть установлена данная программа. Программы которые я использовал для пентеста с открытым исходным кодом и доступны для Debian и Debian-подобных дистрибутивов - nmap, whatweb, curl, wget, dirsearch, dirb, hydra, binwalk, ghex, exiftool

После того как образ скачан, все что останется - запустить его. Достаточно щелкнуть по нему два раза мышкой

Атака на уязвимую систему Deathnote Vulnhub. Получение доступа к системе пользователя и суперпользователя root. Часть 7 - 1

После начентся процесс запуска образа системы в виртуалбокс.

Важно!!!
Необходимо в настройках атакуемой ОС указать сетевой мост и тот же интерфейс, на котором находится и атакующая машина.

После этого узнаем интерфейсы в терминале, введя команду

ifconfig

Атака на уязвимую систему Deathnote Vulnhub. Получение доступа к системе пользователя и суперпользователя root. Часть 7 - 2

Очевидно, что локальный интерфейс начинается на 192.168.72... После чего сканируем nmap всю локальную сеть:

nmap 192.168.72.1-255

Атака на уязвимую систему Deathnote Vulnhub. Получение доступа к системе пользователя и суперпользователя root. Часть 7 - 3

ip адрес уязвимой ОС - 192.168.72.13

2) Сканирование цели

После чего более тщательно сканируем цель:

nmap -sV -p- 192.168.72.13
whatweb 192.168.72.13

Атака на уязвимую систему Deathnote Vulnhub. Получение доступа к системе пользователя и суперпользователя root. Часть 7 - 4

И узнаем много чего интересного - ОС Linux Debian, имеется Apache 2.4.38 открытые порты 80 и 22 со службами httpd и ssh

3) Энумерация

После чего мы начинаем энумерацию

dirsearch -u http://192.168.72.13

Атака на уязвимую систему Deathnote Vulnhub. Получение доступа к системе пользователя и суперпользователя root. Часть 7 - 5

И сразу же обнаруживается файл robots.txt

Узнаем его содержимое:

curl http://192.168.72.13/robots.txt

Атака на уязвимую систему Deathnote Vulnhub. Получение доступа к системе пользователя и суперпользователя root. Часть 7 - 6
Или прямо через браузер

Или прямо через браузер

Узнаем о существовании файла на сервере important.jpg

Пробуем его открыть - не получается

Атака на уязвимую систему Deathnote Vulnhub. Получение доступа к системе пользователя и суперпользователя root. Часть 7 - 8

После чего просто скачиваем его для анализа

wget http://192.168.72.13/important.jpg

Атака на уязвимую систему Deathnote Vulnhub. Получение доступа к системе пользователя и суперпользователя root. Часть 7 - 9

4) Анализ скачанного файла с сервера

Я попытался проанализировать данный файл (он не открывался и после скачивания) программой binwalk - безуспешно

binwalk important.jpg

Атака на уязвимую систему Deathnote Vulnhub. Получение доступа к системе пользователя и суперпользователя root. Часть 7 - 10

После чего я проанализировал его утилитой exiftool

exiftool important.jpg

Атака на уязвимую систему Deathnote Vulnhub. Получение доступа к системе пользователя и суперпользователя root. Часть 7 - 11

После чего стало очевидно, что это текстовый файл, сохраненный с расширением jpg. Можно просто поменять расширение, а можно открыть например через hex-редактор. Я использую ghex

ghex important.jpg

Атака на уязвимую систему Deathnote Vulnhub. Получение доступа к системе пользователя и суперпользователя root. Часть 7 - 12
Атака на уязвимую систему Deathnote Vulnhub. Получение доступа к системе пользователя и суперпользователя root. Часть 7 - 13
Атака на уязвимую систему Deathnote Vulnhub. Получение доступа к системе пользователя и суперпользователя root. Часть 7 - 14

Или прямо, при помощи утилиты curl просмотреть содержимое файла с сервера

curl http://192.168.72.13/important.jpg

Атака на уязвимую систему Deathnote Vulnhub. Получение доступа к системе пользователя и суперпользователя root. Часть 7 - 15

Содержимое файла означает примерно следующее:

Атака на уязвимую систему Deathnote Vulnhub. Получение доступа к системе пользователя и суперпользователя root. Часть 7 - 16

Очевидно, что где то в самом веб-приложении находится файл user.txt, содержащий возможные имена пользователей.

5) Энумерация (более глубокая)

Кроме того, что обнаружились два файла, энумерация дала и другие пути, например директория http://192.168.72.13/wordpress/ с wordpress, и форма авторизации http://192.168.72.13/wordpress/wp-login.php

Атака на уязвимую систему Deathnote Vulnhub. Получение доступа к системе пользователя и суперпользователя root. Часть 7 - 17

Я начал энумерацию директории http://192.168.72.13/wordpress/ в поисках хоть каких то подсказок, и перходил по найденным ссылкам

dirsearch -u http://192.168.72.13/wordpress/
dirsearch -u http://192.168.72.13/wordpress/index.php

Атака на уязвимую систему Deathnote Vulnhub. Получение доступа к системе пользователя и суперпользователя root. Часть 7 - 18
Атака на уязвимую систему Deathnote Vulnhub. Получение доступа к системе пользователя и суперпользователя root. Часть 7 - 19
Атака на уязвимую систему Deathnote Vulnhub. Получение доступа к системе пользователя и суперпользователя root. Часть 7 - 20
Атака на уязвимую систему Deathnote Vulnhub. Получение доступа к системе пользователя и суперпользователя root. Часть 7 - 21
Атака на уязвимую систему Deathnote Vulnhub. Получение доступа к системе пользователя и суперпользователя root. Часть 7 - 22
Атака на уязвимую систему Deathnote Vulnhub. Получение доступа к системе пользователя и суперпользователя root. Часть 7 - 23
Атака на уязвимую систему Deathnote Vulnhub. Получение доступа к системе пользователя и суперпользователя root. Часть 7 - 24

dirb http://192.168.72.13/wordpress/index.php

Атака на уязвимую систему Deathnote Vulnhub. Получение доступа к системе пользователя и суперпользователя root. Часть 7 - 25

И тут я уже готов был сдаться, но вдруг заметил что есть цветной текст HINT, наводя на который мышь, высвечивался адрес deathnote.vuln/wordpress/index.php/hint/.

Атака на уязвимую систему Deathnote Vulnhub. Получение доступа к системе пользователя и суперпользователя root. Часть 7 - 26

Естественно я перешел на него, изменив в запросе 192.168.72.13/wordpress/index.php/hint/

Атака на уязвимую систему Deathnote Vulnhub. Получение доступа к системе пользователя и суперпользователя root. Часть 7 - 27

Очевидно, кроме user.txt есть и файл notes.txt, который содержит какую то ценную информацию

А далее была снова энумерация

Здесь я попытался найти хоть какую то информацию о данной машине в сети, и нашел немного, но очень важное - верный путь директория wordpress

dirsearch -u http://192.168.72.13
dirsearch -u
http://192.168.72.13/wordpress/
dirsearch -u
http://192.168.72.13/wordpress/wp-content/

Атака на уязвимую систему Deathnote Vulnhub. Получение доступа к системе пользователя и суперпользователя root. Часть 7 - 28
Атака на уязвимую систему Deathnote Vulnhub. Получение доступа к системе пользователя и суперпользователя root. Часть 7 - 29
Атака на уязвимую систему Deathnote Vulnhub. Получение доступа к системе пользователя и суперпользователя root. Часть 7 - 30

И внутри http://192.168.72.13/wordpress/wp-content/ нашел папку /uploads/

После чего я перешел по данному адресу

Атака на уязвимую систему Deathnote Vulnhub. Получение доступа к системе пользователя и суперпользователя root. Часть 7 - 31

Зашел в папку 2021

Атака на уязвимую систему Deathnote Vulnhub. Получение доступа к системе пользователя и суперпользователя root. Часть 7 - 32

Папка 07

Атака на уязвимую систему Deathnote Vulnhub. Получение доступа к системе пользователя и суперпользователя root. Часть 7 - 33

и получил (и скачал) искомые файлы notes.txt и user.txt

curl http://192.168.72.13/wordpress/wp-content/uploads/2021/07/notes.txt
curl
http://192.168.72.13/wordpress/wp-content/uploads/2021/07/user.txt
wget http://192.168.72.13/wordpress/wp-content/uploads/2021/07/notes.txt
wget
http://192.168.72.13/wordpress/wp-content/uploads/2021/07/user.txt

Атака на уязвимую систему Deathnote Vulnhub. Получение доступа к системе пользователя и суперпользователя root. Часть 7 - 34
Атака на уязвимую систему Deathnote Vulnhub. Получение доступа к системе пользователя и суперпользователя root. Часть 7 - 35
Атака на уязвимую систему Deathnote Vulnhub. Получение доступа к системе пользователя и суперпользователя root. Часть 7 - 36

6) Получение доступа к системе взломом при помощи брутфорс-атаки

На сервере имеется открытый порт 22 со службой ssh

Атака на уязвимую систему Deathnote Vulnhub. Получение доступа к системе пользователя и суперпользователя root. Часть 7 - 37

Проведем его брутфорс гидрой

hydra -L user.txt -P notes.txt ssh://192.168.72.13

Атака на уязвимую систему Deathnote Vulnhub. Получение доступа к системе пользователя и суперпользователя root. Часть 7 - 38

Имеется пользователь l с паролем death4me

Зайдем по ssh с этими данными

ssh l@192.168.72.13 (естественно пароль death4me)

Проверим директорию командой pwd и ее содержимое командой ls.

Все! доступ к системе!

Все! доступ к системе!

Есть файл user.txt, его содержимое я вывел командой cat

Атака на уязвимую систему Deathnote Vulnhub. Получение доступа к системе пользователя и суперпользователя root. Часть 7 - 40

Это похоже на старый язык програмирования brainfuck

Я расшифровал и перевел

Атака на уязвимую систему Deathnote Vulnhub. Получение доступа к системе пользователя и суперпользователя root. Часть 7 - 41
Атака на уязвимую систему Deathnote Vulnhub. Получение доступа к системе пользователя и суперпользователя root. Часть 7 - 42

Перешел в каталог /home (cd /home), вывел его содержимое (ls), и обнаружил папку kira. Вывел ее содержимое (kira.txt), и пробовал прочитать - нет прав.

Атака на уязвимую систему Deathnote Vulnhub. Получение доступа к системе пользователя и суперпользователя root. Часть 7 - 43

Кстати говоря прав пользователя l достаточно, чтобы просмотреть содержимое файла /etc/passwd

Атака на уязвимую систему Deathnote Vulnhub. Получение доступа к системе пользователя и суперпользователя root. Часть 7 - 44

7) Повышение привелегий

Снова поискав ответы в сети, я нашел подсказку - необходимое мне лежит в папке /opt. Перешел в папку (cd /opt) внутри папки снова директория L перешел в нее (cd L), далее в папку fake-notebook-rule, и внутри него два файла - hint и case.wav.

Атака на уязвимую систему Deathnote Vulnhub. Получение доступа к системе пользователя и суперпользователя root. Часть 7 - 45

Вывел их содержимое (cat hint; cat case.wav)

Атака на уязвимую систему Deathnote Vulnhub. Получение доступа к системе пользователя и суперпользователя root. Часть 7 - 46

Первое подсказка - использовать cyberchef. Второе - похоже на хекс

Ищу сайт, захожу на первый, вставляю шифр

Атака на уязвимую систему Deathnote Vulnhub. Получение доступа к системе пользователя и суперпользователя root. Часть 7 - 47

После чего дешифрую hex

Атака на уязвимую систему Deathnote Vulnhub. Получение доступа к системе пользователя и суперпользователя root. Часть 7 - 48

А после дешифрую base64

Атака на уязвимую систему Deathnote Vulnhub. Получение доступа к системе пользователя и суперпользователя root. Часть 7 - 49

Очевидно, что пароль для пользователя kira - kiraisevil. Псоле чего, выхожу с сервера под пользователем l, и просто вхожу с этими новыми данными под именем пользователя kira

ssh kira@192.168.72.13 (естественно пароль kiraisevil)

Атака на уязвимую систему Deathnote Vulnhub. Получение доступа к системе пользователя и суперпользователя root. Часть 7 - 50

И снова доступ, но под другим пользователем

Проверяю текущую директорию (pwd) - /home/kira, просматриваю содержимое (ls), теперь читаю файл kira.txt - cat kira.txt

Атака на уязвимую систему Deathnote Vulnhub. Получение доступа к системе пользователя и суперпользователя root. Часть 7 - 51

Снова шифр, похож на base64. Копирую, дешифрую

Атака на уязвимую систему Deathnote Vulnhub. Получение доступа к системе пользователя и суперпользователя root. Часть 7 - 52

Ничего особенного - информация о пользователях L и Misa. После чего я решаю повысить привелегии до root:

sudo -s

и пароль kiraisevil

Атака на уязвимую систему Deathnote Vulnhub. Получение доступа к системе пользователя и суперпользователя root. Часть 7 - 53

Root-доступ есть!

Кстати, получив root-права я прочитал файл /etc/shadow. В этом файле в зашифрованном виде (в виде хэшей) содержатся пароли учетных записей

cat /etc/shadow

Атака на уязвимую систему Deathnote Vulnhub. Получение доступа к системе пользователя и суперпользователя root. Часть 7 - 54

Последнее что осталось перейти в папку /root - cd /root. Проверил содержимое (ls опять же), обнаружен файл root.txt

Атака на уязвимую систему Deathnote Vulnhub. Получение доступа к системе пользователя и суперпользователя root. Часть 7 - 55

После чего читаю его содержимое - cat root.txt

Атака на уязвимую систему Deathnote Vulnhub. Получение доступа к системе пользователя и суперпользователя root. Часть 7 - 56

Финал!

Таким образом, я просканировал сервер (локальный конечно же) обнаружил уязвимость в веб-приложении, провел энумерацию веб-приложения и обнаружил данные об учетных записях. Использовал эти данные для взлома, взломал систему, зашел в нее и нашел данные о привелегированном пользователе, что дало мне возможность повысить привелегии.

А на этом у меня сегодня все, уважаемые читатели Хабра, до новых встреч!

Автор: KoshelevGeorge1989

Источник

* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js