Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

路径能不能不要写死 #2

Open
pzhxbz opened this issue Apr 7, 2022 · 10 comments
Open

路径能不能不要写死 #2

pzhxbz opened this issue Apr 7, 2022 · 10 comments

Comments

@pzhxbz
Copy link

pzhxbz commented Apr 7, 2022

难道每次调pwn都要跑到你这个文件夹里调,能不能配置文件里写个路径,然后你自己来找这些socket;增加文件传输的接口,不要死挂载这个目录

@pzhxbz
Copy link
Author

pzhxbz commented Apr 7, 2022

比如对于需要chroot启动的程序,我不想还在那个目录下塞一个/lib

@veritas501
Copy link

话说这个docker-env和patchelf比有啥优点啊

@plusls
Copy link
Owner

plusls commented Apr 7, 2022

难道每次调pwn都要跑到你这个文件夹里调,能不能配置文件里写个路径,然后你自己来找这些socket;增加文件传输的接口,不要死挂载这个目录

啥意思,对于需要chroot的你直接放个lib也不是不行?如果不死挂载这个目录那咋文件同步呢

@plusls
Copy link
Owner

plusls commented Apr 7, 2022

话说这个docker-env和patchelf比有啥优点啊

主要是怕某些题目环境比较屎,需要用一些特定版本的 pthread libc++之类的,docker的话直接让他在里面拉屎就行,事后把容器删了重新建就好

@pzhxbz
Copy link
Author

pzhxbz commented Apr 7, 2022

难道每次调pwn都要跑到你这个文件夹里调,能不能配置文件里写个路径,然后你自己来找这些socket;增加文件传输的接口,不要死挂载这个目录

啥意思,对于需要chroot的你直接放个lib也不是不行?如果不死挂载这个目录那咋文件同步呢

所以留个穿文件的接口啊,你可以每次都在tmp下弄一个临时目录,然后scp过去,还有,我建议判断文件是否需要传输用md5值校验

@plusls
Copy link
Owner

plusls commented Apr 7, 2022

难道每次调pwn都要跑到你这个文件夹里调,能不能配置文件里写个路径,然后你自己来找这些socket;增加文件传输的接口,不要死挂载这个目录

啥意思,对于需要chroot的你直接放个lib也不是不行?如果不死挂载这个目录那咋文件同步呢

所以留个穿文件的接口啊,你可以每次都在tmp下弄一个临时目录,然后scp过去,还有,我建议判断文件是否需要传输用md5值校验

那如果二进制文件需要依赖一些当前目录下的文件呢,比如依赖个 data.bin,或者像你说的 chroot,你怎么办捏

现在我提供了个 cp-pwn 指令就是方便你手动拷贝文件的

@veritas501
Copy link

看了你们的讨论,感觉我做题像是原始人😂

@pzhxbz
Copy link
Author

pzhxbz commented Apr 7, 2022

难道每次调pwn都要跑到你这个文件夹里调,能不能配置文件里写个路径,然后你自己来找这些socket;增加文件传输的接口,不要死挂载这个目录

啥意思,对于需要chroot的你直接放个lib也不是不行?如果不死挂载这个目录那咋文件同步呢

所以留个穿文件的接口啊,你可以每次都在tmp下弄一个临时目录,然后scp过去,还有,我建议判断文件是否需要传输用md5值校验

那如果二进制文件需要依赖一些当前目录下的文件呢,比如依赖个 data.bin,或者像你说的 chroot,你怎么办捏

现在我提供了个 cp-pwn 指令就是方便你手动拷贝文件的

我的意思就是说把接口留出来,比如说addFile('./data.bin')这种,把所有的东西全部弄到那一个目录非常容易搞混,有时候在虚拟机里cp /lib到tmp目录下就能去chroot了,但是你这种就得弄在这个挂载的目录下,要是其他环境也需要其他的/lib来chroot不就混了吗,环境之间起码应该有点区分吧

@pzhxbz
Copy link
Author

pzhxbz commented Apr 7, 2022

我觉得可以在当前目录留个session,然后只要有这个session,对应的tmp目录下的临时工作文件夹就会存在,这样就只需要一开始拷贝一遍环境,然后一直调

@plusls
Copy link
Owner

plusls commented Apr 7, 2022

那你设计个接口我写(x

我是想不出什么好设计

毕竟题目多了我自己都乱

因为这玩意目前的设计就是每次有新题调试都要重新拷贝文件的

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants