原题网址:PolarD&N
下载完题目解压完压缩包就看到一个exe文件,直接就是一个双击运行。
就看见让输入密码,输完窗口就没了,然后就可以知道这题应该就是找正确的密码。
然后我们就直接IDA反编译一下吧
进去就是调用函数,然后一层层跟套娃一样,直接放弃手动找
shift+f12直接查看所有的字符串
直接找到运行时的代码,双击直接查看,直接找到代码。
根据代码得到密码经过异或9的变化与字符串进行比较,一致则right
然后我们有变化,有结果,直接就是代码解密。
#include<stdio.h>
#include<string.h>
int main()
{
int i = 0;
int len = 0;
char temp[50] = { "oehnr8>?;<?:9k>09;hj00o>:<o?8lh;8h9l;t" };
len = strlen(temp);
for (i = 0; i < len; i++)
{
printf("%c", temp[i] ^ 9);
}
return 0;
}
运行直接得到flag
成功!