Расматривая тему уязвимостей Windows систем мы продолжим расказ о атаках направленных на корпоративные сети затронутой ранее. Удивительное дело, но теперь техника Pass-the-Hash работает и для RDP-подключений. То есть мы можем аутентифицироваться с помощью NTLM-хеша пользователя при подключении по RDP!
С другой стороны, я недавно узнал, что, оказывается, не все люди в курсе, что это такое — PtH. А потому кратенько расскажу про это дело.
Итак, начнем с того, что в ОС Windows многопользовательская система и потому ей надо хранить пароли пользователей. Но хранить их в открытом тексте не секьюрно, а потому их хранят захешироваными. Хеширование — это однонаправленная функция, по результату которой нельзя узнать входное значение (то есть нельзя «расшифровать»). NT-хеш — это тот формат, в котором винда хранит пароли. Причем подчеркну, что даже если это отдельный хост или домен — формат хранения один.
Второй важный момент — это глубокая поддержка Single Sign-on («единая» автоматическая аутентификация) виндой на базе NTLM-аутентификации. В ней не передается в открытом виде ни пароль, ни сам NT-хеш. Алгоритм такой: сначала клиент посылает запрос на подключение, потом сервер возвращает ему случайно сгенеренную последовательность (challenge). После этого клиент берет хеш-пользователя, соединяет c challeng’eм, хеширует и отправляет на сервер. Тот, в свою очередь, делает то же самое. И если хеши совпадают, то пользователь верный.
Выводом здесь будет то, что NT-хеш является полным эквивалентом пароля пользователя. Ведь почти все сервисы, которые есть в экосистеме Windows, поддерживают NTLM-аутентификацию. Например, HTTP, SMB (через который мы можем подключаться и управлять хостом удаленно), SMTP, FTP, подключения к SQL-серверу и так далее.
[ad name=»Responbl»]
Таким образом, захакав какой-то хост в домене, мы можем получить хеши пользователей из памяти и дальше ходить по сети, аутентифицируясь везде с ними. Это техника и называется Pass-the-Hash. В итоге защита домена складывается, как карточный домик.
Исключением всегда был протокол RDP. Раньше можно было подключиться, только введя пароль. И это составляло проблему, так как очень часто бывают закрытые сегменты (DMZ, например) в корпоративной сети, где на файрволе разрешен доступ только RDP (чтобы админы могли админить).
Так вот, в Windows 8.1 и 2012 R2 по умолчанию теперь есть поддержка аутентификации с хешем. Но изначально у микрософта эта функция называется Restricted Admin Mode, и о «поддержке» PtH они, конечно, не говорят.
А потому давайте скажем спасибо ресерчерам с labs.portcullis.co.uk за то, что они поведали миру всю правду (подробности, видеосмотри там же). Теперь коротко о практике. Все, что нам нужно для подключения, — результат трудов FreeRPD Project, то бишь опенсорсный RDP-клиент (по умолчанию входит в Kali). После публикации исследования они внедрили поддержку PtH прямо в него. А потому для подключения нам требуется следующая строка в консоли:
xfreerdp /d:domain_name /u:Administrator/pth:8846F7EAEE8FB117AD06BDD830B7586C /v:192.168.0.1
где после /d: — имя домена,
после /u: — имя пользователя,
после /pth: —хеш,
после /v: — IP сервера.
Все просто.
И еще одна тонкость. Данная функция (Restricted Admin) работает только для администраторов. То есть залогиниться под юзерами из группы RDP Users не получится. Но невелика потеря!
3 comments On Взлом RDP Windows с помощью Pass-the-Hash техники.
Осталась фигня, где-то взять хэш пароля администратора… Вот уж взлом, так взлом …
«Вот уж взлом, так взлом.» А вот если подумать попали вы в сетку сняли мимкатцом хешики с машины. Есть у вас хешик администратора и другие пк вы рядом видите, а сессиию поднять с этим хешиком не можете фаер режет, хоть пас то хеш атака проходит, а рдп есть открытый и вам бы им воспользоваться но виндовый клиент аутентифицироваться по хешу не дает. Так что по старайтесь по осторожнее с высказываниями
А что если пользователь Администратор в системе отключен? Это не имеет значения? Или имеет?
Я видел комп, взломанный по RDP. Пользователь Администратор — встроенная учетная запись (был отключен), рядом обычный пользователь появился Администратор, еще появился системный пользователь RobotMachine, которого не было возможности удалить и обычный пользователь 123 с админскими правами. При этом был отключен nod32 и пользователь, под которым изначально работал человек, был удален.
Кто-нибудь знает что это за способ взлома?