[WUSTCTF2020]level2
解析
这道题其实并不难,一开始查壳,发现32位,但是是upx的壳,现在只需要进行一个脱壳的操作,之后放入ida中,发现有main函数,进入main函数中进行查看,发现直接就有一个flag。
; int __cdecl main(int argc, const char **argv, const char **envp)
public main
main proc near
var_C= dword ptr -0Ch
var_4= dword ptr -4
argc= dword ptr 8
argv= dword ptr 0Ch
envp= dword ptr 10h
; __unwind {
lea ecx, [esp+4]
and esp, 0FFFFFFF0h
push dword ptr [ecx-4]
push ebp
mov ebp, esp
push ecx
sub esp, 14h
mov [ebp+var_C], offset flag ; "wctf2020{Just_upx_-d}"
sub esp, 0Ch
push offset aWhereIsIt ; "where is it?"
call puts
add esp, 10h
mov eax, 0
mov ecx, [ebp+var_4]
leave
lea esp, [ecx-4]
retn
; } // starts at 804887C
最开始可能以为这个flag是假的flag,之后运行了一下,发现只是输出了where is it ?
之后并没有其他的任何的一个逻辑在其中,所以最后的答案是wctf2020{Just_upx_-d}