목차
1. IDA Pro를 이용한 모바일 게임 분석
1.1 분석 사용도구
1.2 분석 목적
1.3 수행 기간
1.4 모바일 게임 분석
1.4.1 결과
1.4.2 Level 단계 수정
1.4.3 버블 Arcade 모드 개수 수정
1.4.4 대응방안
2. 게임 비인가 매크로 프로그램
2.1 분석 사용도구
2.2 분석 목적
2.3 수행 기간
2.4 비인가 매크로 프로그램 분석
2.4.1 결과
2.4.2 비인가 매크로 프로그램
2.4.3 분석
프로젝트명 |
IDA Pro를 이용한 모바일 게임 분석 | ||
수행기간 |
2일 |
분석 사용 도구 |
IDA Pro 6.9(Demo) , Apk Manager , Hex Editor |
분석목적 |
정적분석에 대해 익숙해지고 모바일 어플리케이션 접근방식을 알기위함 |
1.결과
- Level 단계 수정의 경우 정의된 함수들이 알기쉽도록 되어있어서 찾기가 쉬웠고 JD-GUI
자바 디컴파일러로 보게 되면 자바언어로 그대로 보여지기 때문에 이 점에 대해선 대응방안이 필요함
- 버블 Arcade 모드 개수 수정은 정의된 함수명이랑 관련되지 않은 버블 관련 클래스를 찾음 값이 증가 할때마다 기존의 버블 개수에서 없어지는 형태가 발생하고 값 증가 시킬때마다 일정 패턴으로 버블개수를 보내줌 1로 수정 할 경우 기본 개수인 38개 2 = 18개 3 = 9개 이런식으로 점점 없어짐
class.dex파일을 불러온뒤 함수들중 gotoNextLevel 함수를
찾아서 들어가게 되면 add-int/lit8인 추가한다는 ARM명령어가 보이고 이게 레벨업 관련 됐다는 것을 알게됨
위의 add-int/lit8 ARM명령어 주소값인 0001B5C4를 복사하고 dex를 헥스 에디터 이용하여 주소값을 이동함
이동 된 주소값을 보게되면 D8 00 00 01 16진수가 보이는데 01부분을 자신이 원하는 레벨값으로 변경해줍니다.
Apk Manager 를 통하여 컴파일과 서명을 다시 해줍니다.
getNewRow에 들어가서 내리다보면 Random_nextInt@II 보이게됨 더블클릭하여 한번 더 들어감.
그러면 Random_nextInt@II를 사용하게 될 함수가 보이는데 LevelManager_getLevel@LL에 들어감
v0 , v0 , 1에서 1부분을 위와같이 헥스에디터를 이용하여 2로 수정할시 Arcad모드 처음 시작하는 버블 개수가 줄어듦
프로젝트명 |
게임 비인가 매크로 프로그램 분석 | ||
수행기간 |
1일 |
사용 도구 |
Cheat Engine6.5,AutoHotkey,DIE |
목적 |
비인가 매크로 동작원리를 알기 위함 |
- 해당 비인가 프로그램 컴파일이 오토핫키라는 기반으로 분석하였고 대응방안은 해당 게임의 캐릭터 이미지를 저장 해둔 파일을 외부에서 변경되지 못하도록 감지를 하여야하며, 또한 오토핫키 자체를 감지할수 있도록 단어감지나 기존에 나와있는 Mutex를 통해서 감지하는 최소한의 보안을 하여야 합니다. 오토핫키는 소스가 그대로 보여지게되면 악용이 아니라 편의를 위해서 만들어지는 프로그램들이 제작자가 원치않는 소스 유출이 될수 있으므로 난독화 기능이 필요하며 또한 이를 이용한 악용하는 사람이 있을 수 있습니다.
- 화면인식 매크로 프로그램은 우선 알려진 오토핫키로 제작이 되어진걸로 추측을 하게 되고 DIE 프로그램을 이용하여 해당 프로그램이 패커가 되어있는지 확인을 함
- VMProtect 패커가 되어있고 Ollydbg 올리디버거가 작동되지 않으므로, Cheat Engine6.5를 통해서 동적으로 스크립트를 분석함
- 오토핫키로 제작이 되었으면, 프로그램이 실행이 되면서 스크립트 소스가 다시 풀려버리게 됩니다. 이 점을 이용하여 해당 스크립트를 그대로 가져올수 있으며 어떤 식으로 돌아가게되는지 분석이 가능함
- 오토핫키 스크립트가 패커에서 실행될 때 풀려버린 소스를 그대로 가져온 상태
- 소스를 보면 제작자가 프로그램 사용 가능/불가능 하도록 설정을 할 수 있도록 했으며, 소스를 가져온 상태의 프로그램이 사용 불가능 상태가 되어도 강제로 사용할 수 있도록 수정이 가능함
- 변조 스킨 다운로드를 통하여 캐릭터 이미지를 수정한 뒤 프로그램 작동이 되는지 알 수 습니다. 밑의 소스대로 화면 해상도, 스캔 범위, 픽셀 위치를 알 수 있으며 수정된 캐릭터의 이미지 색깔대로 픽셀 RGB값을 스캔하여 마우스를 이동 시킴
'공부' 카테고리의 다른 글
신규 코로나 현황 / 코로나19 / 바이러스 현황판 (0) | 2020.02.18 |
---|---|
악성코드 Yara Rule 시그너처 탐지 / 웹 페이지 & 악성 파일 (0) | 2018.10.17 |
디지털 미디어 보안 프로그램, 모바일 앱 제작 (0) | 2018.10.17 |
악성코드 정적 탐지 프로그램 (0) | 2018.10.17 |
[게임 해킹 관련] Thread Injection & API 후킹 실습,메모리 변조 탐지 (0) | 2018.10.17 |