Cheat Engine 2020. 4. 15. 09:15

준비물

1. 치트엔진 6.8src https://hackbox.tistory.com/m/90

2. 라자루스 http://www.lazarus.freepascal.org/index.php?page=downloads

3. asr http://gusqls9901.tnaru.com/files/mc/board/0/220/actualsr_lbr_1_rbr_.zip

4. windows driver kit http://software.naver.com/software/summary.nhn?softwareId=MFS_104443

5. 아크로 에디터 http://www.acrosoft.pe.kr/board/63446

 

주의사항

driver kit 설치시 전부 체크후 설치할 것!

 

1. 6.8src를 c드라이브에 압축해제후 DBKKernel 풀더안의 ce.bet을 오른쪽 클릭후 아크로에디터로 열기

 

2.copy .\obj%BUILD_ALT_DIR%\i386\지정하고픈 엔진의 이름 5글자.sys "..\Cheat Engine\bin\지정하고픈 엔진의 이름 5글자.sys" goto successend: x86success:

  copy .\obj%BUILD_ALT_DIR%\amd64\지정하고픈 엔진의 이름 5글자.sys "..\Cheat Engine\bin\지정하고픈 엔진의 이름 5글자.sys" goto successend

 

굵게 처리된 부분을 수정해야하며 영어와 숫자로만 엔진의 이름을 정해야함. 수정후 꼭 좌상당의 저장을 누를것.

 

ex) obj%BUILD_ALT_DIR%\i386\star1.sys"

 

3. 저장을 완료한 후 다시 DbkKernel 풀더의 sources.ce를 열어 targetname에 앞서 ce.bet에 수정했던 엔진의 이름을 입력후 저장

 

ex) targetname=star1

 

4. windows driver kit에 Checked Build Environment을 열게되면 명령프롬포트창이 열림. (32비트용 x86, 64비트용 x64) 

   프롬포트창에 cd c:\CheatEngine64src\DBKKernel 을 입력해준다. (이는 자신이 소스파일을 설치한 경로를 설정해 주어야하며 앞의 예제는 c드라이브에 압축을 풀었을시 기본경로임.)

   입력후 다시 ce를 입력. 

   "1개의 파일이 복사되었습니다." 라는 말이 나와야 정상적으로 성공. 만약 실패시 처음부터 다시 시도할것.

 

5. cheatengine64src풀더안의 bin풀더를 열게되면 새롭게 복사한 sys파일이 생성되어 있어야함. 

 

ex) ...\bin\star1.sys

 

6. 다시 src풀더로 돌아가 cheatengine.lpi를 실행. 뭔가 복잡한 창이 뜨지만 우리와는 별 관계없음. 

   상단 툴바에 project->project inspector 실행.

   검색창에 main을 검색후 mainunit2.pas를 더블클릭

 

7. resoursestring부분의 ceneme='엔진의 이름' 부분을 입맛에 맞게 변경후 컴파일 진행 (단축키 F8)

 

ex) ceneme='핵커엔진' 

 

8. 다시 DBKKernnel풀더로 돌아가  IOPLDispatcher.c 파일을 아크로에디터로 열기

   많은 단어들이 나오는데 우리가 수정해야할 부분을 검색(ctrl+f)하여 찾아줌

   우리가 수정해야하는 부분은 ReadProcessMemory, WriteProcessMemory, GetMemoryRegionData 임.

   검색하게되면 ntStatus=ReadProcessMemory( (DWORD)pinp->processid-0x0000,null, (PVOID)pinp 블라블라 나올텐데

   빨간부분을 수정해야함. 자신이 원하는 우회값을 숫자로 입력 단, IOPLDispatcher.c를 수정할땐 반드시 -를 붙여야함.

 

ex) processid-0x5480

   

    3개(ReadProcessMemory, WriteProcessMemory, GetMemoryRegionData)를 검색하여 모두 같은값으로 수정해야함. 

 

9. 다시 6번과 같이 치트엔진을 열어주고 마찬가지로 상단 툴바의 project->project inspector를 실행. 검색창에 dbk를 검색하고 dbk32\DBK32functions.pas를 더블클릭후

   검색기능으로 input.ProcessID:=handlelist[i].processid 를 검색후 input.ProcessID:=handlelist[i].processid+0x0000의 빨간부분에 8번에서 설정한 우회값을 재입력

   단, 8번에서는 반드시 '-'를 붙여야 했지만 여기서는 반드시 '+'를 붙여야함.

 

ex)input.ProcessID:=handlelist[i].processid+0x5480

*프로세스 아이디 제일 쉬운 우회방법입니다. 실제사용은 매우 불가능합니다! 참고바랍니다.

posted by 핵커 커뮤니티
: