본문 바로가기

Rerversing/Exercise reversing

[Reversing.kr] - ImagePrc 문제 풀이 11, 12월에 잠시 딴 짓을 하다가 블로그를 너무 신경을 못 써서 이번엔 5번째 문제 풀자마자바로 6번째 문제를 잡아봤다. 자~ 그럼 6번째 문제 풀이 시작.. 결과부터 말하자면 C++의 API 함수 중에서 그래픽컬 한 부분은 전혀 모르기 때문에 -_-; 꼼수를 조금 도입했다. 쩝!~~ [그림. 1] ImagePrc 실행 화면 기존 것들처럼 또 뭔가 Check 하는 녀석인 것 같은데...뭘 말하는지 설명 파일도 없고, 그냥 무작정 Check 를 눌러봤더니... [그림. 2] Wrong 메시지 출력 또 뭔가 틀렸다는 메시지를 출력해준다. 이전에는 뭔가 값을 입력하고 비교 체크를 했는데 이번엔 뭔가 적는 것도 없고...이게 뭔가 싶기도 했다. 뭐! 어쩌라고???바보같이 샘플 파일의 이름은 완전히 배제한 체.. 더보기
[Reversing.kr] - Replace 문제 풀이 5번째 문제 풀이 시작... (블로그를 너무 간만에 하게 됐다. 흠!~~) [그림. 1] Replace 실행 모습 예제 파일의 실행 모습은 뭐 기존의 것과 별 차이는 보이지 않는다. [그림. 2] Access violation error 빈 칸에 숫자 밖에 입력이 안 되는 형식이므로 난 숫자 "12345"를 입력하고 Check를 눌렀는데, 누르는 순간에Access violation error 가 똿~~ windbg를 기본 디버거로 잡아놨었기 때문에 애러 화면에 대한 정보를 볼 수 있었다. 0x40466F 주소의 명령문에서 애러가 났는데 확인해 보면 eax의 주소에 byte 단위의 0x90 값을 MOV 시키려고 했다가 뻗어버린 것을 알 수 있다.해당 명령이 실행될 때 EAX에는 0x60163604라는 값이.. 더보기
[Reversing.kr] - Music_Player 문제 풀이 네 번째 문제 풀이 시작. 이번 예제 파일에도 ReadMe.txt 파일이 존재한다. 읽어보자. This MP3 Player is limited to 1 minutes.You have to play more than one minute. There are exist several 1-minute-check-routine.After bypassing every check routine, you will see the perfect flag. MP3 Player가 1분 밖에 재생을 못한다고 하는데, 그 1분을 체크하는 몇 몇 루틴을 모두 재껴버리면Flag 값을 볼 수 있다고 한다. 나머지 첨부된 파일들을 보면 msvbvm60.dll, Music_Player.exe 가 존재하는데, msvbvm60.dll은 Vi.. 더보기
[Reversing.kr] - Easy UnpackMe 문제 풀이 세 번째 문제 풀이를 시작해보자.제목으로 봐서는 packing 이 된 파일을 unpack 시켜야 하는 것 같은데, 같이 첨부된 ReadMe.txt 파일을 열어보면은... ReversingKr UnpackMe Find the OEPex) 00401000 이렇게 나온다. 즉, 언팩을 한 다음에 Original Entry Point의 주소를 찾아내라는 소리이다. [그림. 1] Entry Point 언팩이 된 파일은 일반 PE 구조와는 좀 다르다.PEViewer 로 확인해보면 Address of Entry Point 가 0x0000A04B라는 것을 알 수 있다.(이 파일도 ImageBase가 0x00400000 부터 시작일테니, 로드가 된다면 0x0040A04B 주소가 Entry Point로 나온다는 얘기..).. 더보기
[Reversing.kr] - Easy Keygen 문제 풀이 두 번째 포스팅 시작..분석할 파일을 디버깅 하기 전에 같이 따라온 txt 파일을 보면 다음과 같은 메시지가 적혀져 있다. ReversingKr KeygenMeFind the Name when the Serial is 5B134977135E7D13 시리얼 값이 5B134977135E7D13 일 때의 이름을 찾아내라는 건데, 한 번 찾아보자. [그림. 1] 실행 화면 이번 예제는 Win32 Console 프로그램군. 적으라는 Name 부분에는 이번에도 어김없이개인로 적어본다. ㅎ보자~~ 이름을 적고 시리얼 키를 텍스트 파일에서 알려준데로 해봤지만 냉정하게도 "wrong" 이라고 결과를 출력해주고 있다.뭐 시리얼 키는 이미 지정된 것이 틀렸을리는 없겠고 저 키에 해당되는 이름이 별도로 있을 것이라 추정할 수.. 더보기
[Reversing.kr] - Easy CrackMe 문제 풀이 본격적인 글?을 처음으로 작성...이미 아주 옛날부터 이쪽에 관심있는 사람들이라면 다 했던 것을 난 이제서야 해본다. 뭐! 목적은 내가 한 것을 남겨보고자 하는 것과 이렇게 남기면서 내 머릿속에 한 번 더 각인시키고자 하는 것이 목적인 만큼활발히는 아닐지라도 애정을 갖고 한 번 진행해보는 것도 나쁘지 않을 것 같다. 지인의 추천으로 알게 된 Reversing.kr 사이트에서 제공된 첫 번째 예제 문제이다.자~~ GoGo!~ [그림. 1] Easy Crack Me 실행 화면 처음 실행 화면은 [그림. 1]과 같다.심플하게 다이얼로그 박스 하나만 있는데 뭔가 입력하고 확인 버튼을 누르면 어떤 반응이 있겠지.(쌩뚱맞게 이게 만약 악성코드 였다면 VM에서 돌렸을텐데... 라는 생각을 했지만, 뭐 믿고 그냥 리얼.. 더보기