分类:CTF

37 篇文章

首届祥云杯 web writeup
我服了,排名32,白给一天,最后30秒看着别人噌噌噌上分,心态崩了 Command 这题学弟做的没咋看: 利用sort或者uniq可以读取文件,采取?通配符读取文件绕过 $a = shell_exec("ping -c 4 ".$ip); $ip=$_GET['url']; if(preg_match(&qu…
2020上海市网络安全大赛 web writeup
千毒网盘|2 www.zip源码,变量覆盖 https://blog.csdn.net/weixin_30258901/article/details/96605162 POST /?_POST[code]=select code=select \$_GET,$_POST如下 array(1) { ["_POST"]=> …
ByteCTF2020
头给我锤烂了 douyin_video http://c.bytectf.live:30002/ 有selfxss,提交的url只能是http://a.bytectf.live:30001/ http://b.bytectf.live:30001/ 给了源码,要botip才能访问 但是flask配置文件中的正则没加^结尾 导致能用换行%0a+@符伪…
SECCON CTF复现
Beginners Capsule import * as fs from 'fs'; // @ts-ignore import {enableSeccompFilter} from './lib.js'; class Flag { #flag: string; constructor(flag: strin…
2020西湖论剑 baby writeup
NewUpload 有宝塔waf,上传php文件或者文件内容包含php等都会502,然后504 后来发现可以用图片马+后缀换行来绕 然后有disable_functions和open_basedir,在shell里执行phpinfo();会被宝塔拦,所以要么直接写死在文件里,要么就动态掉用 exp: <?php class Client { …
DDCTF
Web签到 下载client发现是用来传参通信的 提示了sign格式,首先根据时间戳算出sign的算法,并且发现报错页面是java的框架,参考de1 calc,直接new实例读flag import base64 import hmac from hashlib import sha256 import requests import time i…
GACTF2020 writeup
EZFLASK 源码 # -*- coding: utf-8 -*- from flask import Flask, request import requests from waf import * import time app = Flask(__name__) @app.route('/ctfhint') def ct…
安恒8月赛
安恒大学 做到时候也是没想到,注入点在邮箱激活那 ezflask 这题是原题的基础上加了过滤 https://www.anquanke.com/post/id/212808#h3-9 源码如下 #!/usr/bin/env python # -*- coding: utf-8 -*- from flask import Flask, render_…
强网杯2020 writeup
被二进制爷爷们带飞Orz Web half_infiltration 首先反序列化,由于print之后无论走哪都会有ob_end_clean(),永远也不会输出,所以尝试输出之后让他报错来绕过 这样global$$this就会输出并报错 传入两个User,一个输出,一个报错绕过ob_end_clean() <?php $flag='…
thumbnail
WMCTF2020
Checkin1 神头鬼脸,应该是没过滤好,直接/flag就出了 Checkin2 预期解还是得写shell 因为"file_put_contents中可以调⽤伪协议,⽽伪协议处理时会对过滤器urldecode⼀次",所以可以二次编码特殊字符绕,如 php://filter/write=string.%2572ot13|<?…