www.zap.pe.kr

admin login

Software Reverse-Engineering

크랙과 리버스 엔지니어링에 관한 자료를 제공합니다. 주로 제가 크랙한 프로그램에 대한 자료를 제공합니다. 하지만 제 실력이 그리 좋지 않은 관계로 하이레벨 자료를 기대하지 않는게 좋습니다. ^^; 직업(?)이 아니라 취미로 하는것이기에... 좀 전문적이지 않습니다. 가끔씩 머리가 아플때마다 머리식히기 위해서 하는데 상당히 재미있습니다. 여러분도 한번 해보세요. ^^



동전PC 크랙 - 2008년 7월 24일

가끔보면 공공장소에 동전을 넣고 사용할 수 있는 PC가 설치되어 있습니다. 제가 PC를 사용하기 위해 간곳도 4분에 100원씩 받더군요. 2~3시간 정도 사용을 해야했는데 동전도 없고 바꾸러가기도 귀찮고 해서 크랙을 하게 되었습니다. 그냥 간단한 방식이라 코드 분석이나 수정은 필요없었네요. 왼쪽은 프로그램, 오른쪽은 작동 모습을 담은 동영상 파일입니다. 100원을 넣고 구동시키면 처음 4분에서 점차 시간이 줄어들다가 크랙을 하면 시간이 멈추는것을 볼 수 있습니다. 폰카가 구형이라 화질은 안좋네요. 문제가 발생할 소지가 있어서 프로그램은 공개하지 않습니다.




SKY-HDTV 리모콘 리버싱 - 2007년 3월 16일

잠자기 전에 침대에 누워서 아프리카 방송을 보는데, 한번 누우면 채널 바꾸기도 귀찮고, 잠들기 전에 PC 전원을 꺼야 한다는 것도 귀찮고 해서 이번 작업을 하게 됐습니다. 스카이디지탈社에서 아프리카 테스트 용도로 보내준 HDTV 카드가 있는데, 동봉된 리모콘은 별 필요가 없더군요. 그래서 이걸 아프리카 제어용으로 사용하기로 했죠. 설치시디에 들어있는 리모콘 제어프로그램인 dispatch.exe를 리버싱하여 각 리모콘 버튼의 ID에 따라 마우스를 움직이고 Left, Right버튼을 에뮬레이트 하도록 했습니다. 간단한 리버싱이지만 실생활에는 꽤 유용하네요. 잠자기 전에 방송 보다가 버튼 하나만 눌러주면 PC 전원까지 끌수 있으니 말이죠. ㅎㅎ 아래는 이번 리버싱에 사용한 제품과 실제 구동 영상 입니다. 소스도 공개되어 있으니 참고하실분은 보시기 바랍니다. ^^





  • remocon.zip - 프로그램 소스 입니다. SKY HDTV 프로그램이 설치되어 있어야 합니다.



한마루 역전재판 1, 2 에뮬레이터 리버싱 - 2005년 8월 21일

오늘 어떤분이 역전재판이란 게임을 플레이하는것을 보게 되었습니다. 소년탐정 김전일 느낌이 나는 열혈 추리물(?) 정도 되더군요. 재미있을것 같아서 해보려 했는데, 한마루에서 만든 전용 에뮬레이터로만 해야지 한글로 플레이 할 수 있어서 좌절. 결국, 야외에서 즐기기 위해 롬파일을 강제 패치 하기로 했습니다. 처음엔 롬을 올린뒤 메모리 덤프하거나 리소스로 박아져 있을 ips 파일을 추출하려 했는데 전부 실패. 결국엔 코드를 직접 리버싱 했는데, 알고보니 패치 파일 두개가 압축되어 박아져 있더군요. 압축을 풀어보니 표준 ips 파일이 아닌 한마루 자체의 ips 포맷. 어쨋든 시간이 좀 걸리긴 했지만 롬파일을 한글로 강제 패치 할 수 있었습니다. 오른쪽이 그 스샷. 다만 한마루 팀이 롬패치를 공개하지 않은 사정을 모르기에 일단은 올리지 않겠습니다. (요청금지) ^^;




Dodge Cracking - 2004년 6월 15일

