Arena · Tersine mühendislik
XOR Kapısı
50 puankolay
Ele geçirilen bir programın parola kontrol rutini disassemble edildi. Kaynak şu şekilde geri getirildi:
int check(char *s){
unsigned char k = 0x42;
for(int i=0; s[i]; i++)
if((s[i] ^ k) != enc[i]) return 0;
return 1; /* dogru parola = flag */
}
Program, girdinin her byte’ını sabit bir anahtarla XOR’layıp gömülü enc dizisiyle karşılaştırıyor. enc dizisi (hex):
030e16031b393a72301d2b2e291d2923322b3f
Kabul edilen tek parola doğrudan flag’indir.