2021湖湘杯旅游

前言

有事,换人。于是👴就这么来了。光速定机票,芜湖。

茶愁

茶愁

小时候,
茶愁是一场短短的比赛,
我在这头,
决赛在那头。

长大后,
茶愁是一次长长的等待,
我在这头,
比赛在那头

后来啊,
茶愁是一回糟糕的答题,
我在里头,
晋级在外头。

而现在,
茶愁是一张核酸的报告,
我在这头,
茶颜在那头。

一到期末事倍多,火急火燎地写完作业以后就还剩 5 小时要上飞机了。👴慢慢悠悠地整了丶饭,收拾了收拾东西,然后玩手机等时间。

没曾想,我看到了这个。

我 tm 直接完蛋。核酸检测没做,直接把人给你🐏️了。

但是!这时候绝对不能放弃。我在千钧一发之刻开始考虑这是不是我此生唯一的喝茶颜悦色的机会。于是大脑 8TB 核 cpu 飞速运转,生成了一个完整的救亡计划。

graph LR
	a[马上上地铁] --> b[到最近的医院]
	b --> c[在医院下班之前<br>做完核酸检测]
	c-->d[到长沙打印电子版]

一套流程跑下来,完美。

于是👴马上 11 号线转 2 号线青大附医下车一路小润满头大汗到核酸检测地点,赶在结束之前 20 分钟完成了核酸检测。完美。

在回地铁的路上,我脑海中微微酝酿出了这首诗。

而现在,
茶愁是一张核酸的报告,
我在这头,
茶颜在那头。

