리니지2 매크로
5/5/2024 • 매크로, 프로젝트
고향친구의 부탁으로 자신의 리니지2 길드원들이 사용할 간단한 알림 프로그램을 만들 수 있겠냐고 물어왔다. 간단하지 않겠냐면서 주말에 보겠다고 했다. 게임 매크로 같은건 만들어본적은 없지만 재미있을것 같긴 했다. 그냥 화면 캡처 후 OCR로 데이터 추출, 반복 정도로 간단하게 구현되지 않을까 생각했었다.
하지만 리니지2 클라이언트와 같이 실행되는 Nprotect 게임가드는 화면캡쳐와 마우스 시뮬레이션을 모두 차단하고 있었다. 간단하진 않겠구나 라고 생각하며 해결방법을 고민했다.
- VMWARE로 윈도우를 띄우고 호스트OS에서 마우스 이벤트 발생
- 아두이노로 마우스 HID 신호 재현
- 윈도우 드라이버 단의 신호 해킹
일단 소프트웨어적으로 해킹이 가능한지 해외 사례를 검색하던 도중에 로지텍 가상 마우스 드라이버의 취약점을 발견할 수 있었다. 간단한 파이썬 스크립트를 작성해서 테스트 해보니 게임가드를 속일 수 있었다. 친구가 원하는 기능은 필드몬스터들이 출현했는지 주기적으로 NPC 통해 확인해서 출현했거나 전투가 시작되었거나 전투가 종료되었을 때 카카오톡 알림을 보내주는 거였고, 2시간 내로 스크립트는 마무리했다. OCR은 오픈소스인 Tesseract로도 아주 정확하게 데이터를 추출 할 수 있었다.
친구 컴퓨터에 원격으로 붙어서 셋팅해주고 테스트까지 마치고 넘겨줬다. 아주 간단한 스크립트였지만 친구와 길드마스터형님(?)은 정말 좋다면서 친구 통해서 100만원을 주셨다. 돈을 받고 하려던 일은 아니여서 거절했지만 친구 말로는 돈이 많은 형님이라고 하며 받으라고 해서 감사하게 받았다. 그 후 알람 시간대, 특정 보스 필터링 등의 기능들을 넣어서 100만원의 감사함(?)을 표현했다.