GOM 플레이어에 이상한 게임이 하나 숨겨져 있습니다. 닷지라는 총알 피하기 게임인데, F1을 누르고 GOM 이라는 이미지를 더블클릭하면 나옵니다. 재미있긴 한데 하다가 짜증나서 그냥 크랙해 버렸습니다. 현재 랭킹 1위네요. ^^; 크랙도중 한가지 흥미로웠던 점은, 이 게임이 패킹(실행파일 암호화&압축) 되어 있다는 거였죠. 크래커들을 막기 위해 사용한것 같은데, 패킹은 실제론 전혀 도움이 되지 못합니다. 보안은 코드내에서 이루어져야지, 다른 툴을 빌려서 하는게 아니죠. 제가 만약 나쁜사람 이었다면 성인광고로 도배를 해놨을텐데.. 그런걸 미연에 방지하기 위해서라도 개발 할 때 보안에 조금이라도 좀 신경썼어야 했지 않을까 생각됩니다. ^^ (패치 자료가 공개될 시 악용될 수 있기에, 스크린샷만 공개합니다.)




Fry (Convert ALZIP to ZIP) - 2004년 2월 8일

어제 웃대에서 휴식을 취하고 있다가 안타까운 글을 읽었습니다. 모 개발자와 모 업체가 알집 파일을 푸는 알고리즘을 갖고 서로 싸우는 내용이었는데, 개인적으로 보기 안좋더군요. 한국사람들끼리 원수처럼 싸우는 것이 참... 그렇게 헐뜯고 싸울만큼 가치있는 기술도 아닌데 말이죠. 리버스 엔지니어링에 조금이라도 경험이 있는 분이라면 손쉽게 분석하실수 있습니다. 아래는 간단한 예제 코드 입니다. 알집이 zip 알고리즘을 그대로 사용하기 때문에, 헤더만 조금 고쳐주시면 zip 파일로 손쉽게 변환이 가능하죠. 아래 예제에서는 한개의 파일만 압축되어 있는 알집 파일을 zip파일로 변환시키는 모습입니다. 코드를 조금 수정 하시면, 여러개의 파일이 압축되어 있는 알집 파일도 변환 가능하죠. 뭐 다 아시겠지만.. ^^





  • fry.zip - 소스 파일 입니다. 콘솔에서 테스트 하다가 mfc로 옮기다 보니 소스가 좀 지저분 합니다. ^^;



Tinker Bell for WinMine 2000 Pro & XP Pro - 2003년 7월 1일

지뢰찾기 맵핵 입니다. 시스템 전역 후킹 라이브러리를 만들다가, 어떻게 하다보니 만들게 되었습니다. 황당하게도 프로그램 이름은 팅커벨로 정했습니다. 만들고 있던 라이브러리 이름이 후크선장 이어서 무의식적으로 프로젝트 이름을 팅커벨로 입력해 버렸거든요. 후킹 라이브러리에서 사용하는 부분들을 그대로 팅커벨(MFC)로 옮기다 보니 소스의 변수 선언부가 약간 어지럽습니다. 혹시라도 소스 보실분은 이점 이해해 주세요. 2003년 7월 1일 업데이트 이후로 윈도우즈 2000 프로페셔널 버젼과 함께 윈도우즈 XP 프로페셔널 버젼의 지뢰찾기도 맵핵이 됩니다. 나머지는 리버싱을 안해봐서 잘 모르겠네요. 선언부만 변경해주시면 다른 버젼도 적용 가능합니다. ^^





  • tinkerbell.zip - 팅커벨 소스 파일입니다. Visual C++ 7.0이 필요합니다. 서비스팩 깔기 귀찮아서 이제부터 6.0은 안쓰기로 했습니다. ^^



References

관련 문서

홈페이지 링크

    $ 국내 홈페이지 $
  • Le4rN TO Cr4cK - 국내 크래킹 관련 포럼. 많은 해커들이 자신이 크래킹한 프로그램에 대한 튜토리얼 문서를 제공.
  • oPEN rEVERSE fORUMS - 리버스 엔지니어링 포럼.
  • dive2code님의 홈페이지 - 크래킹에 필요한 여러 문서를 공개.
  • x3chun님의 홈페이지 - 크래킹과 리버스 엔지니어링에 관한 문서와 프로젝트를 진행.

    $ 국외 홈페이지 $
  • CrackMes.de - 전세계 크래커들이 모여있는 곳. 난이도별로 수많은 크래킹 문제들 출제.
  • ReverseMes.de - 리버스 엔지니어링 사이트.
  • Crack Store - 폴란드의 크래킹 커뮤니티. 크래킹에 필요한 툴, 튜토리얼 문서, 툴사용 문서, 소스등을 제공.
  • Programmer Tools - 컴파일, 디버깅, 패킹 관련 툴을 제공.
  • Stenri님의 홈페이지 - 소프트아이스 화면을 캡쳐하는 IceExt라는 플러그인을 개발.