我已经编写了一些我想用Metasploit的msfvenom进行编码的自定义shellcode。当msfencode仍在工作时,这就是命令的方式:
$ echo -ne “\x31…\x80” | sudo msfencode -a x86 -t c -e x86/jmp_call_additive
“使用x86 / jmp_call_additive编码器将shellcode编码为msfencode for architecture x86,输出为c数组”
现在我想用msfvenom做同样的事情,所以我试过了:
$ echo -ne "\x31...\x80" | sudo msfvenom -e x86/jmp_call_additive -a x86 -t c
但是我收到以下错误消息:
Attempting to read payload from STDIN...
You must select a platform for a custom payload
我认为给-a标志指定了正确的平台/架构,我也试过--platform代替-a但我仍然得到相同的错误信息。
我在使用Ubuntu 32位的虚拟机上运行它。谢谢你的帮助
答案 0 :(得分:0)
$ echo -ne “\x31...x80" | sudo msfvenom -e x86/jmp_call_additive -a x86 -p - --platform linux -f c
“使用x86架构上的x86 / jmp_call_additive编码器将自定义shellcode传输到msfvenom,并在具有c阵列输出格式的Linux平台上使用自定义有效负载"