본문내용 바로가기
무료배송 소득공제

봇을 이용한 게임 해킹 메모리 스캐닝에서 반응형 해킹까지

닉 카노 지음 | 진석준 옮김 | 에이콘출판 | 2018년 08월 17일 출간

이 책의 다른 상품 정보

  • 정가 : 30,000원
    판매가 : 27,000 [10%↓ 3,000원 할인]
  • 통합포인트 :
    [기본적립] 1,500원 적립 [5% 적립] 안내 [추가적립] 5만원 이상 구매 시 2천원 추가적립 [회원혜택] 우수회원 5만원 이상 구매 시 2~3% 추가적립
  • 추가혜택 : 카드/포인트 안내 도서소득공제 안내 추가혜택 더보기
  • 배송비 : 무료 배송비 안내
  • 배송일정 : 서울특별시 종로구 세종대로 기준 지역변경
    당일배송 지금 주문하면 오늘(19일,수) 도착 예정 배송일정 안내
  • 바로드림 : 인터넷으로 주문하고 매장에서 직접 수령 안내
장바구니 담기 바로구매

책 그리고 꽃 서비스
책 그리고 꽃 | 책과 꽃을 함께 선물하세요 자세히보기

닫기

바로드림 주문 선물하기 보관함 담기
상품상세정보
ISBN 9791161751924(1161751920)
쪽수 408쪽
크기 189 * 236 * 26 mm /932g 판형알림
이 책의 원서/번역서 Game Hacking: Developing Autonomous Bots for Online Gamesm/Nick Cano

책소개

이 책이 속한 분야

인터넷에서 쉽게 구할 수 있는 간단한 툴을 이용해 게임 봇을 만들고 게임을 해킹하는 다양한 기법을 다룬다. 메모리 스캐닝 같은 고전 기법에서부터 반응형 해킹에 이르기까지, 책의 내용을 천천히 따라가다 보면 게임 해킹의 기본 소양을 쌓을 수 있게 될 것이다. 어떤 게임을 대상으로 실습할지 고민할 필요 없다. 제공되는 간단한 게임 코드를 직접 수행하면서 게임 해킹의 원리를 파악할 수 있을 것이다.

저자소개

저자 : 닉 카노

12살 무렵 오픈소스 게임 서버용 스크립트를 처음 작성했으며, 16살에는 자신이 만든 봇을 돈을 받고 팔기 시작했다. 오랫동안 게임 해킹 커뮤니티의 일원으로 활동하면서 게임 개발자와 디자이너에게 그들이 만든 게임을 봇으로부터 보호할 수 있도록 자신의 경험에 기반한 조언을 아끼지 않았다. 또한 수년간 멀웨어(malware)를 감지하고 방어하는 일에도 종사했으며, 여러 콘퍼런스에서 자신의 연구와 툴에 대한 강의를 수행해왔다.

역자 : 진석준

넷마블과 크라이텍을 거쳐 현재 11년 차 게임 QA로 재직 중이다. 자신을 포함한 게임 QA의 역량 향상과 자기 발전 그리고 이를 통한 게임 QA 업무의 확장을 위해 여러 실험을 끊임없이 시도하는 중이다. 『뷰티풀 테스팅』(지앤선, 2011), 『닌자 해킹』(에이콘, 2015), 『게임 물리 엔진 개발』(지앤선, 2016), 『언리얼 엔진 4로 나만의 게임 만들기』(에이콘, 2017)를 번역했다.

작가의 말

좋아하는 게임을 사랑하는 게임으로 바꾸기 위해 마법사가 될 필요는 없다. 좋아하는 PC 게임에 좀 더 많은 정보를 표시해주는 HUD를 달거나, 가장 최근에 있었던 전투에서 모든 아이템을 즉각 루팅해 수집할 수 있다고 상상해보자.
윈도우 기반 개발과 메모리 관리 기법을 기반으로 실제로 게임 해커가 되기 위해 필요한 것들을 알려준다. 리버스 엔지니어링과 어셈블리 코드 분석, 프로그래밍 가능한 메모리 조작과 코드 인젝션 같은 가장 기본적인 해킹 기법들을 배울 수 있다. 예제 코드와 실제로 사용된 바이너리를 활용해 이 기법들을 갈고 닦아 연마할 수 있다.

목차

1부. 해킹 도구

1장. 치트 엔진을 사용하는 메모리 스캐닝

