python -c 'print "\x90"*52'
中启动时运行python命令GDB
,就像我在执行时要执行的那样:python -c 'print "\x90"*52' | ./myProg
。有谁知道实现此目的的任何方法吗?到目前为止我一直在尝试什么: “ * 52'`run
运行`python -c'print” \ x90“ * 52'`
如果我没有在正确的StackExchange论坛上提问,我深表歉意。谢谢。
编辑
这是一个有用的链接,我发现它在谈论输入有效负载重定向:管理用于有效负载注入的输入?
#1 楼
您不必使用另一个文件,它只是多余的您可以使用“此处字符串”来实现。
在您的示例中,您可以执行以下操作:
r <<< $(python -c "print '\x90'*52")
您可以在此处阅读有关“此处的字符串”的信息
评论
尽管此答案确实提供了解决方案,但我还是很乐意看到一个编辑,它将带我们通过答案并进行实际解释。自然,无需解释python命令本身。谢谢!
– NirIzr
19年2月4日在11:24
#2 楼
我不知道以任何方式将脚本作为run
参数运行。常见的解决方案是从文件重定向输入。
您首先需要运行脚本并保存结果:
python -c "print 'A'*50" > my_file
并将其重定向到gdb
run
。 r < my_file
也来自help run
命令:使用“>”,“ <”或也允许使用“ >>”。
,这意味着您还可以根据需要重定向输出。
评论
我通常将输出保存到文件中并执行“ r file”@Amirag我刚刚尝试了这个。看起来一切正常,非常感谢!请为此主题创建答案,这样我就可以将该主题标记为“已回答”。
请参阅此答案。