一:tornado的基本介绍:
Tornado就是在 FriendFeed 的 Web 服务器及其常用工具的开源版本 。Tornado 和主流 Web 服务器框架(包括大多数 Python的框架)有着明显的区别:它是非阻塞式服务器,而且速度相当快。得利于其 非阻塞的方式和对epoll的运用,Tornado 每秒可以处理数以千计的连接,因此 Tornado 是实时 Web 服务的一个 理想框架。
具体使用可参考:python笔记(tornado初识)_背后——NULL的博客-CSDN博客_python tornado
漏洞实例:攻防世界easytornado
打开网页发现内容如下:
观察到url的filename,filehash似乎是账号和密码
把filename改为/fllllllllllllag后发现显示错误界面,即我们要寻找密码filehash
同时发现Error似乎可以更改,类似注入的东西
再浏览其他文件
经过百度查询可知,render为tornado的一个模块,类似于模板的东西,可通过不同的参数来访问网页。即{{}}的显示调用参数。
而下方的文件则是说明了filehash怎么获取,cookie+MD5加密后的filename,再次MD5加密。
即最主要的是render注入。
可通过{{handler.settings}}注入,具体原理Tornado小记 -- 模板中的Handler(看不太懂)
即可获取ookie——secret
最后通过MD5加密/fllllllllllllag
cookie_secret+上述密文,再次MD5加密
回到flag.txt页面,更改url内容即可正确进入



