现在的位置: 首页 > 综合 > 正文

西邮Linux兴趣小组13级纳新免试题浅析(上)

2019年05月18日 ⁄ 综合 ⁄ 共 2479字 ⁄ 字号 评论关闭

纳新的季节一切都是新的!会有一个新的开始,新的计划,新的想法~~~自己大一的时候看着学长学姐在上面讲自己激动地在下面听。到现在自己给学弟学妹们讲 ~! 时间过的比你想的总是快那么长一截 ...... 好 ~ 不感慨了 , 再不拼一把 , 真的就老了 。
          下面就分析一下今年的免试题 , 以下是自己和伙伴的解题记录。如果哪里有不严谨,言之不到位的地方,还请过路的大神不吝赐教!
          题是由小组成员陈志伟(1),任立翔(2),耿进凯(3),张森(4),李通(5)负责出的。大家的劳动成果,辛苦以上的成员了!

 第一关:stage1 :从小组官网上得到免试题对应的01串 。 (已保存到网盘)点击打开链接

        

         可以看到是很多的01 , 有做过去年的免试题的朋友应该很熟悉这个过程。 拿到这么多的01大家应该想到这是一个文件对应的01信息,因为我们的文件在硬盘上存储的时候哦也是以01形式存储的。既然是文件,那么就会有文件头信息。一般文件的一些基础信息,比如文件类型,文件名,文件创建日期,大小等等,都可能存储在文件头部。 好的,那如果这个是文件也不例外有这样的信息,我们翻译头部的一部分信息看看 : (在这个网站可以帮助我们完成转码):
http://home.paulschou.net/tools/xlate/

        

         可以看到, 开始部分的信息前三个字符就是Rar,看到这几个字符应该非常的亲切吧!原来这个包是Rar包。那么我们就有思路了!好, 让我们把这个包转换成rar文件。但是细心的朋友应该可以看到这些01里面竟然还有x , 并没有明确的告诉你那是0还是1 , 那么这就需要大家自己去穷举了。具体的程序代码我就不在这里贴了,总共64种情况,所以循环64次,刚好就是我们需要的64种情况。相信大家的能力:

        

        

        然后就得到64个rar压缩包,我们试着解压之,发现有问题:(unrar 命令可以解压rar包,如果没有的话,装一个吧)

       

        看来还要密码啊,我们看看注释信息:
        1:37s~1:39 这是个时间段吧,暂时不知道什么意思,先放着,下面有一段伪代码:意思是passwd中如果是字母,那么就是我们要的东西喽。现在有的信息是一个类似时间段的东西,还有一段伪代码说passwd这个字符串中如果是字母的字符,就是和我们的密码。信息似乎再没有了。别忘了还有那么多的压缩包呢。我们用vim随便打开一个,看看它对应准换成的字符信息是什么样的:

       

         ^_^,果然有信息,是一个youtube的链接,这个国内应该是访问不了的,看来得翻墙了。对了,联想一下刚才的时间段,哦,你会不会恍然大悟,原来是视频的一个时间段。那伪代码是什么意思呢?想看看这个视频在那个时间段到底是什么吧:(关于翻墙,呵呵,这个网上的教程真的是一大堆啊!小编这里用的是GOOGLE的gae配合goagent翻墙的,当然条条大陆通罗马,方法不是唯一的,可以完成我们的任务,就算是一种方法。) :

        

         哇原来是一个老外在哇啦哇啦在讲,因为没有字幕,所以大家就当练一练听力吧~想想刚才的提示信息,如果是字母,那么就是我们要的密码。呵呵,都是字母那就应该是这个时间段的字母喽!仔细听听可以确定,密码应该就是"linuxissecurebydesign",哇,原来是这样。赶紧试一试解压吧。
        还是有问题:

        

         什么问题?checksum error 校验错误。看来这个包我们穷举的情况不对,但是还有63个包,怎么办。一个一个手动解压?好吧,如果你有时间那么可以,这里小编简单写个脚本,(还是那句话,方法不唯一)比较短 , 可以贴一下:

        

         是不是很简单。unrar -p 是输入密码 x 表示解压到当前目录。文件名字是answer和0~63的组合。结果如下:

        

         第11个包是正确的,我们解压一下,发现当前目录多了一个pic.c文件,vim 打开看看,发现非常像一个C程序,编译运行一下:

        

         发现多了一个文件,名字为iamabaka,用file命令查看一下文件类型。

        

         发现是一个位图文件,即bmp文件,打开看看,是一个二维码一样的东西。用手机扫扫,咦!!!怎么扫不出来,对照一下这个二维码和我们平时见到的二维码有什么区别:         

        

     正常的一个二维码                                                                                                         iamabaka
对比一下,有如下几个区别:
        1.这个二维码有X,Y坐标
        2.发现好像有缺的点

        iamabaka 二维码的右下角应该是完整的方框,但是这里却有缺口! 看来我们得补上这个两个点,就得到了下面的二维码:

       

        呵呵,扫一扫吧! 就到了我们第二关(右下角的方框也是用来定位摄像头位置的所以,在简单的二维码里,不能缺失)。当然观察仔细的同学可以发现,如果没有观察出来,也可以从pic.c文件上入手!我们再看另一种方法:

       

         原来作者在这里故意做了一个陷阱if 0 是不可能被执行的,那么就改为if 1吧! 再像上面一样编译运行。发现当前目录多了一个文件,文件名字就是点坐标。哈哈,原来这样,联想到刚才二维码上有X,Y坐标,那么这个可能就是却的点,试着补一下吧。观察发现给的几个点坐标X,Y是反过来的,坐标也是从0开始的。这里给大家补好了(ps:小编是从1开始标坐标的最后减1就好):

        

        

        

         至此,第一关就结束啦 ~ 呼呼 , 是不是很刺激啊!!!~~~

抱歉!评论已关闭.