[护网杯 2018]easy_tornado

[护网杯 2018]easy_tornado

打开之后看到几个文件夹分别提示

/flag.txt flag in /fllllllllllllag

/welcome.txt render

/hints.txt md5(cookie_secret+md5(filename))

尝试对file传参跳到

/error?msg=Error 显示Error

tornado、render、error=error,马上想到ssti。然后开始尝试,发现ban了很多符号

",‘,(,),_,%,*,+,-,/,=,[,],\,|

但是 /error?msg={{1.}} 确实可以执行,确定是SSTI,这个 ( ) [ ] _ 全给过滤了,看来只能想别的办法了。。

通过膜拜大佬博客发现cookie_secret在Application对象settings属性中,还发现self.application.settings有一个别名

handler指向的处理当前这个页面的RequestHandler对象,

RequestHandler.settings指向self.application.settings,

因此handler.settings指向RequestHandler.application.settings。

/error?msg={{handler.settings}}
=>
{‘autoreload‘: True, ‘compiled_template_cache‘: False, ‘cookie_secret‘: ‘d86e367b-ba3b-45ef-896c-9430132abe87‘}

然后根据md5(cookie_secret+md5(filename)),得到/fllllllllllllag访问的哈希,最后拿到flag,

原文地址:https://www.cnblogs.com/Rainsw0rd/p/12685772.html

时间: 2024-10-30 20:23:40

[护网杯 2018]easy_tornado的相关文章

刷题记录:[护网杯 2018]easy_laravel

参考链接:Laravel 相关几道题目复现 sql注入 username的sql注入,一眼就能看出来,但是admin的密码是加密过的,没法直接得到密码 public function index(Note $note) { $username = Auth::user()->name; $notes = DB::select("SELECT * FROM `notes` WHERE `author`='{$username}'"); return view('note', com

BUUCTF-[护网杯 2018]easy_tornado

题目: /flag.txt flag in /fllllllllllllag /welcome.txt render /hints.txt md5(cookie_secret+md5(filename)) 如上,页面下面三个目录,进去以后给了三个提示 我们要知道cookie_secret的值,百度render+tornado,知道render是tornado框架的一个函数,且存在注入:https://www.cnblogs.com/cimuhuashuimu/p/11544455.html re

网易安全部荣膺浙江省护网2018优秀团队称号

由于网易安全部在浙江省"护网2018"网络实战***演练中心中成绩优异,上个月,浙江省网络与信息安全信息通报中心向网易安全部颁发了证书,授予其"浙江省'护网2018'优秀团队奖"称号.网易安全部荣获浙江省护网2018优秀团队 据悉,这场由浙江省公安厅主办的"护网2018"网络安全应急演练于2018年9月26日-27日在杭州举行.演练从交通.能源.金融.水利.政务服务.工控系统等重点行业领域随机选取省市县级共82家单位目标,采用资产探测.WAF绕过

2019护网杯baby_forensic

题目名称:baby_forensic题目描述:can you catch the flag?附件:“data.7z” 2019护网杯初赛的一道取证题,比赛时没做出来,赛后又研究了一下. 获取profile的类型,因为不同的系统数据结构不一样,所以需要用--profile=来指定. 这里自动猜解可能的系统类型,一般情况下第一个是正确的,如果不对每个都试一下. volatility -f /root/data.vmem imageinfo 列出所有的进程 volatility -f /root/da

2018护网杯easy_tornado(SSTI tornado render模板注入)

考点:SSTI注入 原理: tornado render是python中的一个渲染函数,也就是一种模板,通过调用的参数不同,生成不同的网页,如果用户对render内容可控,不仅可以注入XSS代码,而且还可以通过{{}}进行传递变量和执行简单的表达式. 网上看到的例子: #!/usr/bin/env python # -*- coding:utf-8 -*- from tornado.web import UIModule from tornado import escape class cust

护网杯一道crypto

1 import os 2 def xor(a,b): 3 assert len(a)==len(b) 4 c="" 5 for i in range(len(a)): 6 c+=chr(ord(a[i])^ord(b[i])) 7 return c 8 def f(x,k): 9 return xor(xor(x,k),7) 10 def round(M,K): 11 L=M[0:27] 12 R=M[27:54] 13 new_l=R 14 new_r=xor(xor(R,L),K

【强网杯2018】逆向hide

这是事后才做出来的,网上没有找到现成的writeup,所以在这里记录一下 UPX加壳,而且linux下upx -d无法解,也无法gdb/ida attach 因为是64位,所以没有pushad,只能挨个函数进入,退出,看看程序是否恢复. 当运行到一0x400dd0,发现此时已经可以看见字符串了 用dumphex的脚本来dump出内存,见hide_dump static main(void) { auto fp, begin, end, dexbyte; fp = fopen("C:\\dump.

护网杯web

首先进入网页后,观察到有sign up 点击sign up 进行注册 再点击sign in 进行登录 进入一个买辣条的界面,可以知道,5元可以买一包大辣条,多包大辣条可以换一包辣条之王,多包辣条之王可以换Flag 进入info查看余额,发现,至多可以买4包大辣条,不满足辣条之王的兑换 尝试条件竞争打开burpsuit点击大辣条的购买窗口,抓取数据 发送到Intruder,点击Positions,点击clear 点击Payloads 这里算是纠结了一下,最后想到利用条件竞争,试验发现一个账户的两个

护网行动2019

在信息化社会中,计算机和网络在军事.政治.金融.商业.人们的生活和工作等方面的应用越来越广泛,社会对计算机和网络的依赖越来越大.如果网络安全得不到保障,这将给生产.经营.个人资产.个人隐私等方面带来严重损害,甚至会使金融安全.国防安全以及国家安全面临非常严重的危险."护网行动"是国家应对网络安全问题所做的重要布局之一. "护网行动"怎么来的? 1.网络安全态势严峻 当前,随着大数据.物联网.云计算的快速发展,愈演愈烈的网络***已经成为国家安全的新挑战,国家关键信息