根据这段视频
他使用msfpayload & msfencode来生成cmd命令的外壳代码。
msfpayload windows/exec cmd=calc.exe R | msfencode -e x86/alpha_mixed -t c -v但是现在,metasploit团队将msfpayload &ms芬代码更改为msfvenom,因此我将上面的代码转换为msfvenom:
msfvenom -a x86 --platform windows -p windows/exec cmd=calc.exe -e x86/alpha_mixed -f c已生成外壳代码,但在cmd上执行命令后未启动计算器。我的毒液密码怎么了?感谢您的阅读。
更新:在视频中,他使用了一个简短的外壳代码。他在描述中公开了外壳代码,但没有展示如何生成它。我听从了他的指示,得到了一个很长的密码。当我使用他的短short代码时,它是有效的,但在我的长short代码中没有发生同样的情况。
发布于 2022-06-28 09:44:07
问题是,在msfvenom中使用-f c将导致shellcode代码作为不能在命令行中直接执行的输出。外壳代码需要一个包装程序,它将把外壳代码放入内存并执行它。然后,需要将该程序编译为可执行文件。
用c++编写的示例包装函数:
#include <stdio.h>
unsigned char code[] = "\xYourShellCode";
int main(int argc, char **argv) {
int foo_value = 0;
int (*foo)() = (int(*)())code;
foo_value = foo();
printf("%d\n", foo_value);
}相反,如果您只想要一个可执行文件作为输出,您可以尝试如下:
(弹出x64窗口的calc )
msfvenom --platform windows --arch x64 -p windows/x64/exec CMD=calc.exe -b '\x00\x0A\x0D' -f exe -o a.exehttps://stackoverflow.com/questions/42289112
复制相似问题