历时72小时的信安实验室2020暑期结训赛终于圆满落幕【此处应有掌声】
比赛时间:2020年8月6日上午9时——2020年8月9日上午9时
比赛WP:https://xiabee.cn/ctf/islab-2020-wp/
参赛队员:信安实验室2020年暑期参训成员
0xff+1 赛况
知道有人喜欢看数据,那就先贴一些图吧:

"May there be enough clouds, to make a beautiful sunset."
发布于 2020-08-09 64 次阅读
历时72小时的信安实验室2020暑期结训赛终于圆满落幕【此处应有掌声】
比赛时间:2020年8月6日上午9时——2020年8月9日上午9时
比赛WP:https://xiabee.cn/ctf/islab-2020-wp/
参赛队员:信安实验室2020年暑期参训成员
知道有人喜欢看数据,那就先贴一些图吧:
Fine. 我出的PHP真爱粉居然成了全场最菜(可能是套的太多直接被搜索引擎搜出来了
然后PWN的C语言作业果然不负众望成为全场最佳(不是,其实我们没评最佳题目奖,只是单纯的解的人少
从结果上看,WEB、PWN、CRYPTO几乎三分赛场,没有出现严重的偏科情况【值得鼓励】
然后有一些首守夜冠军,从凌晨三点到早上七点一直在交flag......:
比赛归比赛,别天天熬夜,注意一下自己的发际线......
看完数据,就正式回顾一下这个紧张刺激的结训比赛⑧:
突发奇想搞一个信安实验室内部的比赛,然后向基地提出申请,并且得到了经费支持:
然而我在结训赛开始的前一天才晓得,原来信安实验室往届的集训都没有结训赛......
其实最开始办这个结训赛最开始是想给大家混混综测,然后基地史老师表示实验室内部的比赛不好加综测,如果能办校级比赛可以混一波(这里明示一下网安俱乐部和实验室协同行动(●'◡'●)
由于各种鸽手原因,原定于2020.8.6的比赛,在2020.8.3那天终于开始准备了......我们计划从WEB、PWN、CRYPTO三个方向各选出一个最高分,颁发单项奖。其实最开始我们比较害怕总分第一和各方向第一会被某学弟一个人包揽,然而事实是在最后一天赛点的时候三个方向各冒出一位种子选手(
为什么不设置MISC单项奖......因为本科期间所有的线下赛几乎就没有MISC,而且MISC不好出题,硬核的MISC可能研究生都做不出来
虽然但是,MISC的题着实是出的最快的一套(WEB手太菜了,出不出题,我很抱歉
其实最开始我只计划在8月6日给大家玩九个小时,然后由于题目肝不出来,被强行拉到了72小时,从8月6号打到了8月9号(就摁鸽),不过大家提前体验了一下连肝72小时也挺不错的,以后打正规比赛的时候调整作息就有经验了(x
BUG只会迟到,但从来不会缺席。
8月6日上午9时,比赛正式开始:
开始的开始是PWN题的域名解析出了bug:一波分析猛如虎,原来是张大佬的证书那天正好到期......然后把题目中的域名全部换成了ip,PWN的bug基本解决。
然后大约过了十分钟,群友们表示交不了flag,点击submit直接Sever Error......(为什么师傅们A题A的这么快,十分钟就一血,是我出的太简单了吗
Emmm不过这种情况确实第一次见嗷,都是嫖的CTFd,为什么就我的靶场会500???
然后在暴打群里面,各位师傅发现通过修改前端的值可以手动提交flag...缺点就是得手写爬虫脚本(不过大家已经上过爬虫课了,这点爬虫应该还是会写的
接到BUG一脸懵逼的我,遇事不决先重启,直接把整个docker给它restart了......然后发现并没有什么卵用
然后实在么的办法,在实验室群里给大家提供了一下纯手工提交flag的教程......
最后的最后,在墨雨琪师傅的帮助下,一顿代码审计,发现这个docker里面的动态分数的源码确实有大问题(吐血
然后把这个submission-input改成了challenge-input,终于给它修复了......因为后端根本就没有submission-imput,不500有鬼
比赛过程中,WEB出题人表示压力很大:
我的服务器承受了这个内存不应承受之重......
然后还有一道摁打的爆破题,盲打100次的那种......差点把我服务器打挂掉(
其实题目是一道很老的题改编的,当时那个题可以手敲,但是我改成了恶臭题,5秒打100次,必须得上脚本......然而万万没想到,在高并发状态下,5秒只够打45次左右(然后被迫减少请求次数,减轻服务器压力
然而我的服务器还是很卡,每一步操作都得响应5秒以上......然后迫不得已,先关掉了训练平台的全部docker,然后终于能正常维护服务器了
然后我的那几道恶臭题被暴打了:
其实题目很简单,大概就介个亚子:
源代码长这个亚子:
<?php
include('flag.php');
@error_reporting(0);
$method = $_SERVER["REQUEST_METHOD"];
$agent = $_SERVER["HTTP_USER_AGENT"];
$refer = $_SERVER["HTTP_REFERER"];
$xff = $_SERVER["HTTP_X_FORWARDED_FOR"];
if ($method !== 'PUT')
die("Wrong Method!");
if ($agent !== 'GG')
die("GG browser is so Great!");
if ($refer !== '127.0.0.1')
die("Only localhost can access.");
if ($xff !== '10.0.0.53'){
if($xff === '10.0.0.55')
die("It seems down.");
die("must jump from 10.0.0.55, but it seems down.");
}
echo $flag;
?>
就是一个换头大作战嘛,但是因为脑洞过大被暴捶
其实这题唯一的脑洞只有XFF那里,跳转到10.0.0.53可能有点转不过来......但是我们培训群的群名称就是这个啊???
srds,还是只有8个人做出来,出题人表示很桑心
然后PWN的题因为太简单,被学长点名批评(呜呜呜,在哭惹。假的,PWN不是我出的:
然后就开始了72小时的肝题之旅(因为最开始确实没准备这么多题,后面的题都是现场出的
给大家看一下得分情况:
从这个交错的折线可以看出来,除了第一名的SpaceSkyNet同学以压倒性的优势超越第二名,其他同学的竞争还是相当激烈的。尤其是ZYHDLJJW同学,在最后一天的凌晨仍然坚持答题,并且成功超越emonq同学成为全场第二【掌声送给永不放弃的同学】(不过被反超的emonq同学也不用太难过,毕竟第二名和第三名的奖品是一毛一样的
当时我们一群吃瓜群众大概是这样的:
最后的最后还是SpaceSkyNet凭借PWN题的碾压优势夺得了冠军,祝贺SpaceSkyNet同学!!!
最后附一张得分图:
做了题的师傅们都在这里了,有些同学可能注册了账号然后忘记了这个比赛......
按照之前的计划,19级的前八名同学都获得的三等奖及以上
最后我们单项奖的获奖选手分别是:
pwn | SpaceSkyNet |
crypto | ZYHDLJJW |
web | emonq |
祝贺以上获奖同学👏
(忘词了,皮不下去了,先写到这吧)
本次比赛Write Up:https://xiabee.cn/ctf/islab-2020-wp/
Comments | 2 条评论
我只是在倒时差,白天基本没有提交的(
——ZYHDLJJW
@Rheinhauss 哈哈哈,那可能是其他同学还在交flag吧,反正深夜交题的人挺多的