[护网杯 2018]easy_tornado

作者: LonelySong | 来源:发表于2020-04-06 18:56 被阅读0次

    通过题目名字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


    相关文章

      网友评论

        本文标题:[护网杯 2018]easy_tornado

        本文链接:https://www.haomeiwen.com/subject/tzdpphtx.html