(我 tm 直接哭死

夜里的

落地直接一个滴滴到酒店。

酒店是真不戳。两个队友 ha1 和 guoke 住一间,所以我就单人一个大床房。房间是真的大,把洗浴间和卧室中间的墙去掉的话,这空间都够打一套自由搏击的。有单独的浴缸,电和灯都是自动的。真的🐂️🍺️。就是自动灯有点哈人,洗着洗着澡灯给灭了,给👴吓一跳。

酒店

吃饭。酒店周围什么都没有。吃饭得走十几分钟到比赛场地周围去吃。第一顿没有什么思路,老样子,掏出随机数生成器来,直接开始 random。

天选烤肉。直接开始点单。整点牛肉、五花。有一个香肠,👴直接开冲。

烤肉

香肠味道相当不错。竖着烤还给我练了平衡性。彳亍。这波我全功。

一波整完,意犹未尽。直接点第二波。一个肥肠一个猪肉。猪肉不管烤不烤熟全是白的,有点难整。肥肠有点太肥,差点给👴整吐了。这波我全责。

吃完饭当然是茶颜悦色了。

茶颜悦色

不得不说,茶颜悦色的企业文化有丶吊。热情,服务态度好。进门直接开始一波口号的喊。点单的时候先喊一轮欢迎,然后店员开始用扩音器跟宁交流点单。点完之后再来一波口号。小票的长度是我以前从未想到过的,比我胳膊还长。上面的故事从创业之初写到现在,属于是不忘初心。完事拿到茶要走来再给你来一套欢迎下次光临。说实话,我社恐,我听着贼尴尬。但是我要是入职的话我绝对社交牛逼症拉满喊得最大声。

第一次点了个幽兰拿铁。上面一看还以为是个冰激凌,下面藏着拿铁。一会儿全给化下去了。

幽兰拿铁

夜里智慧到 2 点多,听闻 Mr.R 赶回去上课的消息。于是约好一起买票回青。

坐牢

6 点多起床,洗漱完奔下楼吃了点辣味炒饭,上了大巴到了比赛现场。

到现场直接茶歇区拿两瓶水,抢一血(

后面才知道比赛开始后去厕所和茶歇区都要登记,👴不能像以前那样随意肆虐茶歇区了。

然后就开始了一天的坐牢时间。

开局坐会儿牢 + 领导讲话,一套流程走完之后开始比赛。

开局把题目全拉下来,存个原件。然后直接开始找洞。一个非常规堆题,一个小说题塞个栈溢出,一个unicorn题,一个看着像堆的后门题。

我直接奔着栈溢出就过去了。先防一波,直接 ida patch 小溢出字节数 tar 一下扔上去。然后发现👴的 ftp 不好使。只能手动扔给 ha1 然后再上传。EXP利用成功。👴寻思这能利用成功?!

然后直接考虑开始攻击。一路摁 2 可以跳过小说剧情到达栈溢出,于是直接

for i in range(12):
    a.sendline("2")

直接一顿乱冲,泄露 canary,栈迁移一气呵成。二血还是三血来着。血亏。

之后开始修菜单堆+后门那题。直接上去把后门给🐏️掉,tar 一下扔上去。还是 EXP利用成功。nmd 后门都🐏️了还能打通?

看那道阴间堆题,无果。看 unicorn 题,看懂了逻辑,没看懂怎么用。

隔壁 web 怎么也修不好。guoke 看了一眼 upload 示例,把打包的文件夹去掉,直接打包文件,修补成功。wdnmd 我方才发现我直接没放 update.sh,重大失误,痛失好几千分,背大锅。

栈迁移修好,后门堆修好。之后开始坐牢。

看了半天后门堆,怎么也没有想出怎么利用这个 clnt_create 来返回非 0。于是打开一份 libc-2.31.so 源码进行一波分析。直到试了试这个漏洞。

if (strcmp (proto, "unix") == 0)
    {
      memset ((char *)&sun, 0, sizeof (sun));
      sun.sun_family = AF_UNIX;
      strcpy (sun.sun_path, hostname); // 这个洞
      sock = RPC_ANYSOCK;
      client = clntunix_create (&sun, prog, vers, &sock, 0, 0);
      if (client == NULL)
	return NULL;
#if 0
      /* This is not wanted.  This would disable the user from having
	 a timeout in the clnt_call() call.  Only a call to cnlt_control()
	 by the user should set the timeout value.  */
      tv.tv_sec = 25;
      tv.tv_usec = 0;
      clnt_control (client, CLSET_TIMEOUT, (char *)&tv);
#endif
      return client;
    }

这题是给了 libc 的,只不过 strings 出来是 2.27 就没管了。但在测试时,本地报错是 stack smashing detected,远程测试是 segmentation fault

好家伙,这不就是把 canary 给去掉了嘛。直接爆破填充长度,拿 2 血。

后面盯着 unicorn 的源码看了半天,没分析出啥来。开摆。

web 老哥修了一天的 vote 没有修好,属实是有点难受。

最后做梦一般地从 20+ 到了第 10 名,又到了第八,第七,第六,第五。

前面的老哥送了发火箭,送到了第四名。实现了奖金翻两番。wtcl,这波我全责,全责。

漏🐂️

奉劝出题人少漏 ID(包括不小心),否则 100% 成为阴间出题人。

橘子洲

颁完奖,吃完饭,开始旅游。直接从五一广场刷琴岛通坐两站地铁到了橘子洲。

上洲后,感觉到一股公园的味道。树林郁郁葱葱。因为洲是南北走向的,宽度不大。所以洲上的植被显得格外旺盛。洲上的池塘、草坪,散发出一股清新,微风为伴,漫步其旁,颇有一番风味。洲上塔与亭该是被保护得不错,也许能够看到当年伟人在此指点江山,彰书生意气。

因为穷因为想亲自感受橘子洲的文化,我选择步行游览整个橘子洲南段。一路走个来回有些许累。

走了一个小时左右,毛泽东青年艺术雕像便出现在不远的前方。游客非常多,都在与伟人进行合影。当年他拯救了整个中华民族,正如今天人人都拥护着他。还记得不久前我刚刚加入共产党,发誓为共产主义奋斗终身,用不叛党。在 20 岁的年华,就应该把自己的青春献给伟大的祖国建设事业当中。风华正茂的青年人应该做时代的挑灯者,应该做时代的太阳。

来回加起来歇息了大约有五六次。大概路是真的太长了。

橘子洲1

橘子洲2

橘子洲3

归程

晚上在五一广场嗦了点面,就来到了机场。

即将告别仅仅呆了两天的长沙,心中实在有点不舍。在这可以轻松地喝到茶颜悦色,可以放下生活中的杂事,感受在赛场上解题的艰苦和解出题来的快乐。一切都挺美好,都是完美生活的一部分。不过旅程总算会到达终点,人还是要回到自己的生活中,继续守自己的岗位。

最后一杯茶颜悦色。

茶颜悦色3

相与步于飞机,寐,Mr.R 亦寝。

想长沙

我的茶颜悦色,我好想你啊😭️

好想你,茶颜悦色,茶颜悦色

茶颜悦色


如果这篇博客帮助到你,可以留言夸夸我~
CC BY-NC 4.0 (除特别声明或转载文章外)