__왜 메모리 스캐너가 중요한가
__기본적인 메모리 스캐닝
__치트 엔진 메모리 스캐너
____스캔 유형
____First Scan 수행하기
____Next Scan
____정확한 결과를 얻지 못하는 경우
____치트 테이블
__게임 메모리 변조
____치트 엔진을 통한 수동 변조
____트레이너 제너레이터
__포인터 스캐닝
____포인터 체인
____기본적인 포인터 스캐닝
____치트 엔진을 사용한 포인터 스캐닝
____포인터 재검색
__루아 스크립팅 환경
____어셈블리 패턴 찾기
____스트링 찾기
__마치며

2장. OllyDbg를 이용한 게임 디버깅

__OllyDbg 사용자 인터페이스 살펴보기
__OllyDbg의 CPU 창
____게임 어셈블리 코드 표시하고 탐색하기
____레지스터 내용 표시하고 편집하기
____게임 메모리 표시하고 탐색하기
____게임 콜 스택 표시하기
__코드 패치 제작하기
__어셈블리 코드를 통해 트레이싱하기
__OllyDbg 표현식 엔진
____표현식으로 브레이크포인트 만들기
____표현식 엔진에서 연산자 사용하기
____기본 표현식 활용하기
____표현식을 사용해 메모리 콘텐츠에 접근하기
__OllyDbg 표현식 실제로 활용하기
____특정한 플레이어 이름이 출력되면 연산 중단하기
____캐릭터의 체력이 떨어졌을 때 수행 멈추기
__게임 해커를 위한 OllyDbg 플러그인
____Asm2Clipboard를 사용해 어셈블리 코드 복사하기
____치트 유틸리티로 OllyDbg에 치트 엔진 추가하기
____명령줄 플러그인을 통해 OllyDbg 제어하기
____OllyFlow를 활용해 컨트롤 플로우 시각화하기
__마치며

3장. 프로세스 모니터와 프로세스 익스플로러 살펴보기

__프로세스 모니터
____인게임 이벤트 로그 남기기
____프로세스 모니터 로그의 이벤트 조사하기
____더 많은 데이터를 얻기 위해 게임 디버깅하기
__프로세스 익스플로러
____프로세스 익스플로러의 사용자 인터페이스와 제어
____프로세스 속성 조사하기
____핸들 조작 옵션
__마치며

2부. 게임 해부

4장. 코드에서 메모리로: 기본 원리

__변수와 그 밖의 데이터가 메모리에 저장되는 방법
____숫자 데이터
__스트링 데이터
____데이터 구조체
____유니온
____클래스와 VF 테이블
__x86 어셈블리 크래시 코스
____명령어
____프로세서 레지스터
____콜 스택
____게임 해킹에서 중요한 x86 명령어
__마치며

5장. 고급 메모리 포렌식

__고급 메모리 스캐닝
____목적 추론하기
____OllyDbg로 플레이어의 체력 확인하기
____게임 업데이트 이후 새로운 주소 찾아내기
__복잡한 게임 데이터 식별하기
____std::string 클래스
____std::vector 클래스
____std::list 클래스
____std::map 클래스
__마치며

6장. 게임 메모리 읽고 쓰기

__게임 프로세스 식별자 알아내기
____프로세스 핸들 획득하기
____OpenProcess()로 작업하기
__메모리 접근
____ReadProcessMemory()와 WriteProcessMemory()로 작업하기
____ReadProcessMemory()와 WriteProcessMemory()로 메모리의 값 읽어오기
____정형화된 메모리 액세스 함수 작성하기
__메모리 보호
____x86 윈도우 메모리 보호 속성 구별하기
____메모리 보호 변경
__주소 공간 배치 난수화
____간편한 봇 개발을 위해 ASLR 비활성화하기
____보호 모드에서 ASLR 우회하기
__마치며

3부. 인형 가지고 놀기

7장. 코드 인젝션

__스레드 인젝션으로 코드 케이브 주입하기
____어셈블리 코드 케이브 만들기
____어셈블리를 셸코드로 변환하기
____메모리에 코드 케이브 작성하기
____스레드 인젝션 활용해 코드 케이브 수행하기
__코드 케이브를 실행하기 위해 게임 메인 스레드 하이재킹하기
____어셈블리 코드 케이브 만들기
____스켈리톤 셸코드 작성하고 메모리 할당하기
____메인 스레드 찾고 멈추기
__완벽한 제어를 위해 DLL 주입하기
____DLL 로딩을 위해 프로세스 속이기
____주입된 DLL 안에서 메모리 접근하기
____주입된 DLL을 통해 ASLR 우회하기
__마치며

