#include <stdio.h>
int main(){
unsigned int random;
random = rand(); // random value!
unsigned int key=0;
scanf("%d", &key);
if( (key ^ random) == 0xdeadbeef ){
printf("Good!\n");
system("/bin/cat flag");
return 0;
}
printf("Wrong, maybe you should try 2^32 cases.\n");
return 0;
}
랜던 값을 생성하는데 시드값을 설장해주지 않으면 값이 고정되기 때문에 gdb로 값을 얻어 0xdeadbeef와 xor수행