gdb – 使用pipe道input(不是参数)debugging

我通常运行我的程序:

perl -e 'print "A"x200' | ./vuln_prog 

stdin被C ++中的gets()函数所使用。

如果这只是一个命令参数,我可以通过执行以下命令打开gdb:

 gdb ./vuln_prog run $(perl -e 'print "A"x200') 

但是,我的场景不是命令参数,而是input(STDIN?)。 我怎样才能在gdb中debugging呢? 我尝试了一堆选项,但似乎没有真正的工作。

我通常会在进程上运行gdb,当它提示用户input时,input它,但是我不想只input“A”。 我想input\ x00- \ xff中的所有字符,我无法input。

 gdb ./vuln_prog run < filename_with_input