8장. 게임 컨트롤 플로우 조작하기

__NOP를 통해 코드 삭제하기
____NOP를 사용해야 하는 경우
____NOP를 사용하는 방법
__게임 실행 변경을 위해 후킹하기
____콜 후킹
____VF 테이블 후킹
____IAT 후킹
____점프 후킹
__어도비 AIR에 콜 훅 적용하기
____RTMP 접근하기
____RTMPS encode() 함수 후킹하기
____decode() 함수로 RTMPS 후킹하기
____훅 배치하기
__다이렉트3D에 점프 훅과 VF 훅 적용하기
____드로잉 루프
____다이렉트3D 디바이스 찾기
____EndScene() 훅 작성하기
____Reset() 후킹 작성하기
____다음으로 할 일은?
__마치며

4부. 봇 만들기

9장. 초능력으로 전장의 안개 걷어내기

__배경지식
__라이트핵을 사용해 숨겨진 정보 찾아내기
____Central Ambient Light 소스 추가하기
____Absolute Ambient Light 증폭하기
____그 밖의 라이트핵 기법들
__월핵을 통해 숨어 있는 적 파악하기
____z 버퍼링으로 렌더링하기
____다이렉트3D 월핵 생성하기
____드러내려는 모델의 지문 채취하기
__줌핵을 통해 더 넓은 시야 확보하기
____줌핵 NOP 하기
____줌핵 후킹 맛보기
__HUD에 숨겨진 정보 표시하기
____경험치 HUD 만들기
____데이터 위치를 찾기 위해 후킹 사용하기
__그 밖의 ESP 해킹
__마치며

10장. 반응형 해킹

__게임 이벤트 관찰하기
____메모리 모니터링하기
____시각적 단서 찾아내기
____네트워크 트래픽 가로채기
____게임
__실제 게임 안에서 액션 수행하기
____키보드 에뮬레이팅
__패킷 전송하기
__한 번에 묶기
____퍼펙트 힐러 만들기
____CC 스킬에 저항하기
____마나가 줄어드는 것 막기
__마치며

11장. 스스로 움직이는 봇 만들기

__제어 이론과 게임 해킹
__상태 머신
__제어 이론과 상태 머신 결합하기
____기본적인 힐러 상태 머신
____복잡한 가상 상태 머신
____에러 수정
__탐색 알고리즘을 사용한 패스파인딩
____2개의 일반적인 탐색 기법
____탐색을 방해하는 장애물
____A* 탐색 알고리즘
____A* 탐색이 특히 유용한 경우
__평범하지만 멋진 자동화 해킹 툴
____케이브봇으로 루팅하기
____워봇으로 자동 전투하기
__마치며

12장. 숨어 있기

__저명한 안티 치트 소프트웨어들
__펑크버스터 툴킷
____시그니처 기반 검출
____스크린샷
____해시 검증
____ESEA 안티 치트 툴킷
__VAC 툴킷
____DNS 캐시 스캔
____바이너리 검증
____긍정 오류
__게임가드 툴킷
____사용자 모드 루트킷
____커널 모드 루트킷
__워든 툴킷
__봇의 흔적 관리하기
____흔적을 최소화하기
____흔적 가리기
____디버거를 검출하기 위해 봇을 교육하기
____안티 디버깅 기법
__시그니처 기반 검색 무력화하기
__스크린샷 무력화하기
__바이너리 검증 무력화하기
__안티 치트 루트킷 무력화하기
__휴리스틱 무력화하기
__마치며

추천사

자레드 드모트(보안 전문가&소프트웨어 개발자)

닉은 정말 훌륭한 사람이다. 우리는 당신이 상상할 수 있는 모든 방법대로 죽이 척척 잘 맞았다. 나는 잠시 동안 보안 관련 일을 한 적이 있었고, 그는 나보다 조금 더 젊었다. 나는 대학을 다녔었고 그는 대학에 대해 잘 알지... 더보기

출판사 서평

