• Курсы Академии Кодебай, стартующие в мае - июне, от команды The Codeby

    1. Цифровая криминалистика и реагирование на инциденты
    2. ОС Linux (DFIR) Старт: 16 мая
    3. Анализ фишинговых атак Старт: 16 мая Устройства для тестирования на проникновение Старт: 16 мая

    Скидки до 10%

    Полный список ближайших курсов ...

CTF CTF. Hack the Necromancer. Part 2

Vander

CodebyTeam
Gold Team
16.01.2016
1 420
4 352
BIT
0
В этой статье продолжим поиск флагов в уязвимой VM Necromancer.

upload_2017-3-3_22-3-53.png


Сохраняем файл talisman, и меняем ему разрешение. Затем запускаем его:

upload_2017-3-3_22-4-10.png


При ответе на вопрос, хотим ли мы одеть талисман, ничего не произошло.

Попробуем отладить этот файл с помощью утилиты - отладчика gdb.

Отладчиком называется программа, которая выполняет внутри себя другую программу. Основное назначение отладчика - дать возможность пользователю в определенной степени осуществлять контроль над выполняемой программой, т.е. определять, что происходит в процессе ее выполнения. Наиболее известным отладчиком для Linux является программа GNU GDB.

> gdb /root/talisman

И получим немного информации о функциях программы:

> info functions

upload_2017-3-3_22-4-32.png


Создадим точку восстановления wearTalisman, потому, что после, нам понадобиться одеть талисман.

> break wearTalisman

> run

Затем перейдем к chantToBreakSpell:

> jump chantToBreakSpell


upload_2017-3-3_22-5-8.png


Нам удалось одеть талисман. Мы получаем наш 4-й флаг и намек повторить слова из флага на UDP порту 31337. Перед этим декодируем из base64 в человекопонятный текст – blackmagic

upload_2017-3-3_22-5-31.png


Получаем 5-й флаг и информацию о директории, которую следует посетить:

> 192.168.0.109/thenecromancerwillabsorbyoursoul

Слово necromancer – является ссылкой, которая предлагает нам скачать файл, сохраним его:

upload_2017-3-3_22-6-30.png


Внизу страницы, так же есть подсказка, указывающая на UDP порт 161 (используется для SNMP) В первую очередь займемся анализом самого файла, для этого необходимо использовать Wireshark. Нужно будет два раза распаковать архив, для того, чтобы добраться до файла с расширением .cap

upload_2017-3-3_22-6-48.png


При рассмотрении файла, выясняется, что это дамп сигнализации в стандарте IEEE 802.11, а значит, имеет место быть Wi-Fi, возможно это хэндшейк.

upload_2017-3-3_22-7-3.png


В общем, попробуем расковырять это с помощью aircrack-ng и полюбившимся словарем rockyou.txt.

> aircrack-ng /root/ necromancer.cap -w /usr/share/wordlists/rockyou.txt

upload_2017-3-3_22-7-22.png


Спустя немного времени, обнаруживается пароль.

upload_2017-3-3_22-7-49.png


Итак, мы имеем на текущий момент:

· пароль – death2all

· Вероятно открытый 161 порт. Здесь, сделаю отступление:

upload_2017-3-3_22-8-13.png


SNMP— стандартный интернет-протокол для управления устройствами в IP-сетях на основе архитектур TCP/UDP. К поддерживающим SNMP устройствам относятся маршрутизаторы, коммутаторы, серверы, рабочие станции, принтеры, модемные стойки и другие.

Порт/ID: 161/UDP,162/UDP

Для использования данного порта, а точнее для взаимодействия с ним, нами будет использоваться Net-SNMP — представляет собой набор программного обеспечения для развёртывания и использования протокола SNMP (v1, v2c и v3 и протокол AgentX субагента). Он поддерживает IPv4, IPv6, IPX, AAL5, сокеты доменов UNIX и других протоколов.

Приложения, входящие в Net-SNMP:

· encode_keychange — производит изменение ключа KeyChange в SNMPv3.

· snmptranslate — перевод MIB OID имён между цифровой и текстовой формами.

