REAL Android Crack #1 adb란? / Nox apk 추출

2022. 9. 13. 12:29Android

주제: 리얼 앱 크랙 제작

기간: 22.07.26 ~ 22.09.08

 

목차

00) adb란?

01) apk 추출

02) 개요

03) 분석 (jadx-gui)

04) 변조 (+추가 분석)


 

00) adb란?

안드로이드 장치와 통신하여 디버깅 등의 작업을 도와주는 command-line tool 이다.

안드로이드 SDK에도 포함되어있으며 애플리케이션 설치, 디바이스 접속 및 관리, 파일 업/다운로드, 시스템 log 출력, shell 접속 등이 가능하다.

  • 이전 유니티에서의 과정을 통해 NVDIA 사이트에서 SDK (NVPACK)를 설치하였으므로 설치과정은 생략
  • 또한 NOX로 진행하기때문에 따로 adb 설치 없이 nox_adb를 사용해도 무관

 


 

01) apk 추출

apk 추출 방법 설명에 앞서 apkpure와 같은 사이트를 이용하면 apk를 쉽게 획득할 수 있다.

그러나 과정을 경험해보기 위해 직접 추출하기로 하였다.

https://apkpure.com/kr/

 

빠르고 무료로 안전하게 APK 다운로드

Pro Video Editor with Music, Transition, Effect, Text, Sticker, Filter, Overlay

apkpure.com

 

사용중인 핸드폰에서 apk를 직접 추출하기 위해 노트북과 핸드폰을 연결하였다.

 

adb devices 명령어로 연결을 확인하고 adb shell 명령어를 입력하여 핸드폰의 쉘을 획득한다.

 

adb 명령어 입력

 

위 사진에서 마지막에 ls를 입력한 결과, Permission denied 에러가 발생한다.

루팅되지 않은 핸드폰은 권한 문제로 apk경로와 이름을 확인할 수 없다.

 

따라서 루팅을 보다 쉽게 하기 위하여 Nox를 사용하였다.

 

Nox의 루팅과정

  1. Nox 자체의 시스템 설정 - 일반 - ROOT켜기
  2. 환경설정 - 시스템 - 태블릿정보 - 빌드번호 연타
  3. 개발자 옵션 활성화

Nox 루팅

 

Apk 추출 과정

 

   1-1. adb가 설치되어있지 않을 경우

      Nox설치 경로(Program Files/Nox/bin에서) cmd 열고 adb 대신 nox_adb 명령어 사용

   1-2. adb가 설치되어있을 경우

      adb 명령어 사용

   2. adb devices

   3. adb connect 127.0.0.1:62001

   4. adb shell (루트 쉘 획득)

   5. base.apk가 저장된 경로 알아내기 (Nox내의 어플들은 data/app/에 저장되어있음)

   6. cmd창을 하나 더 열고 adb pull (쉘에서 알아낸 base.apk 경로) (apk를 저장할 경로) 입력 (추출 명령어)

   + 참고) 파일 삽입 명령어: adb push (저장할 파일의 데스크탑 경로) (파일을 저장할 device 경로)

추출 성공

 


비공개글을 공개글로 전환하면서 게임명을 모자이크 처리하였다.

이후 프로젝트 과정(분석, 변조 과정)은 악용 방지를 위해 비공개글로 게시한다.