[Dreamhack] simple-operation (REVERSING)
fd = open("./flag", 0); read(fd, buf, 0x45uLL);buf에 flag 내용을 복사한다. if ( !strcmp(s1, "a0b4c1d7") ) { puts("Congrats!"); puts((const char *)buf); }s1이 a0b4c1d7과 동일하면 flag 내용을 출력한다.s1은 a0b4c1d7이어야 한다. snprintf(s, 9uLL, "%08x", v6 ^ v7); for ( i = 0; i s = v6 ^ v7 (v6: rand_num, v7:input num)인데, s의 7번 인덱스부터 0번 인덱스를 s1에 넣으므로, 즉 역순으로 넣은 결과이므로 s는 7d1c4b0a이다.a ⊕ b = c일 때XOR 연산은 a = b ⊕ c, b..
REVERSING/Dreamhack
2025. 4. 30. 16:24