杂项的基本解题思路(1)——文件操作隐写、图片隐写

  1. 文件操作隐写
  2. 图片隐写
  3. 压缩文件处理
  4. 流量取证技术

文章本来是分成4部分的,但是前两部分何在一起写了也就没有分开,所以干脆就只分了两部分

文件基本类型的识别

一、kail 下

file 文件名

在这里插入图片描述
原理就是识别文件文件头
比如这个软件:
二、WinHex
杂项的基本解题思路(1)——文件操作隐写、图片隐写_第1张图片
通过winhex分析能得到16进制和ascii, flag可能就在右边ascii区头部或尾部。
杂项的基本解题思路(1)——文件操作隐写、图片隐写_第2张图片
三、文件头残缺、错误
杂项的基本解题思路(1)——文件操作隐写、图片隐写_第3张图片
只告诉说是一个data文件;
这时要进行修复:编辑文件头区域修改为正确的方式 。

文件分离操作

一、Binwalk 工具
用法:

分析文件:binwalk filename
分离文件: binwalk -e filename

杂项的基本解题思路(1)——文件操作隐写、图片隐写_第4张图片
:分离出的压缩包,通常会自动解压出来。

二、foremost
有时候binwalk -e 分离不出,则用 foremost
我一直都是binwalk查看,然后foremost分离

方法
foremost 文件名 -o 输出目录名
直接 foremost 文件名
也会自动生成文件夹输出到当前目录下

杂项的基本解题思路(1)——文件操作隐写、图片隐写_第5张图片
三、dd
前两个工具都是自动分离,有些题目复杂,如果都分离不出,可以使用dd实现文件手动分离。
单纯的题目:文件一部分是jpg,一部分是zip
复杂的题目:文件混杂,jpg和zip混合
杂项的基本解题思路(1)——文件操作隐写、图片隐写_第6张图片
图二上 1324的文件排列顺序,两种文件混合
假设有个 1.txt 文件内容123456789abcdefg。
杂项的基本解题思路(1)——文件操作隐写、图片隐写_第7张图片

格式:
dd if=源文件 of=目标文件名 bs=1 skip=开始分离的字节数
参数说明:
if=file  #输入文件名,缺省为标准输入
of=file #输出文件名,缺省为标准输入
bs=bytes #同时设置读写快的大小为bytes,可代替ibs和obs
skip=blocks #从输入文件开头跳过blocks个块后再开始辅助。

四、winhex

除了dd,还可以使用winhex手动分离,将目标文件拖入winhex中,找到要分离的部分,点击复制

五、010Editor

选中-右键选择selection–save selectionb.

有的题目给了一个txt文件 打开是16进制文段,010Editor打开查看文件头,找出文件类型,另存为正确文件类型即可。

文件合并

一、Linux下的文件合并
使用场景:Linux下,通常对文件名相似的文件要进行批量合并

格式 :cat 合并的文件 > 输出的文件
有md5可以进行完整性校验的话
>>  md5sum 文件名

二、windows下的文件合并

格式:copy /B 合并的文件(用加号连接,Linux空格即可) 合并后的文件名

copy /B gif01+gif02 2.gif

完整性校验:

certutil -hashfile 2.gif  md5

:这些步骤大都只是一个解题步骤,文件合并了还打不开,可以查看文件头是否错误。

文件内容隐写

通常KEY以十六进制的形式写在文件中,通常在文件的开头和结尾部分如果在文件中间部分,通常搜索关键字KEY或者flag来查找隐藏内容。
window下
一、Winhex/010editor
二、Notepad++

杂项的基本解题思路(1)——文件操作隐写、图片隐写_第8张图片
杂项的基本解题思路(1)——文件操作隐写、图片隐写_第9张图片
杂项的基本解题思路(1)——文件操作隐写、图片隐写_第10张图片
010Editor最下方的查找。

使用的工具Linux下的 kail有自带
window下的自行下载
Winhex
010editor
Notepad++

你可能感兴趣的:(CTF-misc)