嗨,我有一个问题,我似乎找不到任何解决方案。(也许我只是在用英语正确措辞搜索方面很糟糕)
我正在尝试使用 pwntools 从 python 执行一个二进制文件,并在自己发送一些输入之前完全读取它的输出。
我的二进制文件的输出如下:
Testmessage1
Testmessage2
Enter input: <binary expects me to input stuff here>
我想阅读第一行、第二行和第三行的输出部分(':' 是最后一个字符)。
输出的第三行末尾不包含换行符,并希望用户直接进行输入。但是,无论我尝试什么,我都无法读取第三行开头的输出内容。
我目前试图实现这一目标的方式:
from pwn import *
io = process("./testbin")
print io.recvline()
print io.recvline()
print io.recvuntil(":", timeout=1) # this get's stuck if I dont use a timeout
...
# maybe sending data here
# io.send(....)
io.close()
我对标准输入和标准输出有误解吗?第三行的“输入输入:”不是我在输入之前应该能够接收的输出的一部分吗?
提前致谢