buuoj——write up

目录 

(一)MD5

(二)变异凯撒

(三)丢失的MD5

(四)传统知识+古典密码


第一题:MD5

工具:https://www.cmd5.com/——用来解MD5码

解题思路:

1、下载解压得到一串MD5码

2、

通过https://www.cmd5.com/,输入得到的MD5码,解密得到flag

第二题:变异凯撒

解题思路:

1、首先明白凯撒密码的原理

凯撒密码是最早的代换密码,使用单表代换。其基本思想是:通过把字母移动一定的位数来实现加密和解密。明文中的所有字母都在字母表上向后(或向前)按照一个固定数目进行偏移后被替换成密文。例如,当偏移量是4的时候,所有的字母A将被替换成E,B变成F,以此类推W将变成A,X变成B。位数就是凯撒密码加密和解密的密钥。

2、打开压缩包

加密密文:afZ_r9VYfScOeO_UL^RWUc
格式:flag{ }

密码与数字有关,所以先将密文转换成ascii码:97,102,90,95,114,57,86,89~没有发现数字规律,压缩包除了密文就是格式,将flag也转换ASCII码:102,108,97,103 两组数字比较发现第一位差5位,第二位差6位,第三位差7位,第四位差8位,可见凯撒密码是递增的。

#include <stdio.h>
#include <string.h>

int main(){
    char str[] = "afZ_r9VYfScOeO_UL^RWUc";
    int k = 5;
    for(int i = 0; i < strlen(str); i++){
        str[i] += k;
        k++;
        printf("%c",str[i]);
    }
    return 0;
}

代码运行结果即为答案

第三题:丢失的MD5

解题思路:

1、下载解压得到md5.py,运行得到报错

2、根据错误提示加上encode3、运行出结果

第四题:传统知识+古典密码

解题思路:

1、打开压缩包

2、两个信息,第一个明显跟传统知识天干地支有关

 对比得28  30  23 08  17  10  16  30,然后再看到信的背面还有一个+甲子,一甲子60年,然后把60加到上面一段数字中可以得到数字串:88  90  83  68  77  70  76  90,可能是数字,但更有可能是ASCII码XZSDMFLZ。

3、传统知识基本解完了,接下来是古典密码部分,古典密码主要有栅栏,凯撒,棋盘,摩丝等等,最常见的应该是栅栏和凯撒,在查询过程中得到两个解密网站,分享在这里http://ctf.ssleye.com/?tdsourcetag=s_pcqq_aiomsg栅栏加密/解密 - Bugku CTF,压缩包给了两个文件,第一个与传统知识有关,我一直以为第二个与古典密码有关,试了几次发现解不出什么,后来上网查,有人说第二个是迷惑文件(这也行?)

栅栏枚举一下出来俩 XMZFSLDZ,XSMLZDFZ,

4、以为答案是其中之一,结果不是。。。没办法,只能上网查一下。。。又用了凯撒密码,不知道key,枚举答案有50个左右,连蒙带猜答案最后是SHUANGYU

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值