> 文章列表 > miss_01(简单密码学及音频隐写)

miss_01(简单密码学及音频隐写)

miss_01(简单密码学及音频隐写)

下载附件,解压时提示输入密码

 使用010editor打开,发现deFlags值被修改

(如果frFlags 或者 deFlags 的值不为0就会导致zip的伪加密)

将deFlags的值修改为0,并将文件另存为1.zip

 再次打开,没有密码提示了

 打开world文档

只看开头的话这应该是一串Rabbit加密后的密文

 

高速流密码——Rabbit

Rabbit使用一个128位密钥和一个64位初始化向量。该加密算法的核心组件是一个位流生成器,该生成器每次迭代都会加密128个消息位。加密后的数据以U2FsdGVkX1开头,可以设定密钥。

流密码是一种对称加密算法,它的基本思想是使用密钥生成一个伪随机密钥流,再通过该密钥流进行加/解密。

而结尾看到单独的一串字符和一个网站地址,推测是希尔加密

先将结尾的字符串进行希尔解密,密钥就是那个网站地址

(这里在复制的时候可能会遇到无法粘贴的问题,需要将文本样式修改一下)

 

 希尔解密后得到

love and peaceee

回到前面的Rabbit密文,希尔解密得到的就是Rabbit的密钥

 

得到一串base32编码

怎么来快速区分base16、base32、base64:

首先看有没有符号,base64和base32都以’=‘作为空白补足符符号,如果结尾没有’='有可能是base16。如果出现了+和/,那么一定是base64。base64是最容易区分也是最常见的。

再看大小写字母,如果有大写有小写就一定是base64。

如果全是大写,再看字母有没有在F之后的,因为base16就16进制,字母部分只到F,若出现了F之后的大写字母则可以排除是base16。

将字符串进行base32解码

 得到Unicode编码的字符串

Unicode 是国际标准字符集,它将世界各种语言的每个字符定义一个唯一的编码,以满足跨语言、跨平台的文本信息转换。

Unicode 字符集的编码范围是 0x0000 - 0x10FFFF , 可以容纳一百多万个字符, 每个字符都有一个独一无二的编码,也即每个字符都有一个二进制数值和它对应,这里的二进制数值也叫 码点 , 比如:汉字 "中"  的 码点是 0x4E2D, 大写字母 A 的码点是 0x41, 具体字符对应的 Unicode 编码可以查询Unicode字符编码表。

Unicode 有多种存储方式,常见的有 UTF-8、UTF-16、UTF-32,它们分别用不同的二进制格式来表示 Unicode 字符。

进行Unicode解码

 得到

新佛曰:諸隸哉僧降吽諸陀摩隸僧缽薩咤耨諸隸慧塞色尊哉迦諦空所降我念隸祗諦念哉陀嚴哉囉修夷阿波色莊寂諦塞咒莊眾我哉所伏聞薩隸愍闍吶所修是色摩訶嚴哉願愍哉即修哉空蜜陀囉伏念哉摩哉亦莊哉眾咤如願如

我以为是与佛论禅...不是,这里是另一个,叫新约佛论禅,应该是以新佛曰开头的吧

 解密后得到

Live beautifully, dream passionately, love completely.

使用这个密码解压音频的压缩包

这里还需要用到一个音频的处理软件----Audacity 

 在该软件里打开解压后的音频

如下图 

我们切换到频谱图

即可看到flag

 flag{m1sc_1s_funny2333}

总的来说从这道题里也认识到一些新的加密方式

以及对 Audacity 的简单使用

附上一些地址:

新约佛论禅 http://hi.pcmoe.net/Buddha.html

希尔解密  http://www.atoolbox.net/Tool.php?Id=914

Unicode解码 http://www.jsons.cn/unicode

Rabbit解密  https://www.woodmanzhang.com/webkit/rabbitencrypt/index.html

Audacity下载地址 https://www.audacityteam.org/download/windows/