青少年训练平台--crypto-classic0

第一步:看题目

题目描述:爆破、简单解密

第二步:获取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}

 

posted @ 2022-10-17 19:36  小王是fw  阅读(99)  评论(0)    收藏  举报