使用 msfvenom 进行编码后,我的工具无法正常工作。为什么?

信息安全 编码
2021-08-15 14:09:43

我尝试使用 Metasploit Framework 的 msfvenom 对我用 Ruby 开发的工具进行编码,我成功了。我的源代码已完全编码。但是,当我尝试使用我的编码工具时,我遇到了一个错误“找不到命令”。问题是什么?与编码的有效载荷一样,为什么我的编码工具不起作用?这是我遵循的步骤:

cat Desktop/lugat | msfvenom -p - -a x86 --platform linux -e x86/shikata_ga_nai -f raw > /home/hefese/Desktop/test
./test -h

输出:

./test: line 1: buf: command not found
./test: line 2: \xb8\xad\x4e\x1d\x84\xdb\xc5\xd9\x74\x24\xf4\x5d\x33\xc9: command not found

[...]

./test: line 2961: \xb6\x03: command not found

谁能解释我的错?

提前致谢。

3个回答

shikata_ga_nai用于编码 shellcode(也就是处理器要执行的指令)。您不能用它处理/编码任意数据(而 ruby​​ 源只是数据)。

您需要更改 msfvenom 的 -f 参数,因为您将脚本保存为原始格式,只需使用 ruby​​ 格式即可。这是命令:

cat Desktop/lugat | msfvenom -p - -a x86 --platform linux -e x86/shikata_ga_nai -f ruby > /home/hefese/Desktop/test ./test -h

尝试完全删除 -f 标志和参数。它将默认为原始输出,它将被写入您指定的任何文件。

这对我有用很多次。