Real World CTF 2018

跟随hook、virink、line众位师傅参加了real world ctf 2018 线下赛,大致记(乱)录(写)一下比赛过程:

Day 0

我们队伍是提前一天到达赛方安排的酒店,因为飞机原因,我最晚到的(大约十点,师傅们已经饿得差不多了),来到后就是line师傅带着几个人先在酒店签到,领取第二天比赛用品(T恤、参赛证、小礼物、比赛规则…….),酒店好评:
图片.png
比赛规则:
虽然是解题赛制,但并不是单纯提交flag
而是对真实软件的破解,web需要拿到shell,pwn需要完成对应操作并上台演示
几位师傅大致根据比赛规则商议了一下第二天的对策(一些分工、提前准备……),然后就是最重要的事情——出去觅食(逛了一大圈最后决定海底捞,结果因人数太多被“赶出来”,只好回到中间的一家店吃了“西餐”,餐厅导游皆差评)。

Day 1

10点比赛开始,我们八点出发准备提早去看看比赛环境和真实情况,走的比较早,一个月来真正吃了一顿早餐。
比(电)赛(竞)场地十分炫酷:
图片.png
开始前还在不紧不慢的配置一些环境,开始的一刻便已经怀疑人生,一共14个题,看到第一个虚拟机逃逸的文件大小的时候,大致就知道比赛难度了(11G),想起了线上时候那个CSGO,一阵凉凉,题目类型大致是:
图片.png
基本上没什么经验,只能硬上
一个上午所有战队0解,只有一个战队上台演示,但是最后失败。
场地内进行午餐,午餐过后,一血频出,下午结束时应该已经有一半题目被解出来,不过大部分只是一个战队一个或者零个(such as us),除了LCBC战队,真是太强了,总是fist blood,赛后了解他们都是用0Day打的orz。其实下午时候我们已经出了一道题目,但是刚要准备展示,主办方告知固件没有更新orz,只能升级固件重新调试找漏洞点。
下午结束,直奔酒店,白天不够,通宵来凑。只能先确定可能解出的题目,硬刚一下(像虚拟机逃逸,就可以直接扔了),重新挖出升级固件后设备的0day,最后调试到凌晨五点,写好了升级固件后的自动exp,准备明天拿一血。

Day 2

集体睡过头,醒来时九点半,一丝凉凉,叫醒几位师傅直奔场地,感觉别的队伍看来就像弃赛一样orz,还好,一血还在,不过已经有好多队伍在排队展示,幸好成功的很少(坏笑),大致调试过后,上台展示,很稳地成功(毕竟师傅们已经调试了各种情况),拿到一血,暂居第六,十分happy:
图片.png
剩下便有些坑,路由器思路完美走反,浏览器不会,ext5时间不够,one line php差一点解出,思路大致方向对,而且队友大神找到点之后以为已经修过没去尝试,用的另外一个思路,到最后因为碰撞概率太低也没有跑出来,一题1w刀系列。
最终名次:
图片.png
最大感受:平时比赛题目的一些pwn、re……实际结构点比较单一,现实real world中一个软件/固件程序还是很庞大的,需要积累真实pwn的经验,像虚拟机逃逸、浏览器……,感觉一个bin手不要局限比赛,比赛积累知识、锻炼能力,更要在真实环境中选择一个兴趣方向研究下去,希望有一天,能成为真正的pwn手。