★ 이 책에서 다루는 내용 ★
- 치트 엔진을 사용해 메모리 스캔하고 수정하기
- OllyDbg를 사용해 프로그램 구조를 살펴보고 플로우 수행하기
- 프로세스 모니터를 사용해 프로세스 로그를 남기고 필요한 데이터 파일 찾아내기
- NOPing, 후킹과 그 밖의 기법들을 사용해 컨트롤 플로우 조작하기
- 일반적인 게임 메모리 구조 찾아내고 분석하기
- 월핵이나 헤드업 디스플레이 같은 평소에 알 수 없는 정보 쉽게 나타내기
- 자동 힐러나 콤보 봇 같은 반응형 해킹 기법
- 동굴 탐험가나 자동 루터 같은 인공지능을 겸비한... 더보기

북로그 리뷰 (0) 쓰러가기

도서 구매 후 리뷰를 작성하시면 통합포인트를 드립니다.
결제 90일 이내 작성 시 300원 / 발송 후 5일 이내 작성시 400원 / 이 상품의 첫 리뷰 작성 시 500원
(포인트는 작성 후 다음 날 적립되며, 도서 발송 전 작성 시에는 발송 후 익일에 적립됩니다.
외서/eBook/음반/DVD/GIFT 및 잡지 상품 제외)
안내
  • 해당도서의 리뷰가 없습니다.

Klover 평점/리뷰 (0)

교환/반품/품절안내

※ 상품 설명에 반품/교환 관련한 안내가 있는 경우 그 내용을 우선으로 합니다. (업체 사정에 따라 달라질 수 있습니다.)

교환/반품/품절안내
반품/교환방법 마이룸 > 주문관리 > 주문/배송내역 > 주문조회 > 반품/교환신청 ,
[1:1상담>반품/교환/환불] 또는 고객센터 (1544-1900)

※ 오픈마켓, 해외배송주문, 기프트 주문시 [1:1상담>반품/교환/환불]
    또는 고객센터 (1544-1900)
반품/교환가능 기간 변심반품의 경우 수령 후 7일 이내,
상품의 결함 및 계약내용과 다를 경우 문제점 발견 후 30일 이내
반품/교환비용 변심 혹은 구매착오로 인한 반품/교환은 반송료 고객 부담
반품/교환 불가 사유
  • 소비자의 책임 있는 사유로 상품 등이 손실 또는 훼손된 경우
    (단지 확인을 위한 포장 훼손은 제외)
  • 소비자의 사용, 포장 개봉에 의해 상품 등의 가치가 현저히 감소한 경우
    예) 화장품, 식품, 가전제품(악세서리 포함) 등
  • 복제가 가능한 상품 등의 포장을 훼손한 경우
    예) 음반/DVD/비디오, 소프트웨어, 만화책, 잡지, 영상 화보집
  • 소비자의 요청에 따라 개별적으로 주문 제작되는 상품의 경우 ((1)해외주문도서)
  • 디지털 컨텐츠인 eBook, 오디오북 등을 1회 이상 다운로드를 받았을 경우
  • 시간의 경과에 의해 재판매가 곤란한 정도로 가치가 현저히 감소한 경우
  • 전자상거래 등에서의 소비자보호에 관한 법률이 정하는 소비자 청약철회 제한 내용에
    해당되는 경우
(1) 해외주문도서 : 이용자의 요청에 의한 개인주문상품으로 단순변심 및 착오로 인한 취소/교환/반품 시 ‘해외주문 반품/취소 수수료’ 고객 부담 (해외주문 반품/취소 수수료 : ①양서-판매정가의 12%, ②일서-판매정가의 7%를 적용)
상품 품절 공급사(출판사) 재고 사정에 의해 품절/지연될 수 있으며, 품절 시 관련 사항에 대해서는
이메일과 문자로 안내드리겠습니다.
소비자 피해보상
환불지연에 따른 배상
  • 상품의 불량에 의한 교환, A/S, 환불, 품질보증 및 피해보상 등에 관한 사항은
    소비자분쟁해결 기준 (공정거래위원회 고시)에 준하여 처리됨
  • 대금 환불 및 환불지연에 따른 배상금 지급 조건, 절차 등은 전자상거래 등에서의
    소비자 보호에 관한 법률에 따라 처리함

이 책의 원서번역서

안내

이 분야의 베스트

더보기+

이 분야의 신간

더보기+

바로가기

  • 우측 확장형 배너 2
  • 우측 확장형 배너 2

최근 본 상품