· snmpget — взаимодействует с сетью, используя SNMP GET запросы.

· snmpgetnext — взаимодействует с сетью, используя SNMP GetNext запросы.

· snmpbulkget — взаимодействует с сетью, используя SNMP GETBULK запросы.

· snmpwalk — получает поддерево управления значений с помощью SNMP GetNext запросов.

· snmpbulkwalk — получает поддерево управления значений с помощью SNMP GETBULK запросов.

· snmpset — взаимодействует с сетью, используя SNMP SET запросы.

· snmptrap — посылать SNMP траппы или информационные сообщения.

· snmpd — SNMP агент, который отвечает на запросы SNMP для данного хоста.

· snmptrapd — демон SNMP, прослушивает SNMP траппы или информационные сообщения, регистрируя их, или воздействует на них.

· snmptest — взаимодействует с сетью, используя SNMP запросы.

· mib2c — утилита преобразования MIB-файлов, которая позволяет перевести MIB-структуру в другие формы, такие как C-код

· tkmib — Perl/Tk интерактивный графический браузер MIB для SNMP.

Продолжаем, с помощью утилиты – snmpwalk:

> snmpwalk-c death2all -v 1 192.168.0.103

upload_2017-3-3_22-9-37.png


Результат – «Закрыто». Пробуем открыть с помощью – snmpset.

> snmpset -c death2allrw -v 1 192.168.0.103 iso.3.6.1.2.1.1.6.0 s Unlocked


upload_2017-3-3_22-10-4.png


Строка должна принять вид «Unlocked» Теперь выполняем предыдущую команду:

> snmpwalk-c death2all -v 1 192.168.0.103

upload_2017-3-3_22-10-37.png


Счастье, то какое, 7-ой флаг и подсказка, явно указывающая на SSH порт.

7-ой флаг – это хэш MD5. Вытащим из него информацию:

upload_2017-3-3_22-11-1.png



В результате получен – demonslayer, который возможно, является паролем или логином к SSH. Пробуем:

> ssh 192.168.0.103

upload_2017-3-3_22-15-21.png


В качестве пароля он не подошел, значит это логин. Для поиска пароля воспользуемся брутфорсом по словарю rockyou.txt и Metasploit Framework.

> msfconsole

> use auxiliary/scanner/ssh/ssh_login

> set rhosts 192.168.0.103

> set username demonslayer

> set pass_file /usr/share/wordlists/rockyou.txt

> run

upload_2017-3-3_22-16-18.png


Используя эти учетные данные, устанавливаем соединение на 22-ом порту:

> ssh demonslayer@192.168.0.103


upload_2017-3-3_22-20-13.png


Осмотримся вокруг и обнаруживаем 8-ой флаг, заглянем внутрь.

> ls –a

> cat flag8.txt

Defend
yourself! – Стоит рассматривать как localhost на 777 порту.

> nc localhost 777


upload_2017-3-3_22-22-33.png


Теперь необходимо ответить на несколько вопросов.

Первый вопрос - Where do the Black Robes practice magic of the Greater Path?

Ответ – Kelewan.

Второй вопрос- Who did Johann Faust VIII make a deal with?

Ответ – Mephistopheles.

Третий вопрос - Who is tricked into passing the Ninth Gate?

Ответ – Hedge.

Попутно собираем флаги.

upload_2017-3-3_22-24-7.png


Последнее предложение дает подсказку. Осмотримся внимательнее еще раз. Вернемся на шаг назад.

> ls –la

> cat .smallvile

upload_2017-3-3_22-24-44.png


Сказано, что мы получили великую силу, значит ли это, что можно использовать sudo?

> sudo –l

upload_2017-3-3_22-26-0.png


Значит. Ну и следуя инструкции, заглянем в последний, 11-й флаг на этой машине.

> sudo /bin/cat /root/flag11.txt


upload_2017-3-3_22-26-52.png


На этом и заканчивается прохождение этой VM. Спасибо за внимание.

Первая часть тут.
 

Вложения

  • upload_2017-3-3_22-22-48.png
    upload_2017-3-3_22-22-48.png
    65,9 КБ · Просмотры: 598
Последнее редактирование:
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!