old

XCZ.kr / Prob4 (안드로이드, AVD, 패턴 뚫기)

nopdata 2016. 7. 28. 22:10

# Prob 4

< Prob 4 >

4번 문제는 안드로이드 문제이다. 파일이 하나 주어지는데 avd 파일이다.

avd는 Android Virtual Device로 PC에서 구동이 가능한 안드로이드 가상 머신이다.



# 문제 파일?

< 문제 avd & 일반 avd >

위 사진은 avd의 압축을 풀었을 때 나오는 파일 목록이다. sd카드는 없다고 치면 파일상의 문제는 없다.

하지만 avd가 가상 디바이스 목록에 추가되지 않는데 그 이유는 이 avd의 셋팅값이 저장되어 있는 ini 파일이 존재하지 않기 때문이다.


# avd 디렉토리 구조?

< avd 디렉토리 구성 >

avd가 저장되는 디렉토리 구성은 위와 같다. C:\Users\계정명\.android\avd에 존재하며 avd폴더 안에는 각 avd의 이름.ini파일이 존재하며 이 파일이 존재하지 않으면 위에서 처럼 가상 디바이스 목록에 추가되지 않는다.



# .ini 만들기

< .ini files >

avd압축을 풀었을 때 나온 파일 목록 중에 기본 설정 .ini파일을 만들기 위해 보아야 할 파일들이다.

보면 config.ini파일과 hardware-qemu.ini파일에서 ~platforms\android-10이 자주 보이는 것을 알 수 있을 것이다.

이는 문제의 avd의 대상 안드로이드 버전이 android-10이라는 의미이다.

더 알아낼 수 있는 정보는 avd의 본래 이름은 whatthefxxx였다는 것과 기타 사양정보 등이다.

하나씩 위 데이터를 따져가며 기본 설정.ini파일을 만들 수 있지만 더 쉬운 방법이 있다.

android-10을 대상으로 하는 avd를 하나 만들어 설정 파일들은 그대로 둔 채 데이터만 바꾸면 된다.



# avd 만들기

< Create AVD - Select Hardware >

AVD Manager에서 Create AVD를 선택하면 위처럼 나온다. 여기서 다양한 대상을 선택할 수 있는데 지금 만들고자 하는 AVD는 문제 파일의 대상과 동일한 AVD이다. 위에서 config.ini을 보면 skin.path에 QVGA를 확인할 수 있을 것이다. 가로 세로 길이와 스킨 정보가 맞아 떨어지는 2.7" QVGA AVD를 선택한다.


< Create AVD - System Image >

이제 크기와 스킨모델을 정하였으니 대상 소프트웨어를 정해야 한다. 우리가 필요한 것은 android-10을 대상으로 하는 AVD이다. android-10이란 API Level이 10이라는 것을 의미한다. 만약 목록에 존재하지 않는다면 SDK Manager를 통해 설치해야 한다.


< AVD에서 바꿀 파일 목록 >

이렇게 생성을 하면 C:\Users\계정명\.android\avd에 새로운 avd가 생겼을 것이다. 이제 여기서 설정파일은 그대로 두고 위처럼 데이터만 바꿔 주면 다른 설정값은 이미 셋팅이 되어 있으므로 AVD를 실행시킬 수 있다.


# AVD 실행..?

< AVD 실행 >

실행화면을 보면 바탕화면에 key값이 있는 듯 한데 패턴으로 암호가 걸려 있다. 문제에도, 다른파일 어디에도 패턴에 관한 힌트는 없었다. 답을 얻기 위해서는 패턴암호를 풀어야 하기 때문에 패턴 암호를 뚫어야 한다.


# AVD Pattern Crack

AVD를 실행하면 이미 ADB(Android Debugging Bridge)에 연결이 되어 있다. 해서 ADB를 이용하여 패턴암호를 뚫어주면 된다.


< Pattern Crack >

아래 ref 링크를 참조하여 패턴암호를 풀면 된다. 패턴암호는 /data/system/gesture.key에 저장되어 있다.

이 gesture.key 파일을 다운받고 디코딩 소스를 이용해 풀면 된다. -g 옵션에는 패턴을 풀 패턴이 저장된 gesture.key 파일을 넣어주고 -d 옵션에는 패턴정보가 저장되어 있는 데이터테이블을 넣어주면 된다.

그렇게 풀어주면 위처럼 각 위치의 숫자번호로 패턴암호를 얻어낼 수 있다.


< 패턴 해제된 화면 >

XCZ.kr Answer : U5i_ng_ad_b_is_v2ry_e5sy




ref

http://niiconsulting.com/checkmate/2014/04/how-to-bypass-the-android-phone-pattern-lock/