我从一个二进制文件中获得了这段代码,它要求输入用户名和密码,我设法找到了用户“mari”和密码“luig”,但它说用户名错误,这里是代码:
undefined8 main(void)
{
int iVar1;
undefined4 local_96;
undefined2 local_92;
undefined local_90;
undefined4 local_8f;
undefined2 local_8b;
undefined local_89;
char local_88 [64];
char local_48 [64];
local_8f = 0x6769756c;
local_8b = 0x3169;
local_89 = 0;
local_96 = 0x6972616d;
local_92 = 0x316f;
local_90 = 0;
printf("enter username :");
__isoc99_scanf(&DAT_00102019,local_48);
iVar1 = strcmp(local_48,(char *)&local_96);
if (iVar1 == 0) {
printf("enter password :");
__isoc99_scanf(&DAT_00102019,local_88);
iVar1 = strcmp(local_88,(char *)&local_8f);
if (iVar1 == 0) {
printf("welldone use it to submit the flag :D");
}
else {
printf("wrong password");
}
}
else {
printf("wrong username");
}
return 0;
}
为什么“mari”作为用户,“luig”作为密码不起作用?