더북(TheBook)

5.8.4 게임 치트

온라인 게임에서 치트는 흔하게 발생합니다. 다른 사람의 정보를 훔치거나 망가뜨리지는 않더라도 게임 플레이를 정상적으로 하지 못하게 합니다. 그래서 여러 사람을 짜증나게 하죠.

앞서 살펴보았듯이, 클라이언트에서 게임 플레이를 판단하는 것들은 쉽게 해킹을 당할 수 있습니다. 이를 막기 위해서 어떻게 해야 하는지 이미 살펴보았습니다. 막는 데 너무 집중하면 실시간 멀티플레이어 품질을 떨어뜨릴 수도 있으므로 절충하는 것이 중요합니다.

치트 역시 네트워크 공격, 즉 클라이언트 공격을 이용하는 것이 일반적입니다. 네트워크 도청 및 조작을 해서 해킹하는 경우들을 살펴봅시다.

1. 어떤 게임이 있습니다. 이 게임에서는 플레이어 캐릭터가 공격을 할 때마다 “플레이어가 공격 행동을 한다.”라는 메시지를 서버에 보냅니다.

2. 해커 Alice는 이 메시지를 갈무리합니다. 그리고 이 메시지를 마구잡이로 복제해서 서버에 보냅니다.

3. 서버에서는 이 메시지를 다 처리합니다. 그리고 Alice는 엄청난 공격 속도로 다른 플레이어들을 모두 제압합니다.

이를 해결하려면 서버에서 받는 메시지가 시간 차이도 유효한지 살펴보아야 합니다. 게임 시스템이 복잡할수록 해커는 다양한 빈틈을 노릴 것입니다. 계속해서 창과 방패의 공방전이 벌어지는 것이죠.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.