Wargame/HackCTF
[HackCTF] Strncmp 풀이 (150p)
bjloed
2020. 7. 12. 23:00
문제 종류 - Reversing
사용한 툴 - gdb
풀이
ELF 파일이 주어진다. gdb로 까보자.
매우 매우 수상해 보이는 문자열이 있다. ASCII로 바꾸면 내용은 다음과 같다.
OfdlDSA|3tXb32~X3tX@sX`4tXtz
한번 ELF 파일을 실행해보자.
..? 정답은 맞는 거 같은데 flag가 안 뜬다.
자세히 보니 저 문자열.. 뭔가 flag 형식이랑 비슷하게 생겼다.
그리고 xor 레지스터가 존재하는 걸 봐서는, 저 문자열과 어떤 key가 XOR 연산을 수행하면 flag가 나올듯하다.
OfdlDSA가 HackCTF라고 가정하고 key 값을 구해봤다.
XOR key = 7로 XOR 연산을 수행해보자.
#include <stdio.h>
int main() {
char arr[29] = "OfdlDSA|3tXb32~X3tX@sX`4tXtz";
char answer[29] = "";
int key = 7;
for(int i=0; i<28; i++)
answer[i] = arr[i] ^ key;
printf("%s",answer);
}