2024-H&NCTF

最喜欢的逆向题

签到题

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
int __cdecl main(int argc, const char **argv, const char **envp)
{
unsigned __int64 v3; // rax
char Buffer[272]; // [rsp+20h] [rbp-128h] BYREF
sub_140001010(aFlagIs);
gets_s(Buffer, 0x104ui64);
v3 = -1i64;
do
++v3;
while ( Buffer[v3] );
if ( v3 < 0x19 ) // 25
{
if ( Buffer[5] == 105 && Buffer[7] == Buffer[10] && Buffer[15] == Buffer[22] )
sub_140001070(Buffer);
else
sub_140001010("flag is wrong");
getchar();
}
else
{
sub_140001010("flag is too long");
}
return 0;
}

流程就是 输入>长度判断>字符比较,通过了就进入正确的分支

直接进入 正确分支查看

1
v1 = *(char *)(a1 + 5);		//传入的参数就是a1数组

已经知道a1的第5位(ascii码105),直接上手找就行,直接拿flag

1
H&NCTF{Do_Y0u_like_F5_1n_Rev}

2024-H&NCTF
http://example.com/2024/05/13/2024-H&NCTF/
作者
Tsglz
发布于
2024年5月13日
许可协议