본문 바로가기

reversing.kr

[Reversing.kr]Music Player 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분보다 더 play해야한다고 한다. 1분체크 루틴이 있는데, 그 체크 루틴 후에 flag를 볼 수 있다고 한다. 일단 올리디버거를 통해 잠시 봐본다. Jump to MSV~라는 게 걸리긴 한다. intermodular calls 를 확인해본다. 확인해보니, rtcMsgBox가 보인다. 이렇게 메시지박스를 띄.. 더보기
[Reversing.kr]Easy Unpack Easy Unpack 패킹 여부를 확인했는데, 딱히 특별한 정보는 보이지 않는다. 무엇으로 패킹되어있는지는 알 수 없다. OllyDbg로 OEP를 찾아보도록 한다. 일단 ASCII 문자열이 보이고, 저기 40A109에서는 밑에 Easy_Unp가 보여서 bp를 걸어줬다. 저기 JNE에는 모두 Easy_unp가 있어 bp를 안 걸어주었고, JMP부분에 bp를 걸어주었다. 근데 더 내려보니까 분기점이 너무 많았다... 계속 내려가보니 저기가 진짜 마지막인 듯하다. bp를 걸어준다. 처음엔 실행이 안 돼서 bp를 다 풀고 40A1FB에만 bp를 걸어주고 다시 실행해봤다. 여기로 이동함을 확인했다. 답은 00401150 더보기
[Reversing.kr]Easy crack 1번 처음 화면으로 들어갔는데, 그렇게 눈에 들어오는 것은 없다. text strings를 확인해본다. 익숙한 문자열로 가보도록 한다. ESP + 0x5에 있는 값과 0x61과 비교해서 안 갖으면 401135로 간다. 401135로 가보니, 이 401135는 실패로 가는 길인 듯 하다. 어쨌든, 위에서 봤던 부분을 다시 본다. ESP + 0x5에 있는 값과 0x61과 같아야 한다. 61을 계산기에 돌려본다. 61을 10진수로 바꾸면 97이 나오는데 이에 대한 ASCII는 'a'이다. 그럼 ESP + 0x5에 있는 값은 a여야 한다. 여기 위에서부터 이 글자들이 붙어지는 듯 하다. 특히 ESP+0xA이 들어가 있는 부분을 보아, 그 뒤에 붙어지는 듯한 예감이 맞는 것 같다는 생각이 든다. 예측한 결과를 종합해보.. 더보기