Pwn.py 文件源码

python
阅读 26 收藏 0 点赞 0 评论 0

项目:pwning-tools 作者: peternguyen93 项目源码 文件源码
def __start_proc(self):
        # for more information, pls refer :
        # http://rachid.koucha.free.fr/tech_corner/pty_pdip.html
        # open new pty 
        master,slave = pty.openpty()
        # set to raw mode
        tty.setraw(master)
        tty.setraw(slave)

        # binding slave in to subprocess
        self.proc = Popen(self.elf_path,
            stdin=slave,
            stdout=slave,
            stderr=slave,
            close_fds=True,
            preexec_fn=self.preexec_fn,
            env=self.env,
            shell=True
        )
        self.pid = self.proc.pid
        print('[+] Start pid : %d' % self.pid)
        # binding master to own controlled file descriptors
        self.proc.stdin = os.fdopen(os.dup(master),"r+")
        self.proc.stdout = os.fdopen(os.dup(master),"r+")
        self.proc.stderr = os.fdopen(os.dup(master),"r+")
        # close unnessesary file descriptor
        os.close(slave)
        os.close(master)

        # set non-blocking mode
        fd = self.proc.stdout.fileno()
        fl = fcntl.fcntl(fd, fcntl.F_GETFL)
        fcntl.fcntl(fd, fcntl.F_SETFL, fl | os.O_NONBLOCK)
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号