Arch: amd64-64-little
RELRO: Full RELRO
Stack: Canary found
NX: NX enabled
PIE: PIE enabled
SHSTK: Enabled
IBT: Enabled
Stripped: No
A simple challenge where you have to predict the RNG picking an extremely large array of Cookie names, I got a local solve but the remote has disgustingly bad latency that it never got the correct RNG predict.
local_10 =*(long*)(in_FS_OFFSET +0x28); tVar2 =time((time_t*)0x0);srand((uint)tVar2);puts("Give me the cookie I want a 100 times in a row and I\'ll gi ve you the flag!");fflush(stdout);for(local_f8 =0; local_f8 <100; local_f8 = local_f8 +1){ iVar1 =rand();strcpy(local_78,*(char**)(cookies +(long)(iVar1 %100)*8));printf("Guess the cookie: ");fflush(stdout);fgets(local_e8,100,stdin);sVar3=strcspn(local_e8,"\n");local_e8[sVar3]='\0'; iVar1 =strcmp(local_e8,local_78);if(iVar1 !=0){printf("Wrong. The cookie I wanted was: %s\n",local_78);/* WARNING: Subroutine does not return */exit(0);}printf("Correct! The cookie was: %s\n",local_78);fflush(stdout);}
Decompiled using Ghidra, this program wants the user to predict the correct cookie name 100 times in a row to get the flag. First step is to find a list of cookie names using Ghidra, which I did by looking at the cookie array pointer and copied everything to ChatGPT to translate it to a Python array:
Here is the RNG prediction and cookie input loop script: