1P by neo 2달전 | favorite | 댓글 1개
  • CSGO 서버 운영의 세계

    • InvexGaming이라는 호주 및 뉴질랜드 기반의 CSGO 커뮤니티 서버를 운영했음. 이 서버는 커뮤니티, 콘텐츠, 대회, 커스텀 게임 플러그인 덕분에 인기를 끌었음.
    • 서버 운영에는 커뮤니티 포럼과 서버 인프라 유지, 비용 관리, 콘텐츠 추가, VIP 시스템 자동화, 커스텀 플러그인 작성, 게임 버그 수정, DDOS 공격 방지, 규칙 위반 플레이어 처리 등의 작업이 포함됨.
    • 가장 번거로운 작업은 치터를 식별하고 차단하는 것임.
  • 고양이와 쥐의 게임

    • 게임에는 항상 치터가 존재하며, 서버 운영자는 다양한 기술을 사용하여 이들을 감지할 수 있음.
    • 서버 측 코드, Valve Anti-Cheat (VAC) 시스템, 커널 측 반치트 등을 활용할 수 있음.
    • 그러나 이러한 방법들은 모든 치트를 자동으로 감지할 수 없으며, 최후의 수단으로 CSGO 데모를 통해 수동으로 분석해야 함.
    • 치터를 잡으면 서버에서 영구적으로 차단해야 함. 그러나 치터들은 다시 치팅을 시도하며, 기술적으로 숙련된 플레이어는 차단을 회피할 수 있음.
  • 차단 회피의 기술

    • 차단 회피는 IP 주소와 Steam ID 같은 식별 정보를 변경하여 이루어짐.
    • 새로운 Steam ID나 IP 주소를 사용하면 차단을 회피할 수 있지만, 시스템은 이러한 변경을 감지하고 새로운 식별 정보를 기존 차단과 연관시킴.
    • VPN을 사용하여 IP 주소를 변경할 수 있지만, Steam ID가 차단된 경우 다시 차단됨.
    • 두 식별 정보를 동시에 변경하면 새로운 플레이어로 인식되어 차단을 회피할 수 있음.
  • IP 주소 지문 인식의 문제점

    • Steam ID는 플레이어를 고유하게 식별하지만, IP 주소는 그렇지 않음.
    • 형제나 대학 네트워크와 같은 공유 네트워크에서 문제가 발생할 수 있음.
    • 이러한 경우를 위해 예외 시스템을 구축했지만, 신뢰할 수 없는 네트워크에서는 플레이하지 말 것을 권장함.
  • IdentityLogger

    • 치터들은 게임에서 항상 문제를 일으키며, 2017년 초에는 차단 회피 문제가 심각해졌음.
    • Steam ID와 IP 주소를 동시에 변경하는 문제를 해결하기 위해 VGUI 브라우저를 활용하여 쿠키를 저장하는 방법을 고안함.
    • 이 쿠키는 게임을 종료하고 재시작해도 유지되며, 치터들이 쉽게 삭제할 수 없는 Steam 설치 디렉토리에 저장됨.
    • 이를 통해 추가적인 식별자인 Tracking ID를 생성하여 플레이어를 식별할 수 있게 됨.
  • 2017년의 대규모 차단 물결

    • 2017년 2월에 이 시스템을 모든 Invex Gaming CSGO 서버에 배포했으며, 많은 치터들이 차단됨.
    • 커뮤니티는 "치팅하기 어려운" 서버로 명성을 얻었으며, 치터와 관련된 보고가 크게 줄어듦.
    • 이 방법은 Valve가 VGUI 브라우저를 제거할 때까지 효과적으로 작동했으며, 이후 공개적으로 기술을 공유하고 오픈 소스로 플러그인을 제공했음.

GN⁺의 정리

  • 이 글은 CSGO 서버 운영 중 치터를 식별하고 차단하는 방법에 대한 흥미로운 사례를 다루고 있음.
  • VGUI 브라우저를 활용한 쿠키 기반 식별 방법은 창의적이고 효과적이었으며, 커뮤니티의 치터 문제를 크게 줄였음.
  • 이 방법은 Valve의 업데이트로 인해 더 이상 사용할 수 없지만, 게임 보안에 대한 새로운 접근 방식을 제시함.
  • 비슷한 기능을 가진 프로젝트로는 VAC 시스템이나 기타 반치트 소프트웨어가 있음.
Hacker News 의견
  • UT2004에서 플레이어를 차단하는 방법으로 GUID 또는 IP를 사용함. 하지만 Epic이 게임을 포기하면서 키 생성기가 등장해 GUID 차단이 무용지물이 되었음. IP 차단은 VPN 사용으로 한계가 있음
    • 현재 가능한 해결책은 IP 차단과 VPN 차단을 결합해 알려진 VPN 서브넷을 방화벽에 추가하는 것과 특정 시스템 폴더 구조를 스캔하는 지문 인식 기법을 사용하는 것임
  • RFC5737 TEST-NET-2 주소를 사용한 것에 대해 작성자에게 찬사를 보냄
  • 큰 나라의 플레이어들은 작은 나라에서 존재하는 커뮤니티 감각을 종종 놓침. 적은 수의 서버에서 매일 게임을 하는 사람들을 알게 되면 대화와 즐거움이 더해짐
  • 서버 측에서만 작동하는 안티 치트 시스템은 경력에서 꼭 한번 다뤄보고 싶은 문제 영역임. 이런 대결 구도는 깊이 생각할수록 재미있음
  • 웹사이트가 다운되거나 느릴 때 기사를 읽고 싶다면 전체 페이지 스크린샷을 제공함
  • 치트 탐지가 아닌 반복적인 치터를 막는 것이 주제임. 치트 탐지는 특히 하드웨어 치트와 관련해 완전히 다른 문제임
    • 개인적으로 가장 효과적인 방법은 게임에 요금을 부과하는 것임
  • HTTPS로 암호화된 트래픽은 Wireshark 같은 도구로는 원시 토큰을 찾을 수 없음. 하지만 Fiddler나 Burp Suite 같은 도구로는 HTTPS를 쉽게 해독할 수 있음
  • 신뢰할 수 있는 서버 운영자와만 솔루션과 기술을 공유했음. VGUI 사용이 효과적이었으나 2018년경 웹 브라우저가 제거되어 아쉬웠음
  • 솔루션의 창의성과 효과를 존중함. 하지만 VGUI가 처음부터 없는 것이 더 나았음
    • 웹에서 이런 추적이 너무 만연해 있어 회피하는 것이 거의 불가능함. 논리적 오류를 이용해 더 나은 결과를 얻는 것이 매력적임
  • 차단된 IP에서 새로운 Steam ID를 차단하는 것은 너무 엄격함. 일부 ISP는 CG-NAT을 사용하거나 IP를 회전시켜 한 명의 악의적인 사용자가 많은 무고한 플레이어에게 피해를 줄 수 있음