我已经编写了一些我想使用 Metasploit 的 msfvenom 编码的自定义 shellcode。当 msfencode 仍在工作时,这是命令的方式:
$ echo -ne “\x31…\x80” | sudo msfencode -a x86 -t c -e x86/jmp_call_additive
“使用 x86/jmp_call_additive 编码器将 shellcode 传送到架构 x86 的 msfencode,输出为 ac 数组”
现在我想做同样的事情,除了 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 位的虚拟机上运行它。谢谢你的帮助