攻防世界逆向-insanity
有个附件,打也打不开,也没后缀不知道是什么类型的,就先查壳
发现这不是PE文件,是ELF文件,将程序在Linux环境下运行。
查看文件详细信息,是32位的程序。
放入32位的IDA,找到main函数,然后F5查看伪代码。
int __cdecl main()
{ unsigned int v0; // eax@1
int v1; // eax@1
puts("Reticulating splines, please wait..");
sleep(5u);
v0 = time(0);
srand(v0);
v1 = rand();
puts((&strs)[4 * v1 % 0xAu]);
return 0;
}
C语言中,puts是个输出函数
puts("我爱你!"); //直接输出字符串
发现最后是取strs这个字符串,输出。然后就跟进看看这个字符串是啥。
为啥别人跟进字符串都是可以直接得到flag的,我的就不行,而且好几次了,我的IDA跟别人的伪代码不一样,我的64位IDA不能用F5得到伪代码,我的IDA找不到main函数,我要疯了。
在kali下,输入命令+文件名,查看这个文件的字符串。
在IDA里面也可以查看字符串。
记事本应该先试一试