来看一道简单的RE_xor逆向异或题
下载后拉进Ex发现无壳
再拖进ida分析
发现没有线索找到main函数按f5进行反汇编
观察伪代码发现strcpy的字符串刚好为24个符合if语句运行条件,我们需要将strcpy的字符串用ASCLL转化为数字
接下来就简单了,用c语言仿照伪代码写一个脚本
#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
int main()
{
int tmp[] = { 85,74,117,99,101,125,85,54,89,96,115,55,55,101,109,55,104,97,89,97,105,54,98,123 };
int flag[40];
int i;
for (i = 1; i < 24; ++i)
{
flag[i] = tmp[i - 1] ^ 6u;
printf("%c", flag[i]);
}
printf("\n");
return 0;
}
运行后得到答案