C0ldd-Box Звіт — ОПИС

EXECUTIVE SUMMARY

Тест на проникнення було проведено з метою виявлення та експлуатації вразливостей на наданій CTF машині та захоплення флагів. Метою було отримати доступ до root через будь-які доступні методи та отримати флаг після експлуатації.

INTRODUCTION

CTF зосереджується на проведенні вправи з тестування на проникнення в кібербезпеці у середовищі “Machine to Boot2Root” Capture The Flag (CTF). Цей тип CTF включає машину або віртуальне середовище, яке спеціально налаштоване з різними вразливостями для того, щоб учасники могли їх виявляти та експлуатувати. Метою є застосування різних методологій та технік для ідентифікації та експлуатації вразливостей, отримання root доступу та “завантаження” машини.

OBJECTIVES

Конкретні цілі проєкту можуть включати:

  • Проведення розвідки та збору інформації про CTF машину.
  • Застосування технік зламу паролів для отримання доступу до облікових записів користувачів.
  • Виявлення та експлуатація вразливостей для підвищення привілеїв для отримання root доступу до машини.
  • Документування всього процесу, включаючи використані методології, виявлені вразливості та рекомендовані заходи.

METHODOLOGY

Протягом проєкту ми використовували різні інструменти, фреймворки та техніки, зокрема:

  • Nmap — інструмент для сканування
  • Wpscan — сканер вразливостей WordPress
  • PHP-reverse-shell — Github
  • NetCat — мережевий інструмент

ACTIVITIES (POC)

Reconnaissance and Scanning Phase

Щоб розпочати своє завдання, спершу потрібно було знайти відкриті порти на IP адресі хоста. Для цього я використав Nmap для сканування IP разом з визначенням версії

nmap 10.10.163.188 -sV

pic

первинне сканування за допомогою nmap

З результатів сканування я дізнався, що сервер coldbox має працюючий apache сервер на порту 80 з версією 2.4.18, яка не має відомих серйозних вразливостей. Тому я вирішив дослідити сайт далі і відкрив його в браузері.

pic

сайт Coldd Box

Під час подальшого дослідження я виявив, що на сайті є сторінка для входу в WordPress, доступ до якої можна отримати прямо з головної сторінки.

pic

сторінка входу в WordPress

Спробував різні стандартні імена користувачів, як root, admin і т. д., але жодне не підходило. Тому я вирішив скористатись сканером для WordPress — wpscan, щоб отримати імена користувачів зі сторінки входу.

wpscan --url 10.10.163.188 --enumerate u --random-user-agent

pic

перерахунок імен користувачів за допомогою wpscan

Завдяки модулю перерахунку імен користувачів в wpscan, мені вдалося знайти кілька імен користувачів, таких як hugo, philip, c0ldd, і я вирішив зосередитися на користувачеві c0ldd, оскільки це був автор сайту, що вказано на головній сторінці. Для цього я використовував wpscan, щоб провести брутфорс паролю користувача c0ldd.

wpscan --url 10.10.163.188 -U c0ldd -P /usr/share/wordlists/rockyou.txt

pic

брутфорс пароля

Після запуску брутфорсера я знайшов пароль користувача c0ldd — 9876543210, для чого я використовував список паролів rockyou. Після того, як отримав пароль, я спробував увійти за допомогою цих даних на сторінці wp-login і успішно увійшов.

pic

панель управління WordPress

Я досліджував панель управління і виявив, що є php файли, які завантажуються на сервері, коли завантажується головна сторінка, і також я зміг редагувати цей файл header.php, який знаходиться в розділі редактора в темах.

Щоб отримати зворотній шелл на мою систему з сервера, я шукав скрипти для зворотного шеллу і знайшов один на GitHub, який містив поля для IP і порту, і змінив їх на своє IP та порт 1234.
і я успішно оновив файл header.php.

pic

оновлення файлу header.php

Для того щоб отримати зворотне з'єднання на мою систему, мені потрібно було слухати на порту 1234, а також сайт повинен був бути перезавантажений, щоб файл header.php був виконаний. Після перезавантаження сайту я зміг отримати зворотне з'єднання на екрані моєї хост-машини.

Для прослуховування порту я використовував інструмент Netcat.

nc -lnvp 1234

pic

отримання зворотного з'єднання

Шелл відкрився як користувач www-data, який є користувачем, що керує файлами веб-додатку, тому я одразу перейшов до директорії /var/www/html/, де знаходились усі конфігураційні файли для сайту на WordPress.

pic

перегляд вмісту директорії сайту

Серед файлів, що були відображені, wp-config.php містив конфігурації бази даних, такі як використовувана база даних, ім'я користувача, а також пароль користувача. Ім'я користувача виявилося c0lld, а пароль для c0ldd — cybersecurity.

pic

аналіз вмісту файлу wp-config

Тепер мені потрібно було переключитися на користувача c0lld, але перед цим потрібно було отримати стабільний шелл для нормальної взаємодії з ним. Для цього я використав Python модуль tty, щоб отримати стабільний шелл. Після цього я зміг переключитися на користувача c0ldd, і файл user.txt у його домашній директорії містив флаг користувача.

python3 -c 'import pty;pty.spawn("/bin/sh")'

pic

доступ до облікового запису користувача c0ldd

Тепер мені потрібно було отримати привілеї суперкористувача, щоб потрапити в директорію root. Для підвищення привілеїв я повинен був дізнатися, які саме привілеї має користувач c0ldd як sudo користувач. Для цього я виконав команду sudo -l і з'ясував, що команди vim, ftp і chmod можна виконувати як sudo користувач. Тому я шукав код для підвищення привілеїв для програми vim на сайті GTFOBins і знайшов наступний код.

sudo vim -c ':!/bin/sh'

Запустивши цей код, я отримав доступ до root, як показано нижче, і після цього я перейшов до директорії root та отримав флаг root.

pic

підвищення привілеїв та флаг root

RESULTS & FINDINGS

Застосувавши описані методи, ми змогли знайти флаги як для root, так і для звичайних користувачів.

флаг користувача: RmVsaWNpZGFkZXMsIHByaW1lciBuaXZlbCBjb25zZWd1aWRvIQ==

флаг root: wqFGZWxpY2lkYWRlcywgbcOhcXVpbmEgY29tcGxldGFkYSE=

Ключові висновки:

  • Сторінка входу в WordPress була доступна публічно, що є небажаним.
  • Для входу використовувався слабкий пароль.

CONCLUSION

Capture The Flag (CTF) забезпечив захоплюючий та складний досвід для мене. Протягом CTF було випробувано різноманітні навички безпеки, зокрема аналіз веб-додатків, оцінка вразливостей, розробка експлойтів і підвищення привілеїв.

Перекладено з: C0ldd-Box WriteUp — REPORT

Leave a Reply

Your email address will not be published. Required fields are marked *