현생/게임핵 분석
FPS 오픈소스 게임핵 개발과 시큐어 코딩 (2) - 치트엔진 구조체 파악
현생준비중
2024. 4. 6. 19:25
Target
* AssaultCube
큐브 엔진을 탑재한 오픈 소스 1인칭 비디오 게임
어릴 때 했던 미니건즈 같은 느낌인데 멀티까지 된다.
소스코드 - https://github.com/assaultcube/AC
구조체 파악
Memory View - Dissect data/structures
Memory View
버튼을 누르면 Memory Viewer를 실행할 수 있다.
Tools
- Dissect data/structures
여기에서 구조체를 찾아볼 수 있다.
찾았던 체력포인터의 위치를 기반으로 구조체를 분석해보자00841BC0
을 Group 1에 입력하고 Structures
- Define new Structures
를 누르고 OK하면 설정했던대로 알아서 분석해준다. 구조체의 크기는 모르니 4096으로 일단 설정하자
게임 내에서 의도적으로 값을 변환해서 모든 무기의 탄약 정보를 찾았다
Memory Viewer
Ctrl + G
로 Address를 입력해 위치로 이동할 수 있다.
구조체의 위치로 가서 확인해보자
실시간으로 변하는 값들은 빨간색으로 표시해준다.
화면을 돌리거나, 움직일 때에 변하는 값들인데 좌표와 Rotate 값이지 않을까?
마무리
사격 시에 Y축으로 값을 더해주는 변수가 있길래 관련해서 어떤 놈이 쓰는지 확인 후 NOP으로 변경해줬다.
무반동으로 사격이 되는걸 확인하고 원하던 대로 잘 수정됐다.
다음은.. C#으로 게임 핵을 제작해보자