Write_Up 4

Codegate23+24 rev Review

1. BackTo1986 해당 문제는 codegate 2023에 나온 reversing문제이다. 위 세 파일을 제공해주고, 이는 QEMU로 실행하는 것 같다.QEMU는 리눅스 커널을 구동하는 가상 머신- bzImage : 커널 이미지- start.sh : 실행 스크립트qemu를 처음 구동시켜보았기에 다소 초반부터 헤맸다. 그리고 initramfs.cpio.gz에 main 바이너리 파일이 존재했다. 우선 구동 시키기 위해서 qemu를 윈도우 버전으로 다운로드 해주었다. 그리고 파일 경로에 한국어가 적혀있으면 오류가 났기에 c드라이브로 문제 파일을 옮겨서 실행해주었다. 실행해주면 다음과 같은 게임을 즐길 수 있다.이제 아이다를 통해 함수들을 둘러봤다. Shift+F12를 눌러서 창에서 보았던 LIFE, ST..

Write_Up/REV 2025.03.24

[HKCERT_CTF_2024] Baby Cracker, Yet another crackme Writeup

Reverse_Baby Cracker 가장 먼저 바이너리 파일을 IDA로 열어주면 main함수가 보이는데, main함수만 보면 되는 간단한 문제였다.  로직을 확인해보면 크게 3단계 조건문으로 나눌 수 있다. 1. 첫번째 조건문- 사용자가 입력한 문자열에 'hkcert24{' 가 포함되어있는가? 2. 두번째 조건 - 사용자가 입력한 문자열의 끝이 '1}' 로 끝나는가?- 그리고 뒤에서 3번째 4번째 5번째 문자열에 대한 방정식이 존재  --> 해당 방정식에서는 4번째 문자열은 'h' 이고, 3번째 + 5번째 = 196임을 알아낼 수 있다. 3. 세번째 조건- '*((char *)off_4058 + i) ^ haystack[i + 9]) == byte_2123[i]' 해당 조건을 만족하는가? 세번째 조건에..

Write_Up/REV 2024.11.18

[ISITDTU_CTF_2024] re01, animal Writeup

Reversing_re01 해당 문제를 IDA를 통해 열어보면 main함수에서 해시값과 비교하고, 조건에 부합하면 flag가 맞다는 문구를 출력하는것을 확인할 수 있다.그치만 이 전에 IDA에서 TlsCallback함수가 존재하는 것을 볼 수 있다. TlsCallback함수는 main보다 먼저 실행되는 함수이기에 이 함수를 먼저 보게되면, 임의로 flag라고 적어둔 주소에 값을 담아주고 what함수를 호출하는 것을 확인할 수 있다. 그리고 이 what함수에서 Flag라고 적어둔 주소에 담긴 값을 하나하나 0x35랑 xor연산하고 있는 것을 볼 수 있다. 이렇게 main함수에 해시값 등등은 볼 필요가 없었고 TlsCallback함수를 먼저 확인하면 풀리는 문제였다. flag : ISITDTU{Congrat..

Write_Up/REV 2024.11.08