Chapter.一十 挂科前夕?基础 shellcode 编写!(1 / 2)
东方阅读网【www.dfmsc.com】第一时间更新《从零开始的CTFer生活》最新章节。
翌日正午,筱懿明依然躺在床上呼呼大睡——而是因为当他被手机铃声吵醒准备慢悠悠地爬去上高数课时突然发现自己并没有写高数作业,而高数老师又是习惯在正式开始讲课前将作业清点完毕并在课堂上对没交作业的人大肆批判一番的情绪喜怒无常的老古板——至少在筱懿明眼中是这样,而在他醒来时距离高数课上课已经只剩五分钟,哪怕直接把洛青弦的作业拿过来抄一遍时间都不太来得及——当然,洛青弦早就先他一步前去教室了。
反正作业的问题似乎是没法在上课前解决了,筱懿明索性决定睡个爽,反正在他看来少交一次作业不过就是少一点平时分而已,距离挂科似乎还有很远的距离。而且对筱懿明来说确实也不是第一次翘课了,反正他的目标就是平平稳稳地本科毕业就行,和绩点有关的保研出国一类的东西对他而言都没有任何意义,课内的东西索性就这样烂下去也无所谓。
摆烂似乎就是这样,刚开始翘课还有点战战兢兢生怕被老师发现,摆到后面不去上课就和日常吃饭喝水一样正常,偶尔有一天突发奇想要去上课反倒还感觉有点怪怪的。
但对于作为摆烂初学者的筱懿明而言,虽然他已经充分地享受了课内摆烂的爽感,但尚且未能掌握摆烂与完蛋之间的分界线,因此很容易摆着摆着就不知不觉把自己给摆死了——
“草,明哥你今早咋没去上高数课,爷给你打电话也不接,这下真寄了,”
洛青弦猛地推开宿舍的大门冲了进来,只见筱懿明依旧躺在床上悠悠地打着呼噜,仿佛没有听到洛青弦的呼唤。洛青弦只好走到他床边用力地拍打着他的床板,试图发出更大的噪音来将他唤醒。对于向来神经衰弱的筱懿明而言效果显著——
“哼,哼,啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊——”
筱懿明此前正在梦中与一位可爱的 JK少女共同探讨着高中的理科课程,他虽然高考总分并不算低,且对于物理化学这样的科目十分擅长,但若将这类更需要计算与逻辑思维的科目归为“武”的话,那么那些更需要背诵大量内容的“文”类科目对于他而言便是一场灾难了——毕竟他终归不是一个“能文能武”的全能人。在高中时期他一直没有找到比较好的解决方案,心高气傲的他也不愿向老师和其他同学请教学习,因此在“文”类科目上的痛点成了他高中生涯的一个遗憾。此时他终于有机会重新回到高中时期——虽然是在梦中,但总算有机会去重新学习自己所并不擅长的科目,他也愿意放下自己的身段向其他更为擅长这个方向的同学去虚心请教。而梦境的想象力终归是要比现实生活大许多的,以前那些仅能以图像与文字的形式印刷在书本上的知识终于能够以超乎他想象的状态进行深入的实践学习,这又怎能不让他感到心情舒畅无比?毕竟高中阶段作为“做题家”的他,在现实生活当中想来是没有这样的机会去体会这种非凡的感受的。
但洛青弦这一拍便直接将筱懿明梦中的少女给拍得烟消云散,出现在他眼前的又变成了那熟悉的天花板,这叫他如何不心疼?于是乎筱懿明下意识地发出了野兽一般痛苦的哀嚎,为那曾经短暂拥有过却又被迫失去的美好而痛彻心扉。
“别t叫了,明哥你这次翘课真翘出大祸了,”洛青弦扶额长叹,正所谓“长太息以掩涕兮,哀民生之多艰”,虽然此刻他并没有像当年的屈原那样泪流满面,却也为筱懿明即将到来的悲惨命运感到悲哀,“高数老师今早发现你没交作业,点你名你也没到,再加上前面有好几次作业你也是后面才补交甚至干脆没交的,他在课上一气之下决定给你平时分直接清零了。”
“???”
这个突如其来的噩耗直接把筱懿明从尚未完全睡醒的大脑直接打入懵逼态,虽然他印象中自己确乎翘的课也不少,也有那么几次作业是没交的,但确乎没有想到已经累积到了这个地步。
没想到刚刚进入大学的第一个学期,自己就要面临挂科的风险么?
“哼,哼,啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊——”筱懿明再一次发出了野兽一般痛苦的哀嚎,这一次倒是真正的感到痛苦了,此时的他比金木还痛,洛青弦若是没有看过10遍东京喰种的话想来是无法理解他此刻的痛楚的,“間違っていたのは僕じゃない、この世界だ——”
“别搁这痛了,想想该咋整吧,”洛青弦无奈道,“虽然大家都知道着老师脾气差,谁也没想到他今天会这么生气,今天除了你以外还有其他好几个人也被‘宣判死刑’了,爷真无语了。”
筱懿明直起身揉了揉太阳穴,现在的他感觉大脑一片混乱,不过他还是强行尝试先让自己的大脑冷静下来,毕竟事情已经发生了,现在唯有想想办法看能否进行补救了。
但筱懿明非常明白自己的平时分估计是没有办法拿回来了,教他们高数的老教授虽然德高望重但性格古怪无比,课程与课堂要求几乎比他高三时还要更加严格,而且决定了的事情基本上就不会更改,虽然在外人看来这似乎是对学生负责任的表现,但对于身在局中的筱懿明而言可谓是苦不堪言——
关键是高中越鞭策高考分数越高,现在上这破高数课反而预期绩点越上越低,一直都是负反馈又怎么能让人提起心思学习呢?——当然这也只是筱懿明的偏见罢了,但对于他这样不愿意被束缚的人而言一直被人推着前进可并不算是一件舒服的事情——但毕业证和学位证终究还是要拿的,他独自一人又没有任何办法去改变现在的这个大局面,所以面对这令人痛苦的一切筱懿明也只好默默地忍受——虽然这本来就是他没有好好完成作业所导致的结果,但在他看来至少惩罚不应当那么严重。
不过似乎并非没有解决方案——
“平时分 20分,期中 20分,期末 60分,现在高数的期中考试还没开始,只要后面的两场考试我都能考到 80分左右就不会挂科了”,筱懿明一边翻身下床一边叹息道,“反正现在平时分都清零了,后面的高数课干脆都翘了算了。”
“上次随堂小测你连50分都没有,咋考 80分”洛青弦叹息道,不同于筱懿明,洛青弦虽然编程技能还很一般,但是课内课程还是学得不错的,尤其是高数这门课可谓是大放异彩,被班上的同学誉为“Kig f Mteti”,高数老师也让他担任了课代表,但查作业和签到这种事情老教授一般都会选择亲自操刀,所以他想要利用职权帮助筱懿明也没有办法,“而且从下节课开始就要统计打卡了,总缺课数量超过一半的直接挂,考都不用考了。”
“d,酱紫整人?”对于筱懿明这样的翘课专业户而言这又是一个新的噩耗,尤其是高数课基本上都在早上的第一二节课,平常虽然作业查得严但不查到课率,所以筱懿明一般都是直接让洛青弦帮忙把作业给带过去,自己则是在床上继续呼呼大睡——毕竟他现在的生活作息按照时区换算基本上算是按照英国作息来的,再去上早八的话他的睡眠时间就要被干碎了——当然最简单的做法自然是调整一下作息,可惜这对于筱懿明而言依然是一个遥不可及的目标,又或者说是不愿意去实现。
毕竟,只有在夜晚独自一人的时候,他才有那种“活着”的感觉。
筱懿明坐到桌前,熟练地打开了自己的电脑,却又盯着近乎空无一物的电脑桌面默默地看了好几分钟。良久,他决定还是先把高数的事情抛在脑后,毕竟既然平时分清零的结果已经定了,现在再去把未完成的作业给补完也是无济于事,不如在 GeeerCTF上继续冲一冲。
熟练地点进平台,这一次他点开了 P方向的第二道题目,题目说明倒是比较简短——
------
D y te
------
“?啥意思,先百度一下好了。”毕竟浏览器不是真人,筱懿明没有在它面前不懂装懂的必要,既然自己确实“d't ”,那还是直接让搜索引擎来回答更为实在。
在搜索结果页面简单翻了两下之后,筱懿明很快便找到了他想要的答案——
「即一段被插入到目标进程中执行以完成特定任务的汇编代码,由于其任务通常是帮助黑客获取目标主机的 ell,因此得名『』。」
“难道这一次这道题要我手写一份 ?还是先把题目拖到 IDA里看看是个啥情况好了。”
筱懿明将题目二进制文件拖进 IDA,这一次的题目依旧非常简洁,在 i()函数当中便只调用了一个 vl()函数——
------
__it64 vl()
vid *v0;// ri
v0 = p(0LL, 0x1000LL, 7, 34,-1, 0LL);
red(0, v0, 0x1000LL);
retr ((__it64 (*)(vid))v0)();
------
“这代码啥意思...”眼前的代码比筱懿明想得更加难看懂,虽然仅仅有少量的几行代码,但无论是 p()还是 red()函数都是 POSIX标准中的系统调用,在 Wid操作系统上便没有这一套 API,而在他以前打 OI时便仅用过标准库的诸如 f、pritf这样多平台通用的函数,自然会感到非常懵逼,“先查一下...p好像是一个系统调用,和 ll功能上似乎是一样的?都是分配一块动态内存?后面这几个参数又是什么意思...看来还是得百度...”
非常幸运的是在这个高度信息化的时代想要在互联网上获取基础知识可谓是方便无比的,因此筱懿明很快便弄懂了 p()和 red()函数的作用,同时还明白了“文件描述符”这一概念——虽然只是知道 0、1、2分别对应着 tdi、tdt、tderr的程度。
“p()参数中的 7对应 prt参数,也就是‘属性’,意思就是说动态分配的这一块内存的属性应该是‘7’,而‘7’又是 4、2、1进行 OR运算的结果,也就是说这一块内存应该同时具有可读、可写、可执行的权限,”筱懿明一边看着百度一边对照着 IDA反编译代码思忖着,“red()函数的作用应该就是从输入中读取最多 0x1000个字符到刚刚分配的那块内存上,最后一行代码把这个指针转成了一个函数指针并进行了调用,意思是将这块内存直接当作汇编代码来执行?”
随着程序逻辑在筱懿明眼前变得清晰,他也逐渐弄明白了这道题究竟要做什么——
“看来这道题要我像一个真正的黑客那样手写一段 进行攻击吗?这种事情可真是...”
筱懿明的嘴角悄然浮现一丝弧度,在他的双眸中闪烁着一丝诡异的光。
“帅得不得了呢!”
东方阅读网【www.dfmsc.com】第一时间更新《从零开始的CTFer生活》最新章节。
本章未完,点击下一页继续阅读。