准备
环境:Windows10
工具:ExeinfoPE、upx、IDA、x32dbg、010Editor
开始
附件是.exe文件,使用ExeinfoPE查看文件信息

能看出来此文件被upx加了壳。
使用upx脱壳

将脱壳后的文件放入IDA静态分析
main函数:
int __cdecl main(int argc, const char **argv, const char **envp)
{
char v4; // [esp+4h] [ebp-804h] BYREF
char v5[1023]; // [esp+5h] [ebp-803h] BYREF
char v6; // [esp+404h] [ebp-404h] BYREF
char v7[1023]; // [esp+405h] [ebp-403h] BYREF
v6 = 0;
memset(v7, 0, sizeof(v7));
v4 = 0;
memset(v5, 0, sizeof(v5));
printf("please input code:");
scanf("%s", &v6);
sub_401000(&v6);
if ( !strcmp(&v4, "DDCTF{reverseME}") )
printf("You've got it!!%s\n", &v4);
else
printf("Try again later.\n");
return

本文详细介绍了如何通过逆向工程分析.exe文件,从使用ExeinfoPE查看文件信息,到利用upx脱壳,再到IDA静态分析,发现关键函数sub_401000的解密逻辑。通过对汇编代码的解析,作者构造了解密脚本,最终得到解密后的flag。过程中涉及ASLR、010Editor、x32dbg等工具的使用,展示了逆向工程在软件分析中的应用。
最低0.47元/天 解锁文章
1305

被折叠的 条评论
为什么被折叠?



