WEB渗透与网络安全信息安全CTF

[护网杯 2018]easy_tornado

2020-04-06  本文已影响0人  LonelySong

通过题目名字tornado猜测这个网站是使用python写的

Tornado是一个Python web框架和异步网络库,起初由 FriendFeed 开发. 通过使用非阻塞网络I/O, Tornado可以支撑上万级的连接,处理 长连接,WebSockets,和其他需要与每个用户保持长久连接的应用。

访问题目网站发现3个文件



依次尝试访问文件。
/flag.txt



/welcome.txt

/hints.txt


尝试访问flag



发现报错,看它这个url猜测可能存在模板注入,测试是否存在模板注入



发现存在模板注入
在Tornado的前端页面模板中,datetime是指向python中datetime这个模块,Tornado提供了一些对象别名来快速访问对象,通过查阅文档发现cookie_secret在Application对象settings属性中,还发现self.application.settings有一个别名
RequestHandler.settings
An alias for self.application.settings.

handler指向的处理当前这个页面的RequestHandler对象,
RequestHandler.settings指向self.application.settings,
因此handler.settings指向RequestHandler.application.settings。

构造payload获取cookie_secret

/error?msg={{handler.settings}}


根据/hints.txt计算filehash



最后得到payload
/fllllllllllllag&filehash=79ec52693cca83f6886b40bbdca9ed3f

拿到flag


上一篇下一篇

猜你喜欢

热点阅读