第一步:看题目
题目描述:爆破、简单解密
第二步:获取flag
我们打开附件看到三个文件
打开cipher文件得到
Ygvdmq[lYate[elghqvakl}
hint.txt
哼,压缩包的密码?这是小Z童鞋的生日吧==
压缩文件:howtoencrypt.zip需要密码
根据题目提示可得到密码是小z的生日,这可以用到压缩包爆破工具,可知生日是八位数,设置好接下来就开始爆破
19990306
得到classic0.c内容为
#include<stdio.h> char flag[25] = *** //flag长度为25 int main() { int i; for(i=0;i<25;i++) { flag[i] -= 3; flag[i] ^= 0x7; printf("%c",flag[i]); } return 0; }
这应该是一个加密代码,我们按照加密代码,写一个解密的,flag就会出现(这边建议用C语言,他用C语言加密的,用C语言写一个解密会很简单)
#include<stdio.h> char flag[25] = "Ygvdmq[lYate[elghqvakl}"; int main() { int i; for(i=0;i<25;i++) { flag[i] ^= 0x7; flag[i] += 3; printf("%c",flag[i]); } return 0; }
得出flag为
actf{my_naive_encrytion}
标签:25,--,crypto,C语言,int,flag,解密,classic0 From: https://www.cnblogs.com/xwsfw/p/16800346.html