본문 바로가기

Wargame Write-Up/Reversing.kr16

[Reversing.kr] (Reversing) Music Player 풀이 문제를 다운받고, 압축을 풀면 다음과 같이 나온다. 뮤직플레이어는 1분미리듣기가있다는데, 1분을 체크하는 루틴을 뚫으라한다. 노래를 듣고있었는데, 진짜 1분밖에 못듣는다. 역시 EXE32 파일이다. Ollydbg 로 분석을 해보자 함수목록중, 1분이 지났다는 메시지박스를 띄우는 함수를 발견했다. 4개모두 BP 를 걸고, music player 을 실행하고, Attach 해봐야겠다. 노래를 틀고 어탯취 하고, 1분을 넘기면 이렇게 나온다. 이 함수를 한번 분석해봐야겠다. 위에 EAX 와 0xEA60 (60000) 을 비교한다. 60000ms == 60s == 1m 이기때문에, 1분을 검사하는곳인걸 알 수 있다. 1분이 넘어도 들을 수 있게 패치해야겠다. JL 을 JMP 로 바꾸면, 1분이 넘어도 점프하므로.. 2020. 3. 18.
[Reversing.kr] (Reversing) Easy Unpack 풀이 압축을 풀고 보면, OEP ( Original Entry Point ) 를 찾으라한다. DIE 로 열어봐도, 어떻게 Packing 되었는지 모르기때문에 직접 찾아보는수밖에없다. 실행시켜보면, 문자열도 없고, 빈화면만 있다. 이제 Ollydbg 로 OEP 를 찾아보자. 이상한함수에 불시착하였다. 밑으로 내려가며 분석해보자. 이 함수에서는 주소값을 가지고 XOR 하는걸 볼 수 있다. XOR 연산을 으로 언패킹하는것 같다. 언패킹후, 401150 으로 점프하는걸 볼수있다. 여기가 OEP 이다. [ OEP ] 2020. 3. 18.
[Reversing.kr] (Reversing) Easy Keygen 풀이 다운받고 압축을 풀면, Serial = 5B134977135E7D13 인 Name 을 찾으라한다. Name 과 Serial 을 입력받는걸 볼 수 있다. 32bit EXE 파일이므로, 올리디버거로 연다음, 문자열검색으로 입력받는곳으로 가보자. 0040102E |. 68 60804000 PUSH OFFSET 00408060 ; ASCII "Input Name: " 00401033 |. F3:AB REP STOS DWORD PTR ES:[EDI] 00401035 |. 66:AB STOS WORD PTR ES:[EDI] 00401037 |. AA STOS BYTE PTR ES:[EDI] 00401038 |. C64424 10 10 MOV BYTE PTR SS:[ESP+10],10 0040103D |. C6442.. 2020. 3. 18.
[Reversing.kr] (Reversing) Easy Crack 풀이 문제를 눌러 Easy_CrackMe.exe 파일을 다운받자. 일단 die ( Detect It Easy ) 로 열어보면, 32bit 파일임을 알 수 있다. 비밀번호를 입력하는칸과, 확인 버튼이 있는걸 알 수 있다. ollydbg 로 문자열을 찾아 클릭한 후, 함수에 BP를 걸어 실행시켜보자. 확인을 눌렀을때, 우리가 입력한 값을 검사하는 함수가 실행된다. [ 분석 ] 00401094 |. 6A 64 PUSH 64 ; /MaxCount = 100. 00401096 |. F3:AB REP STOS DWORD PTR ES:[EDI] ; | 00401098 |. 66:AB STOS WORD PTR ES:[EDI] ; | 0040109A |. AA STOS BYTE PTR ES:[EDI] ; | 0040109B .. 2020. 3. 18.