(GameGuardian / Cheat Engine 등) 치팅 프로그램에서 찾아둔 값이 껐다 키면 변하는 경우 ++ 찾기 어려…
종종, 게임을 껐다 키면 치팅 프로그램에서 찾아둔 값이 변해있어서,
다시 찾는데에 항상 피곤함을 느끼죠.
일단 가장 먼저 설명해야 할 부분이 수식이 아닐까 하는데요.
어드레스의 경우에는 0 - 1 은 -1 이 아닌, F입니다.
0 - 1 = F
9 + 1 = A 가 되고요.
예시로
200 - 1 = 2FF 입니다.
즉, 숫자의 순서가 0 1 2 3 4 5 6 7 8 9 A B C D E F 라는거죠.
어드레스의 특성상, 게임 보안에 따라 달라지지만
일반적으로 유동주소 3자리, 변하지 않는 고정값 3자리, 맨 앞 라이브러리 2자 까지
예시로는
9C000123
뒷 3자리 123은 저희가 찾은 값의 고정값입니다.
000은 유동값이고요.
여기서부턴 똑똑하신 분은 번뜩이는게 있을텐데요.
게임을 끄기전, 찾아놓은 값의 주소가 9C1254BB 다시 켜보니 9C4A54BB 라고 해봅시다.
잘라서 보면
9C 125 4BB
9C 4A5 4BB
125와 4A5의 차를 구하면 미리 찾아둔 값들의 플로팅 3자리만 변경해서 주소를 검색하면
번거롭게 다시 메모리 서칭할 필요가 없습니다.
4A5 - 125 = 380
A는 10과 같고,
B는 11
C는 12겠죠.
그 뒤는 일반적인 수학 계산과 같습니다.
++찾기 쉬운 특정 값의 주소를 찾아내고 , 어드레스에서 찾기 어려운 값을 찾는 경우도 있는데요.
이때도, 찾기 쉬운 특정 값 2개를 찾아보고, 두 가지의 공통점을 통해 찾기 어려운 값을 찾는 방법이 있습니다.
단순 노가다 일 수도 있지만, so 를 뜯는게 어려우신 분들은 차라리 단순 노가다가 낫다고 생각 하실 수도 있습니다.
두가지의 값이 9C4A54B0 , 9C4A57C0 일 경우로 생각해봅시다.
뒷 3자리만 보면 됩니다.
4B0 , 7C0 0으로 끝난다는 공통점이 있습니다.
이를 기반으로 어드레스에서 0으로 끝나는, 9C4A5 로 시작하는 어드레스들을 하나 둘 씩 수정해보면 원하는 값을 찾을 수 있습니다.
기본적인 지식입니다.
SERVER SIDE (서버기반) 앱들은 게임가디언 등으로 뚫리지 않습니다.
값이 찾아져도, 혹여나 변경을 해도 게임에 정상적으로 반영이 되지 않는다면 서버기반 게임입니다. 암호/복호화 때문이 아닙니다.