Статья SMB протокол.

Всем привет! В этой статье речь пойдет о таком протоколе как SMB.

upload_2016-9-28_23-15-22.png


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

Принцип работы SMB.

Протокол SMB (Server Message Block) работает на прикладном и представительском уровне модели OSI. И используется для удаленного доступа к файлам, принтерам, Serial-портам, а так же к другим сетевым взаимодействиям между узлами в локальной сети.

upload_2016-9-28_22-43-39.png


upload_2016-9-28_23-28-12.png


Советую прочесть все это в развернутом виде т.к. я коснулся только основ.
Приступим к изучению SMB.
Необходимо узнать поддерживает ли сканируемый хост протокол SMB.

Обнаружение протокола SMB 2.0

> use auxiliary/scanner/smb/smb2

> msf exploit (smb2)>set rhosts 192.168.0.XXX

> msf exploit (smb2)>set rport 445

> msf exploit (smb2)>exploit

upload_2016-9-28_23-4-41.png


После выполнения команды exploit видим информацию об открытом SMB протоколе.

Определение версии SMB.

Вводим последовательно следующее:

> use auxiliary/scanner/smb/smb_version

> msf exploit (smb_version)>set rhosts 192.168.0.ХХХ

> msf exploit (smb_version)>exploit

upload_2016-9-28_23-5-19.png


Получаем информацию о работающей версии SMB, на нашем хосте.

SMB Share Enumeration
Данный модуль определяет, куда обеспечивается общий доступ службой SMB и что доступно для чтения/записи. Он так же собирает информацию о типах доступа, файлах, каталогах, временных отметках и т.д. По умолчанию запрос делается для того, чтобы получить информацию об общем доступе, но если это не получится, то можно вернуться к работе с SRVSVC.

Используем:

> use auxiliary/scanner/smb/smb_enumshares

> msf exploit (smb_enumshares)>set rhosts 192.168.0.104

> msf exploit (smb_enumshares)>set smbuser Anon

> msf exploit (smb_enumshares)>set smbpass 3257395756

> msf exploit (smb_enumshares)>exploit

upload_2016-9-28_23-6-18.png


По результату видны названия моих дисков, директорию в которую установлена ОС, есть общий доступ к стандартным ресурсам. И работает специальный ресурс IPC$ (Inter Process Communication) который предназначен для создания именованных каналов, которые компьютеры в сети используют для обмена различной служебной информацией (кроме того, именованные каналы применяются для дистанционного управления сервером).

SMB User Enumeration (SAM EnumUsers)

Определяем, какие существуют локальные пользователи с помощью службы SAM RPC

> use auxiliary/scanner/smb/smb_enumusers

> msf exploit (smb_enumusers)>set rhosts 192.168.0.ХХХ

> msf exploit (smb_enumusers)>set smbuser Anon

> msf exploit (smb_enumusers)>set smbpass 3288575983

> msf exploit (smb_enumusers)>exploit

upload_2016-9-28_23-7-57.png


Здесь видно, что он один.

SMB SID User Enumeration (LookupSid)

Этот модуль позволит определить какие пользователи существуют путем брутфорсинга SID lookups. Он перечисляет как локальные, так и учетные записи домена, установив ACTION в LOCAL и DOMAIN. (Тут речь идет о значениях реестра)

> use auxiliary/scanner/smb/smb_lookupsid

> msf exploit (smb_lookupsid)>set rhosts 192.168.0.104

> msf exploit (smb_lookupsid)>set smbuser Anon

> msf exploit (smb_lookupsid)>set smbpass 3838983983

> msf exploit (smb_lookupsid)>exploit

upload_2016-9-28_23-9-21.png


Этим способом вы можете найти даже тех пользователей, о существовании которых вы не знали.
Теперь, можно просканировать удаленный хост с помощью Nmap. Результат покажет, что порт, на котором работает SMB, открыт, он находится под номером 445. Используя его, мы собрали всю информацию.

> nmap -sV 192.168.0.104


upload_2016-9-28_23-10-7.png


Открытые порты 445 и 139 являются самыми атакуемыми, на них чаще всего обращаются зараженные машины.

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

Продолжение следует…
 
Последнее редактирование:
W

woweb

С самого начала ничего из написанных комманд не работают!
 
W

woweb

Хоть бы один реальный пример на реальной машине...а это так туфта...писать можно все что угодно...и здесь 95% дрыстатни беспонтовой, устаревшей...работающей только с хп
 

Vander

CodebyTeam
Gold Team
16.01.2016
1 420
4 353
BIT
2
Хоть бы один реальный пример на реальной машине...а это так туфта...писать можно все что угодно...и здесь 95% дрыстатни беспонтовой, устаревшей...работающей только с хп
Вот именно, писать можно все, что угодно:) А вы попробуйте включить мозг, и применить это к реальной машине, хотя в этих примерах используются как раз реальные машины, и не XP. Это, не есть, инструкция как взломать все написав 2-3 слова в командной строке.
 
Последнее редактирование:
  • Нравится
Реакции: Ishikawa
W

woweb

Вот именно, писать можно все, что угодно:) А вы попробуйте включить мозг, и применить это к реальной машине, хотя в этих примерах используются как раз реальные машины, и не XP. Это, не есть, инструкция как взломать все написав 2-3 слова в командной строке.
ХП ломаются без проблем а вот от 7 и выше ни в какую...
Сразу бы и сказал что это не инструкци...а что тогда?
 
Мы в соцсетях:

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