buu-1

USB

ftm文件确确实实是第一次见,先看压缩包吧

乍一看好像没什么问题,没想到问题在第二行7A要改成74(文件头错误,以往的题目大多为压缩文件头错误)

压缩文件头

文件头

D5 56 :HEAD_CRC,2字节,也就是文件头部分的crc校验值
74 :HEAD_TYPE,1字节,块类型,74表示块类型是文件头
20 90 :HEAD_FLAGS,2字节,位标记,
2D 00 :HEAD_SIZE,2字节,文件头的全部大小(包含文件名和注释)
10 00 00 00 :PACK_SIZE,4字节,已压缩文件大小
10 00 00 00 :UNP_SIZE,4字节,未压缩文件大小
02:HOST_OS,1字节,保存压缩文件使用的操作系统,02代表windows
C7 88 67 36:FILE_CRC,4字节,文件的CRC值
6D BB 4E 4B :FTIME,4字节,MS DOS 标准格式的日期和时间
1D:UNP_VER,1字节,解压文件所需要的最低RAR版本
30:METHOD,1字节,压缩方式,这里是存储压缩
08 00 :NAME_SIZE,2字节,表示文件名大小,这里文件名大小是8字节(flag.txt)
20 00 00 00 :ATTR,4字节,表示文件属性这里是txt文件
66 6C 61 67 2E 74 78 74:FILE_NAME(文件名) ,NAME_SIZE字节大小,这里NAME_SIZE大小为8
再往后是txt文件内容,一直到第六行 65 结束,下面是另一个文件块的开始

这个块中存在两个crc值,一个是文件头块中从块类型到文件名这38个字节的校验,后一个则是压缩包中所包含文件的crc校验,解压时,会计算解压后生成文件的crc值,如果等于这里的crc,则解压完成,如果不同,则报错中断。

结尾块

C4 3D :HEAD_CRC,2字节,从HEAD_TYPE到HEAD_SIZE的crc校验值

7B :HEAD_TYPE,1字节,表示该块是结尾块

00 40: HEAD_FALGS ,2字节,位标记

07 00 :HEAD_SIZE,2字节,块大小

获得png图片,丢到咖啡里,获得二维码

扫出来确实不知道是啥,先放着

ci{v3erf_0tygidv2_fc0}

看看ftm文件既然叫key的话就找一下key吧

好像有点东西,是个流量包

用foremost分离收获两个貌似一样的流量包?

让我康康?这啥

leftover capture data好像有一点点的规律

1
tshark -r key.pcap -T fields -e usb.capdata > usbdata.txt

利用kali的shark提取usb的data

在网上发现了个脚本:USB键盘流量包取证工具 , 用于恢复用户的击键信息

这是加密了嘛,让我康康

查了一下,维吉尼亚再套栅栏(谢谢,有被震撼的)

维吉尼亚加密

我愿意称它为凯撒加密的翻倍

这密密麻麻的看的头就很大,

维吉尼亚密码是一种简单的多表代换密码(由26个类似的Caesar密码的代换表组成),

即由一些偏移量不同的恺撒密码组成,这些代换在一起组成了密钥。

英文中az,由025表示。

假设串长为m,明文为P,密文为C,密钥为K则

![

公式这玩意看不懂的话就找几个字母算算,

取余得到的数字为秘钥所在行的第几个(秘钥可一直循环)

栅栏密码

栅栏密码(Rail fence Cipher)基础型加密方式,是一种简单的移动字符位置的加密方法,首先把加密的明文分成N个一组,然后把每组的第1、第2、第M个字符连起来,形成无规律的密文字符串。

说的简单一点,分组排列然后竖着读,原来是横着的,举个栗子

例如字符串“123456789abc”,首先将字符串分成3组,如下排列:
1234
5678
9abc
依次取每一组字符,组成加密后密文:”15926a37b48c”。

————————————————
参考资料:
原文链接: https://blog.csdn.net/Claming_D/article/details/105899397

https://zhuanlan.zhihu.com/p/111611977

https://www.jianshu.com/p/23e3dcb3f0e9

http://www.metools.info/code/fence155.html