Meterpreter в деле

  • Автор темы Voodley
  • Дата начала
  • Просмотров 5669 Просмотров
301
485
7 Июн 2016
Сегодня мы опять поговорим о такой прекрасной вещице, как Metasploit Framework. А если точнее, то о пасынке MSF – «нагрузке» Meterpreter. Это реально advanced payload с учетом всего, что туда вложено, а также того, что мы можем сделать своими ручками.
Что это такое?
Meterpreter – это нагрузка, задуманная в контексте MSF как гибкая, расширяемая, полнофункциональная и унифицированная основа для пост-эксплуатации, как альтернатива классическим шеллкодам. Вполне резонный вопрос – в чем проблема стандартного шелла (/bin/sh, cmd.exe)? Ведь мы с детства только и стремимся к тому, чтобы получить его :). Косяков с ним, на самом деле, много. Во-первых, чаще всего «получение доступа к шеллу» – это порождение нового процесса – самого шелла. Это очень заметно – косяк. Во-вторых, всяческие IDS четко отлавливают «переписку» с шеллом: команды стандартны, все – плэйн-текстом, так что задетектить и пресечь – не проблема. В-третьих, если процесс ограничен chroot’ом, то есть смещена рутовая директория, то до шелла нам уже просто так не добраться. В-четвертых, шеллы, в зависимости от ОС, заметно отличаются между собой как командами с их форматом, так и набором стандартных возможностей. К тому же наши возможности ограничены установленными у жертвы программами. Иначе не возникало бы стандартных вопросов типа «а как, имея доступ через виндовый шелл, закачать жертве файлик?». В общем-то, создатели MP и решили эти проблемы.

Можно ли обнаружить?
Так как MP работает только в памяти и ничего не пишет на жесткий диск, то раньше нельзя было задетектить его антивирусами . Насколько сильно изменилась ситуация сейчас – мне трудно сказать. Но пара попсовеньких антивирей, с которыми я сталкивался недавно, не обнаруживали MP в памяти. В то же время появилось несколько проектов, которые разработали методики обнаружения MP и выпустили по ним небольшие концепт-тулзы. Например, питоновская тулза antimeter2 с mertsarica.com отлично справляется с обнаружением MP.


Как всё работает

meterpreter-6.png


Указание значений RHOST и PAYLOAD (начинка)




Эксплуатация цели (Windows XP)

Итак, мы, наконец, совершили атаку. Теперь начинается интересная часть.

Использование функций начинки
Чтобы посмотреть список опций, предоставляемых meterpreter, введите ?.

meterpreter>?



Знакомство с жертвой
Теперь давайте воспользуемся базовой командой sysinfo, чтобы получить информацию о системе, к которой мы только что получили доступ. Кроме этого, выполните getuid, чтобы узнать, от имени какого пользователя вы зашли в систему и какими привилегиями обладаете. Вдобавок, getpid покажет вам, какой процесс использует ваша начинка, а ps продемонстрирует список всех процессов, запущенных в системе жертвы.

meterpreter>sysinfo

meterpreter>getpid

meterpreter>getuid

meterpreter>ps



Примечание: На создание этих панелек с кодом уходит немало времени, так что в будущем я буду просто выделять код курсивом (такой уж я ленивый).

Несколько интересных команд meterpreter
Воспользовавшись командой run checkvm, вы сможете узнать, является ли ваша цель виртуальной машиной.

Чтобы получить список всех приложений, установленных на компьютере жертвы, введите run get_application_list.

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





Заключение
Как вы увидели, Meterpreter – очень мощная основа, особенно с учетом того, что он развивается и обрастает новыми возможностями, а также за счет тех расширений, которые к нему можно добавить. А если к этому добавить ваши прямые руки! Так что творить – чудесно, а ученье – свет. Дерзай :).