일단 일주일동안 피시님 (및 피시님 홈페이지) 에게서 버그 리포트가 없는 것으로 보아
어느정도 안정화되었다고 생각되어 공식 버전으로 올립니다.
이전 공식 버전에서의 변경점
1. 내부 코드 리팩토링.. 이건 사용자 입장에서는 아무래도 상관없고;
2. 세로 폰트 삭제
- 폰트 선택시 @굴림 같은 폰트는 리스트에 나오지 않습니다.
3. 스마트 문자열 방식 추가
- 이 방식에 관한 자세한 사항은 http://lab.aralgood.com/48293 참조.
- 윗 글의 OVERWRITE(BUFCHANGE,LENCHANGE) -> SMSTR 입니다.
- SMSTR(IGNORE), SMSTR(MATCH) 에 관한 사항은 http://lab.aralgood.com/49640 참조.
4. 문자열 길이 보정 기능 추가
- 위치는 숫자(예: 4, -8, +0xC 등) 혹은 수식(예: [EAX+EBX*0x4]+4)이 가능합니다.
- 숫자의 경우 기본적으로 번역인자가 가리키는 문자열의 첫 위치의 상대 바이트 주소이며 무조건 16진수입니다.
- 단 SMSTR 의 경우 번역인자가 가리키는 스마트 문자열의 첫 위치의 상대 바이트 주소입니다.
- 수식의 경우 무조건 수식이 가리키는 메모리를 보정합니다.
5. SOW 의 백업 복구 위치를 번역 준비시에서 번역 직후로 변경하였습니다.
- 다시 말해, 이전에는 후킹 시작하자마자 복구하던 것을 번역이 성공하면 이전것을 복구하도록 되었습니다.
6. 윈도우 비스타 이상에서 절대주소를 무조건 상대주소 후킹으로 변경
- 윈도우 비스타 이상에서 exe 파일 시작위치가 0x400000 이 아닐 수 있기 때문에 변경.
- 참조 - ASLR(Address Space Layout Randomization)
http://www.reversecore.com/tag/IMAGE_DLLCHARACTERISTICS_DYNAMIC_BASE
- 옵션창에 표시는 절대주소로 표시됩니다만 실제로는 game.exe!0x1234 와 같은 방식으로 동작합니다.
소스, 실행파일 SVN 추가 완료.
whoami
- 2012.03.30
- 11:49:49
안녕하세요.
뭐 그냥 새 글을 만들어서 적으시면 좋을텐데요.
일단 생각해볼 수 있는 것은 더블 후킹인데요..
1. 게임을 에그헤드가 후킹
2. 에그헤드를 아랄이 후킹
(혹은 반대방향으로..)
장점이라면 (이런 더블 후킹이 가능하다면) 특별한 개발 없이 가능하다는 것인데.. 어떤 부작용이 있을지 모르고..
실제 가능한지도 모르겠습니다.
혹은.. 아예 클립보드 감시하는 플러그인을 만들어 후킹플러그인 카테고리에 추가시키는 방법도 있습니다.
에그헤드가 보내주는 클립보드 데이타를 받아 처리하고 다시 클립보드로 에그헤드에게 넘겨주는 방법입니다.
그런데.. 에그헤드에 클립보드 데이타를 주고받는 기능이 있는지 없는지 잘 몰라서;; 확답은 못 드리겠네요.
또 플러그인을 하나 새로 개발해야 한다는... (쿨럭)
그리고.. 일단 ATCode 플러그인 버그좀 잡고 커스텀딕을 디벼보려고 합니다. 잘하면 커스텀딕에서 지원할
수 있을지도 모르지요.. Hide_D님 말씀대로 구조상 문제가 있다면 전체를 뜯어고쳐야 할지도 모르겠습니다만 oTL
whoami
- 2012.03.31
- 01:09:00
발더 스카이 테스트. 이렇게 나오면 제대로 후킹 되는 것 아닌가요?
노을빛 받아봐야 하나. 그런데 이 게임 원이름을 좀 알려주셔야 찾는다는...;;;
일요일까지 기다렸다가 업데이트하겠습니다!