欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

2019领航杯总结

程序员文章站 2022-05-16 09:10:42
...

恢复与解密

这道题做了很久都没做出来,下面是看别人的writeup写的,学到了很多知识。

题目描述:*人员在犯罪分子的电脑中发现一些磁盘文件,但是发现关键信息已经被删除,现需要你对磁盘进行恢复,并对恢复出来的一些秘密文件里面的加密信息进行解密。 注意:通过strings获取到的yc4pl0fvjs2k1t7T为假flag,请尝试使用其他正确的做题方式获取flag。


一,附件是xty.img,在kali下进行挂载:
mount -o loop xty.img /mnt

第一步挂载就不知道是什么意思。。。百度一下。

  • 命令解释。

-o: mount命令的一个参数,Options的首字母,后面跟着mount选项。

loop:用来把一个文件当成硬盘分区mount到目录。

/mnt: 挂载点。

  • 什么是挂载?

Linux 系统中“一切皆文件”,所有文件都放置在以根目录为树根的树形目录结构中。在 Linux 看来,任何硬件设备也都是文件,它们各有自己的一套文件系统(文件目录结构)。

因此产生的问题是,当在 Linux 系统中使用这些硬件设备时,只有将Linux本身的文件目录与硬件设备的文件目录合二为一,硬件设备才能为我们所用。合二为一的过程称为“挂载”。

Linux中的根目录以外的文件要想被访问,需要将其“关联”到根目录下的某个目录来实现,这种关联操作就是“挂载”,这个目录就是“挂载点”,解除次关联关系的过程称之为“卸载”。

通俗理解就是把一个根目录之外的文件的*目录连接到Linux的一个根目录下,然后Linux就能直接对它进行操作了。

参考:什么是挂载?

2019领航杯总结

  • ls -a 显示所有文件及目录。
  • ls -A 同 -a ,但不列出 “.”(目前目录) 及 “..” (父目录)。

发现 .hide 目录,打开没有发现什么有用的。


二,然后要用到sstat 和 ext3grep这两个工具进行磁盘恢复。

用 cd --命令返回上一级目录。

首先用 fsstat 查看文件信息。

fsstat xty.img

2019领航杯总结
这里的2是我们所需要的。


三,下载 ext3grep 工具。

apt -get install ext3grep

2019领航杯总结



四,使用 ext3grep 工具,可以发现有secret文件。

ext3grep --inode 2 xty.img

2019领航杯总结
2019领航杯总结



五,用命令把它恢复出来。

ext3grep --restore-file secret xty.img

2019领航杯总结
打开可以看到恢复文件的内容。
2019领航杯总结



六,base64解码一下,得到:

igq4;741R;1ikR51ibOO0igq

七,然后是异或解密:
import string

c = "igq4;741R;1ikR51ibOO0igq"

for i in range(0,200):
    p = ""
    for j in range(len(c)):
        p += chr(ord(c[j])^i)
    print p

2019领航杯总结拿到flag。

相关标签: ctf 领航杯