Категория > Новости > HTB Pit. Находим и эксплуатируем службу SNMP - «Новости»

HTB Pit. Находим и эксплуатируем службу SNMP - «Новости»


7-10-2021, 00:00. Автор: Калерия
Hack The Box.

warning


Под­клю­чать­ся к машинам с HTB рекомен­дует­ся толь­ко через VPN. Не делай это­го с компь­юте­ров, где есть важ­ные для тебя дан­ные, так как ты ока­жешь­ся в общей сети с дру­гими учас­тни­ками.



 

Разведка


 

Сканирование портов


До­бав­ляем IP машины в /etc/hosts:


10.10.10.241 pit.htb

И запус­каем ска­ниро­вание пор­тов.



Справка: сканирование портов


Ска­ниро­вание пор­тов — стан­дар­тный пер­вый шаг при любой ата­ке. Он поз­воля­ет ата­кующе­му узнать, какие служ­бы на хос­те при­нима­ют соеди­нение. На осно­ве этой информа­ции выбира­ется сле­дующий шаг к получе­нию точ­ки вхо­да.


На­ибо­лее извес­тный инс­тру­мент для ска­ниро­вания — это Nmap. Улуч­шить резуль­таты его работы ты можешь при помощи сле­дующе­го скрип­та.


ports=$(nmap -p- --min-rate=500 $1 | grep^[0-9] | cut -d '/' -f 1 | tr 'n' ',' | sed s/,$//)nmap -p$ports -A $1

Он дей­ству­ет в два эта­па. На пер­вом про­изво­дит­ся обыч­ное быс­трое ска­ниро­вание, на вто­ром — более тща­тель­ное ска­ниро­вание, с исполь­зовани­ем име­ющих­ся скрип­тов (опция -A).



Ре­зуль­тат работы скрип­та

Ви­дим три откры­тых пор­та: 22 (служ­ба SSH), 80 (веб‑сер­вер nginx 1.14.1) и 9090 (тоже веб‑сер­вер). Начина­ем с веба, пос­коль­ку на SSH без учет­ки обыч­но делать нечего, а брут­форсом машины с HTB не про­ходят­ся.


Глав­ная стра­ница pit.htb
Глав­ная стра­ница pit.htb, порт 9090

Но на http://pit.htb/ нас встре­чает стра­ница nginx, а на пор­те 9090 — фор­ма авто­риза­ции CentOS Linux. Как вид­но из ска­на Nmap, на пор­те 9090 мы можем получить еще одно домен­ное имя — dms-pit.htb (поле сер­тифика­та commonName). Закиды­ваем и этот домен в /etc/hosts.


10.10.10.241 dms-pit.htb

Гля­нем, что там.


HTB Pit. Находим и эксплуатируем службу SNMP - «Новости»
Глав­ная стра­ница сай­та dms-pit.htb

Увы, ничего осо­бен­но весело­го — нас встре­чает ошиб­ка 403.



Справка: сканирование веба c gobuster


Од­но из пер­вых дей­ствий при тес­тирова­нии безопас­ности веб‑при­ложе­ния — это ска­ниро­вание методом перебо­ра катало­гов с целью поис­ка скры­той информа­ции и недос­тупных обыч­ным посети­телям фун­кций. Для это­го мож­но исполь­зовать прог­раммы вро­де dirsearch и dirb. Но я обыч­но пус­каю в ход более быс­трый gobuster.


При запус­ке исполь­зуем сле­дующие парамет­ры:




  • dir — ска­ниро­вание дирек­торий и фай­лов;


  • -t — количес­тво потоков;


  • -u — URL-адрес для ска­ниро­вания;


  • -w — сло­варь для перебо­ра;


  • --timeout — вре­мя ожи­дания отве­та.


По­луча­ются вот такие коман­ды:


gobuster dir -t 128 -uhttp://pit.htb -w/usr/share/wordlists/dirbuster/directory-list-lowercase-2.3-medium.txt --timeout 30s
gobuster dir -t 128 -uhttp://dms-pit.htb -w/usr/share/wordlists/dirbuster/directory-list-lowercase-2.3-medium.txt --timeout 30s


Но и это нам не помога­ет, никако­го кон­тента мы не находим. Тог­да я решил сос­тавить кар­ту единс­твен­ного дос­тупно­го нам сай­та, за который отве­чает порт 9090. Перех­ватыва­ем зап­рос в Burp Proxy и в кон­текс­тном меню выбира­ем Engagement tools → Discover content. Ука­зыва­ем глу­бину ска­ниро­вания, инте­ресу­ющие нас рас­ширения фай­лов и бэкапов. Спус­тя некото­рое вре­мя мы получим кар­ту сай­та.


Кар­та сай­та на пор­те 9090

То­же ничего инте­рес­ного, но зато мы узна­ли, что исполь­зует­ся Cockpit. В этой CMS был най­ден экс­пло­ит, при­водя­щий к RCE, но у меня он не отра­ботал. Я даже рас­терял­ся, неуже­ли нуж­но реаль­но бру­тить SSH?! Но в моем чек‑лис­те еще оста­валась неот­мечен­ной гра­фа ска­ниро­вания пор­тов UDP...


 

Точка входа


 

Сканирование SNMP


За­пус­каем ска­ниро­вание наибо­лее веро­ятных пор­тов UDP:


sudo nmap --min-rate=1000 -sU -p161,162,10161,10162 pit.htb
Глав­ная стра­ница сай­та

В резуль­тате находим служ­бу SNMP на пор­те 161. SNMP — это прос­той про­токол управле­ния сетью, исполь­зуемый для монито­рин­га устрой­ств (нап­ример, мар­шру­тиза­торов, ком­мутато­ров, прин­теров). Тут сле­дует сра­зу объ­яснить два важ­ных понятия:




  • MIB (Management Information Base) — база дан­ных информа­ции управле­ния, хра­нящая информа­цию обо всех объ­ектах (парамет­рах и нас­трой­ках) устрой­ства;


  • OID (Object IDentifier) — чис­ловой иден­тифика­тор объ­екта в дереве MIB.


При работе с уда­лен­ной сис­темой по SNMP все зап­росы про­исхо­дят через OID, отра­жающий положе­ние объ­екта в дереве объ­ектов MIB. Но что­бы получить все стро­ки, нам сна­чала нуж­но прой­ти сво­еоб­разную аутен­тифика­цию, ука­зав стро­ку‑иден­тифика­тор сооб­щес­тва. Но так как мы ее не зна­ем, ее нуж­но переб­рать, к при­меру с помощью hydra. Переби­рать будем по сло­варю из набора Seclists.


hydra -P/usr/share/seclists/Discovery/SNMP/common-snmp-community-strings.txt pit.htb snmp
Пе­ребор стро­ки community

Все OID сис­темы мож­но получить, прос­каниро­вав устрой­ство сле­дующей коман­дой:


snmpbulkwalk -On -r1 -v2c -cpublic pit.htb 1
Дан­ные, получен­ные из сис­темы
Дан­ные, получен­ные из сис­темы
Дан­ные, получен­ные из сис­темы

Мы видим некото­рую слу­жеб­ную информа­цию, получа­ем некото­рые пути (сре­ди них — дирек­тория веб‑сер­вера /var/www/html/), рас­пре­деле­ние памяти и спи­сок сущес­тву­ющих поль­зовате­лей. А путь /var/www/html/seeddms51x/seeddms дает нам знать о соот­ветс­тву­ющем пути на веб‑сер­вере: http://dms-pit.htb/seeddms51x/seeddms.


Фор­ма авто­риза­ции SeedDMS

Нас встре­чает фор­ма авто­риза­ции SeedDMS.



Перейти обратно к новости