배틀아이

 

[image]
1. 개요
2. 원리
3. 오류
4. 사용 게임 목록


1. 개요


공식 홈페이지
BattlEye. 온라인 게임 안티치트 프로그램이다. 배틀아이 이노베이션의 바스쳔 서터가 2004년에 제작했다.

2. 원리


배틀아이는 클라이언트에 후크된 에이전트와 마스터 서버로 작동한다. 에이전트는 컴퓨터의 메모리와 로컬 드라이브(SSD, 하드 디스크 드라이브등)을 감시하며, 클라이언트의 넷코드를 통해 배틀아이 서버가 정보를 받아 프로세스 분석과 밴을 담당한다. 에이전트를 해커들이 우회하기 힘들게 많은 제약을 걸어두는 편이며, 덕분에 프로세스를 감지하는 능력은 최상위권이다.
Ring-0(커널) 영역에서 로드한 자체 BattleEye 드라이버가 프로세스의 ObRegisterCallbacks 루틴을 실행한다. 커널 권한이기 때문에 관리자라도 프로세스의 메모리에 접근하거나 쓰거나 읽는 API 기능을 사용할 수 없다. 윈도우 XP 등 마이크로소프트 지원이 중단된 운영체제도 지원하지 않는다. 또한 윈도우의 Test Signing 모드도 지원하지 않기 때문에 인증서를 구매해 서명되지 않은 프로그램을 실행할 수 없다. 특히 여기서 인증되지 않은 대개의 치트가 걸러진다. 이를 통해 인증서가 없는 핵이 메모리를 읽기 위해 사용할 수 있는 커널모드 드라이버도 막을 수 있다. 다만 많은 PC방에서 게임을 실행할 수 없는 상황이 일어나는 게 단점이다. 당연하겠지만 Ring-0보다 낮은 레벨의 권한인 '''인텔 관리 엔진보안 취약점을 이용해 수작을 부리는 것은 못 막는다.'''
개별 프로세스나 인증서를 분석하기 때문에 한가지 치트의 사용도가 높아질수록 일괄 밴을 때리는게 수월해진다. 배틀아이가 적용된 게임에서 대규모로 치트를 판매하는 경우(판매 사이트 등)는 거의 찾아보기 힘들고, 비공개 사설포럼으로 흩어져 소수의 구매자들만 수용하게 된다. 당연히 사용 빈도가 적은 사설 치트는 걸러내기 더 어려우므로 어떤 때는 해커들이 우회로를 찾고, 또 배틀아이가 그걸 막는 사이클이 계속 반복된다.

3. 오류


H1Z1, 언턴드, 레인보우 식스 베가스시즈, PUBG, 데이즈, 아르마, 아르마 3 등 거의 모든게임에 배틀아이가 클린유저를 잡아다가 밴을 시키는 일이 빈번하게 발생하고 있다. 해결방법은 아이피 밴이기 때문에 이사를 해야한다. 그리고 언턴드 같이 서버를 여는 방식의 서버라면 배틀아이를 제거시키고 서버를 열 수 없기 때문에 총어드민도 못 들어가는 일이 발생한다. 해결방법들은 전부 오류를 유발할 수 있기 때문에 게임하려고 해결하려다 게임을 영원히 날려보낼 수 있다!
그리고 컴퓨터(C:)에 윈도우즈 폴더 안에 'Pcdrm' 폴더가 있다면 불러오기가 막혀 게임실행이 안되는 경우가 있다. 'Pcdrm' 폴더는 내부유출 방지 보안프로그램 폴더로 배틀아이가 이 폴더를 핵으로 오인하여 게임실행이 되지 않는다. 해결방법은 C:Windows > PCDRM 폴더 > pcdrm uninstall을 선택해서 Pcdrm을 삭제하거나 안되면 해당 폴더가 없는 컴퓨터로 하거나, 포맷밖엔 방법이 없다.

4. 사용 게임 목록


나무위키에 문서가 작성된 게임만 기재.