맨 아래에 5줄 요약 있음
그거 읽고 나머지 다시 읽어도 됨
게임 핵
(혹은 게임 치트)
이 야발롬의 프로그램 덕분에
매일매일이 시끄럽지 않은 경쟁형 게임은 없다고 해도 과언이 아님
물론 게임 핵 외에도 사용자 부모를 바꿔주는 '컨버터' 때문에 시끌시끌하기도 한데
그건 이번 글의 주제가 아니니 넘어가겠음
우선 시대 별로 게임 핵이 어떻게 변화했는지만 먼저 써보고 본론으로 넘어가겠음
(아마 부정확한 부분이 있을 수도 있음)
1세대: 프로세스 인젝션 시대 (2000년대~2010년대)
초창기의 핵들은 정말 단순했음
그냥 게임 프로세스에 DLL을 주입하거나, 메모리를 직접 수정하는 방식이었기 때문임
'SetWindowsHookEx' 같은 Windows API를 써서
게임 프로세스에 핵 자체가 비집고 들어가는 것이었다고 보면 됨 ㅇㅇ
당연히 이런 건 감지되어야 정상이지만...
당시에는 게임 핵에 적극적으로 대응하는 게임이 그리 많지 않았음
이때는 안티치트도 별로 없었고, 있었어도 수준이 낮았음
그냥 "흠? 이상한 DLL이 주입됐네?" 정도만 체크하는 수준이었다고 보면 됨
당연하게도 핵쟁이들 입장에서는 천국 그 자체였음
exe 파일 하나만 '딸깍'하면 핵 준비는 끝이었으니까 ㅇㅇ
2세대: 드라이버 커널 시대 (2010년대~2020년대)
그러다가 우리가 지금 알고 있는,
EAC, VAC, 배틀아이 같은 안티치트들이 본격적으로 나오기 시작함
문제는 이놈들이 사용자 모드(User Mode)단에서 돌아가는 핵들의 엉덩이를 죄다 털어버리니까,
핵쟁이들도 더 깊은 곳으로 런하기 시작했음
이때 핵쟁이들이 주목한 곳이 바로 커널 모드(Kernel Mode)임
윈도우의 가장 딥다크한 곳에서 드라이버 형태로 돌아가는 핵들이 나와버린 거임
핵과 안티치트 간의 기술력 싸움이 이때부터 본격적으로 시작됨
이러한 커널핵들의 특징은 다음과 같음
1. 디지털 서명된 드라이버가 필요 (이게 꽤 비싼 편임)
2. 시스템 부팅할 때부터 로드되어서 은밀하게 작동
3. 안티치트보다 더 깊은 권한으로 돌아가서 감지 회피
4. 대신 Windows 업데이트 때마다 막히는 경우가 많았음
그리고 이와 별개로 핵 관련하여 이 시기에 유명했던 것이
'HWID 스푸핑'이라는 기술임
(스푸퍼라고도 함)
아마 한 번은 들어봤을 수도 있는데,
가짜 하드웨어 ID를 만들어서 하드웨어 밴(하드밴)을 회피하는 것이라고 보면 됨
3세대: DMA 하드웨어 시대 (2020년대 초~현재)
그리고 2020년대 즈음부터 라이엇 뱅가드 같은 황근출급 안티치트들이 나옴
그러면서 커널 핵들의 엉덩이도 점차 남아나질 않게 됨
안티치트들이 커널단까지 들어가면서,
커널 모드에서 커널 모드를 감시하는 해병 파티가 벌어진 거임
당연히 커널단까지 탐지를 해버리고, 사용자 컴퓨터 곳곳을 살펴버리니
게임사의 핵 검거율은 날로 치솟았음
(사용자 정보 유출 가능성이 높아졌다는 사소한 찐빠는 무시하자)
이런 답 없는 상황 속 핵쟁이들이 생각해낸 게 바로 하드웨어 기반의 'DMA 핵'임
소프트웨어를 어느 정도 포기하고
물리적인 장비로 승부하기 시작한 거임
물론 물리적인 장비로 승부를 보는 건 2020년대 이전에도 있었음
대표적인 사례로는 CS:GO 선수 KQLY가 싸제 마우스에
에임봇을 넣어두고 사용하다가 2014년 퇴출된 사례가 있음
이외에도 Ra1f라는 CS:GO 선수가 메인 컴퓨터에 다른 컴퓨터를 연결하여
안티치트를 우회하다가 2018년에 밴 당하기도 했고
그리고 이러한 아쎄이들이 지금 설명하고자 하는 DMA 핵의 출발점이라고 할 수 있음
특히 Ra1f 선수가 안티치트를 우회한 방식은 현행 DMA 핵과 꽤 유사함
'컴퓨터 밖을 통해 안티치트를 우회한다'
이토록 쓸데없이 혁명적인 발상이 현재 DMA 핵의 시작이라고 보면 됨
그러면 이 DMA 핵이 정확하게 뭐냐고 할 수도 있음
DMA는 Direct Memory Access의 줄임말로, 직접 메모리 접근이라는 뜻임
원래는 컴퓨터 하드웨어가 CPU를 거치지 않고 바로 메모리에 접근할 수 있게 해주는 오래된 기술임
근데 이걸 게임 핵 용도로 악용한 거임
어떻게 악용하냐고?
컴퓨터 두 대를 두되,
한쪽에서는 게임을 돌리고 다른 한쪽에서는 핵을 돌리는 식으로 악용함
투컴을 쓴다니 이게 대체 뭔 소리냐고?
조금 더 자세히 설명해봄
DMA를 사용하려면 기본적으로 두 대의 컴퓨터가 필요함
하나는 게임만 돌리는 메인 PC, 다른 하나는 핵을 돌리는 보조 PC임
이때 메인 PC를 게이밍 PC라고 부르고,
보조 PC를 레이더 PC(혹은 공격 PC)라고 부르기도 함
우선 DMA 카드라는 장치를 메인 PC의 PCI-Express(글카 슬롯 맞음...) 슬롯에 꽂고,
보조 PC와 방금 꽂은 DMA 카드를 USB로 연결함
그러면 메인 PC의 메모리가 USB 케이블을 통해
보조 PC로 실시간으로 전송됨
이때 데이터 전송 속도가 얼마나 빠르냐면,
초당 기가바이트 단위로 메모리를 보조 PC에서 읽어올 수 있음
그러면 보조 PC에서는 게임을 실행하지 않은 채,
메인 PC의 게임 데이터를 모조리 볼 수 있게 되는 거임!
보조 PC에서 실시간으로 게임 데이터를 볼 수 있으니
그 이후 벌어질 일은 뻔하지 않겠음?
물론 이해가 안 될 수도 있으니,
예시를 들겠음
1. 게임이 '적 플레이어 위치: X=100, Y=200, Z=50' 데이터를 메인 PC의 메모리에 저장
2. DMA 카드가 이 메모리 영역을 통째로 복사해서 USB를 통해 핵이 설치된 보조 PC로 전송
3. 보조 PC에서 이 데이터를 받아서 "아! 저기에 아쎄이가 있구나!" 하고 분석
4. ESP나 레이더 형태로 화면에 표시 (단, 추가 장비 필요)
이 모든 지랄 맞은 과정이 메인 PC의 CPU나 운영체제 모르게 일어나는 거임
마치 집 주인 몰래 몰래카메라를 설치해서 집 안을 다 보는 것과 비슷하다고 생각하면 됨
다만, 위의 4번에도 언급되어있지만,
DMA 카드만으로는 제대로 된 핵 구동이 불가능함
보조 PC에서 핵을 원활하게 돌릴 수 있게 만드는 건 DMA 카드의 영역이지만,
그걸 핵쟁이가 쓸 수 있게 하는 건 별개의 영역이기 때문임
보조 PC에서 만들어진 핵 기능과 데이터를 DMA 카드를 통해
메인 PC로 다시 보내면 되지 않냐고?
애당초 보조 PC에서 핵을 돌리고 있는데, 그곳의 부산물을 정직하게 메인 PC로 보내면
수상스럽기에 짝이 없는 개씹똥꾸릉내를 맡은
메인 PC의 안티치트가 핵을 쓰고 있는 것을 알아채지 않겠음?
그래서 보조 PC의 핵 기능, 핵 데이터를 이용하려면 별도의 추가 장치가 필요함
여기서 등장하는 게 바로 'KMBOX'와 'FUSER' 장치임
첫 번째로 KMBOX는 Keyboard Mouse Box의 줄임말인데,
마우스와 키보드 신호를 긴빠이쳐서 조작할 수 있는 장치임
에임봇 전용 장치라고 보면 되는데...
구형이고 안정적이지만 정지를 잘 당하는 B+ Pro 모델과, 더 안전하고 네트워크 기반인 Net 모델로 나뉨
기합스러운 해당 장치의 원리는 생각보다 단순함
일반적으로 마우스를 연결하면 마우스 → 컴퓨터 이런 식으로 신호가 가는데,
KMBOX를 쓰면 마우스 → KMBOX → 컴퓨터 이런 식으로 중간에 KMBOX가 끼어듦
그래서 이것과 DMA 카드와 조합되면 아래와 같은 일이 벌어짐
1. 보조 PC에서 "저기 적 머리가 있으니까 마우스를 2도 위로 올려" 하는 명령을 KMBOX에 전송
2. KMBOX 안에 들어있는 마이크로컨트롤러가 이 명령을 받음
3. 사용자의 마우스 움직임 + 마우스의 가속 상태 + KMBOX의 추가 움직임을 더해서 컴퓨터에 전달
4. 결과적으로 자연스러운 에임 보정이나 자동 조준이 됨
그리고 가장 중요한 것은
이 모든 과정이 하드웨어 레벨에서 일어난다는 거임
(안티치트: 이거 핵 아닌 것 같은데???)
메인 PC의 안티치트 입장에서는
그냥 소프트웨어 보정 없이 마우스가 정직하게 움직인 것처럼 보인다는 뜻임
다만 KMBOX가 마냥 무적이라는 뜻은 아님
워낙 유명한 장치인지라 KMBOX를 쓰는 사람 자체를 핵쟁이로 판별 후
정지를 먹이는 경우도 늘고 있음
소문에 따르면 안티치트 직원이 해당 장치를 구매 후
감지 목적의 장치 관련 데이터를 안티치트에 넣는다나 뭐라나
그래서 '막쿠 아두이노'라는 비슷한 기능을 가진 장치를
쓰는 핵쟁이도 점차 늘고 있는 추세임
두 번째로 FUSER는 화면 신호를 합치는 장치임
이건 온갖 정보를 보여주는 핵인 ESP와 관련된 장치라고 보면 됨
1. 메인 PC의 게임 화면이 FUSER로 전송
2. 보조 PC의 ESP 정보도 FUSER로 전송
3. 그러면 FUSER가 이 두 신호를 실시간으로 합침
4. 합쳐진 화면을 핵쟁이가 사용할 모니터에 보내줌
두 영상 소스를 전우애스럽게 합치는 것에서 알 수 있지만,
방송에서 흔히들 쓰는 녹색 배경의 크로마키 기술과 비슷하다고 생각하면 됨
FUSER 안의 영상 처리 칩이 두 화면을 실시간으로 합성하고,
이걸 모니터로 출력하는 방식이니 ㅇㅇ
그런데 사실 KMBOX나 FUSER 없이도 핵을 쓸 수도 있음
그냥 보조 PC에 별도 모니터를 연결해서 ESP 정보만 따로 보는 방법이 있기 때문임
심지어 모든 것이 스마트해진 2020년대에 걸맞게
휴대폰으로 맵 정보를 전송받는 앱도 있다고 함
스마트폰 앱을 통해 실시간으로
"12시 방향에 적 3명, 3시 방향에 적 1명" 이런 식으로 알림이 오는 거...
(안티치트: ㅅ1ㅂ)
이처럼 DMA 핵 자체가 커널단을 뛰어 넘은 수준으로 작동하다 보니
안티치트로서는 지랄도 이런 지랄이 따로 없음
PC 입장에서는 그냥 하드웨어 하나가 더 연결된 것처럼 보일 뿐이니까...
USB 마우스나 키보드를 연결한 것과 똑같은 수준으로 인식되니까...
그나마 다행이라면 DMA 카드의 장착 여부는
안티치트가 감지할 수도 있다는 점임
DMA 카드가 장착되어 있으면 핵쟁이일 가능성이 크니 그걸 기반으로 정지를 먹이는 것인데,
비극적인 점은 오도기합짜세 핵쟁이들이 이를 안다는 점임
핵쟁이들이 이걸 어떻게 대비하냐고?
바로 감지될 DMA 카드를 다른 하드웨어로 위장하는 거임
그러니까 DMA 카드 안에 들어가는 소프트웨어인 '펌웨어'를 조작한다고 보면 됨
핵을 쓰기 위해 하다하다 펌웨어도 조작하고
실로 부지런한 씹1새2끼들이 따로 없다고 할 수 있음
펌웨어 위장 원리는 다음와 같음
모든 PCI-Express 장치는 "나는 누구고, 뭘 하는 장치다" 하는 신분증 겸 펌웨어를 가지고 있음
이걸 PCIe Configuration Space라고 하는데,
여기에 제조사 ID, 장치 ID, 시리얼 넘버 등이 들어있음
이 신분증을 바꾸는 거임
그래서 일부 펌웨어 판매자들은 좀 더 확실하게 위장하기 위해
실존하는 사운드카드나 랜카드의 정보를 '긴빠이'해서 DMA 펌웨어에 넣기도 함
당연히 신분증 조작 여부를 모르는 윈도우와 안티치트는
"아, DMA 카드가 아니라 랜카드구나" 하고 그냥 넘어가버림
이렇게 DMA 카드를 사용 중인 것을 숨겨버리는 거임
당연히 이쯤되면 이글을 읽는 사람들은
'ㅅ1ㅂ 이러면 핵 감지 방법 자체가 없는 게 아닌가'라고 생각할 거임
사실 어느 정도 맞는 말이긴 한데,
안티치트라고 이런 상황을 완전히 포기한 건 아님
우선 앞서 언급한 DMA 펌웨어를 진짜 철저하게 검사함
내부 데이터가 실제 제조사 데이터와 맞는지,
시리얼 넘버의 중복이 있는지,
이상한 패턴이 있는지,
드라이버가 정상적으로 로드되는지,
이상한 동작이 감지되는지 등등
고성능 안티치트에서는 이를 통해 어떻게든 DMA 카드 여부를 구분 지으려고 함
하지만 별 문제가 없어서 DMA 카드 여부를 통과했다고?
그러면 이 다음으로 메모리 접근 패턴을 확인함
정상적인 사운드카드라면 오디오 관련 메모리만 건드려야 하는데,
게임 메모리까지 읽고 있다면? 당연히 기열 핵쟁이로 의심해야지 않겠음?
여기서 긁어가는 데이터를 모니터링하고, 접근 빈도나 패턴이 비정상적인지 AI로 분석도 함
한데, 이런 것마저 통과했다?
그때부터는 하드웨어의 행동을 검증함
진짜 랜카드라면 네트워크 신호를 처리해야 하고,
진짜 사운드카드라면 오디오 신호를 처리해야 함
그런데 DMA 카드는 그런 기능이 없음
그냥 그런 기능이 있다고 속일 뿐이지, 작동은 하지 않음
해당 장치에 실제로 명령을 보내봤을 때 예상대로 반응하는지 테스트,
드라이버 로딩 과정에서 정상적인 초기화 절차를 거치는지 테스트,
TLP(Transaction Layer Packet) 통신이 실제 하드웨어와 일치하는지 테스트
그래서 이런 테스트를 통해
어떻게든 핵과 관련된 하드웨어를 찾아내려고 함
이외에도 IOMMU(Input-Output Memory Management Unit)라는
하드웨어가 메모리에 직접 접근하는 걸 제한하는 기술(일종의 메모리 방화벽)을 게임에 적용하기도 함
물론 이건 시기상조라는 말이 많고, 관련하여 온갖 찐빠가 많은 편임
(TPM 2.0 문제나, 안전 부팅 문제나...)
물론... 이러한 대책들 또한
부지런한 핵쟁이들에 의해 파훼돼고 있음
세상에 하나뿐인 전용 펌웨어를 만들어서 감지 데이터베이스에 없게 만들기,
게임할 때마다 하드웨어 ID를 바꿔서 추적 회피,
진짜 하드웨어를 하나 사서 그 정보를 완전히 복사해서 사용,
DMA 데이터를 여러 경로로 나눠서 전송해서 대용량 전송을 숨기기,
시스템이 부팅할 때 메모리 맵을 조작해서 DMA 카드를 정상 장치로 위장,
말도 안 되지만 한편으론 말이 되는 하드웨어 정보를 넣어서 IOMMU를 혼란시키기
온갖 기상천외한 방법과 역돌격으로 안티치트의 엉덩이를 털어대고 있음
핵쟁이들이 다른 분야에 이런 노력을 기울였으면 세상이 더 나아지지 않았을까
아무튼 현재 DMA 핵을 잡는 가장 효율적인 방법은,
게임사 직원이 핵쟁이의 플레이 장면을 직접 일일이 확인 후 수동으로 정지를 때리는 것임
너무나 당연하지만 이런 해병지능스러운 방법은 한계가 명확함
킬뎃을 무슨 9.0씩 찍는 무모칠은 금방 걸리지만,
킬뎃 1.1을 유지하며 핵을 쓰는 톤톤정은 신고도 적고 감시망에서 벗어난 경우도 많기 때문임
결국 이것도 돈, 인력, 시간, 기술력의 싸움인 셈임
(님 핵 홍보하는 거 아님?)
그리고 이쯤되면 내가 이런 상세한 글을 올리는 게 안 좋게 보일 수도 있음
하지만 DMA 핵과 관련된 내용들은 이미 해외에 쫙 퍼진 상황임
이 글을 올리든 올리지 않든 해병혼을 가진 DMA 핵 사용자 자체는 안 바뀐다는 뜻임
더군다나 델타포스, 타르코프 하는 유저들 사이에서는 이미 꽤 알려진 상태이고,
발로란트 유저들 사이에서도 정보가 빠르게 퍼지는 중임
(라이엇, 텐센트에서 DMA 핵의 구조와 정지하고 있다는 사실을 공지로 올릴 정도)
더군다나 기존 핵과 다르게
돈 자체가 많이 들어가는 편이라서 접근 장벽이 엄청 높은 편임
DMA 카드 자체가 15~30만 원,
커스텀 펌웨어가 30~50만 원,
KMBOX와 FUSER가 합쳐서 15~30만 원,
거기에 보조 PC까지 있어야 함
여기에 게임 별 핵 가격도 별도이고,
펌웨어도 정기적으로 업데이트를 해야 함
그리고 라이엇에서 발표한 자료에 따르면,
북미에서는 총합 130만 원 이상의 DMA 세팅이 아메리칸 핵쟁이들의 기본이 되었다고 함
(금수저 핵?)
물론 지금 한국에도 DMA 핵 유저들이 모인 디코가 한두 개가 아니고,
스트리머-프로급에서 의심되는 사람들이 종종 나오는 걸 보면,
DMA 핵은 이미 국내에 빠르게 퍼지고 있는 모양새임
가장 문제는 유명인들이 DMA 핵을 써도 이를 확정 지을 방법이 너무나 적다는 거임
게임사가 본인들에게 집계된 데이터로 정지하는 게 아닌 이상,
제3자들은 게임 영상을 빼면 판별조차 할 수 없음
특히 스트리머와 프로들이 기존에 쓰던
손캠과 모니터캠은 이제 의미가 없다고 해도 과언이 아닐 정도임
어쨌거나 DMA 핵은 다른 컴퓨터에서 돌아가는 것이고,
핵 사용을 보여주지 않을 방법이 너무나 많아졌으니...
참고로 발로란트의 경우 자동 탐지로 핵 정지가 이뤄지는 경우가 절반 조금 넘는다고 함
다르게 말하자면 라이엇 직원이 직접 보고 정지하는 경우가 나머지 절반일 정도로 핵이 정교해졌다는 소리임
저렇게해서라도 핵을 써야한다는게 여러모로 대단하네
그럼 게임이 재미있나
이쯤 되면 핵을 쓰려고 만드는 게 아니라, 핵을 구동하는지 보려고 만드는 셈인데
이야 이렇게 기술력을 집대성해서 만드는 노력의 목적이
어떻게 꼴랑 겜 날먹임 ㅋㅋㅋ
안티치트가 저렇게까지 하니까 게임속도가 느려지는구나
이기기 위해 뭐든 한다는거지 거기서 부수입은 개인이 챙기는거고
간단할줄 알았는데 기네
집 가서 씻고 봐야 겠다
과몰입 하는데 자존감도 낮고 그런 애들이 저런 걸로 이기면서 우월감 느끼며 도파민 느끼는 거라 그럼
저렇게해서라도 핵을 써야한다는게 여러모로 대단하네
그럼 게임이 재미있나
이기기 위해 뭐든 한다는거지 거기서 부수입은 개인이 챙기는거고
과몰입 하는데 자존감도 낮고 그런 애들이 저런 걸로 이기면서 우월감 느끼며 도파민 느끼는 거라 그럼
이쯤 되면 핵을 쓰려고 만드는 게 아니라, 핵을 구동하는지 보려고 만드는 셈인데
이야 이렇게 기술력을 집대성해서 만드는 노력의 목적이
어떻게 꼴랑 겜 날먹임 ㅋㅋㅋ
안티치트가 저렇게까지 하니까 게임속도가 느려지는구나
진짜 좃같은 새끼들 핵쓰는놈들은 애미애비도 잘못있음
간단할줄 알았는데 기네
집 가서 씻고 봐야 겠다
에휴.. 나쁜새끼들이 문제야 하여간
다섯줄 요약 찾으려고 스크롤 내렸는데
스크롤이 생각보다 길어서 힘차게 쭉쭉내리다보니
나도 모르게 댓글로 와버렸네ㅋㅋㅋㅋ
일단 다시 올라가서 읽어봐야겠다
뭔가 게을러서 존나 열심히 편리한 기계를 발명한 그런 느낌이 드네...
창이 이긴다고 해도 방패인 게임사가 손 놔버리면 안되는 현실
와 DMA 그냥 MCU FW 짜면서 CPU 리소스 줄이거나 빠른 처리위해서 사용만했었는데
저런 식으로 핵으로 쓸수도있구나 ㅋㅋ
진짜 싱크빅이다 레알
내가 이래서 스위치랑 콘솔만 잡는건 아니지만
아무튼 컴터 안잡은지는 꽤된듯
핵-안티 치트의 역사는 컴퓨터 보안의 역사와 함께하지 ㅋㅋ
TPM 같은것도 결국 보안 모듈 외부로 뺀거고 ㅋㅋ
워낙 유명한 장치인지라 KMBOX를 쓰는 사람 자체를 핵쟁이로 판별 후
정지를 먹이는 경우도 늘고 있음
핵쟁이 아닌데도 저걸 쓰는 케이스는 없겠지?
안티치트가 이렇게 쑤셔대니까 게임이 무거워지지 ㅅㅂ ㅋㅋㅋㅋㅋ
요약만 보고 다시 안 봤지롱