我有一个小问题。
假设我在控制台应用程序中有以下代码:
printf("Enter name: ");
scanf("%s", &name);
我想利用此漏洞并输入以下shell代码(MessageboxA):
6A 00 68 04 21 2F 01 68 0C 21 2F 01 6A 00 FF 15 B0 20 2F 01
如何通过控制台输入我的shell代码(十六进制值)?
如果我按原样输入输入,它会将数字视为字符而不是十六进制值。
非常感谢。
答案 0 :(得分:2)
您可以将stdin用作具有所需内容的文件,或使用echo命令。
假设你的shell代码是AA BB CC DD(显然这不是一个有效的shellcode):
echo -e "\xAA\xBB\xCC\xDD" | prog