Search

ADB를 이용한 파일(개인정보) 추출

카테고리
[실습] 모바일 앱 공격 위협
상태
완료
게시일
2024/05/07
태그
모바일, 안드로이드

개요

adb shell을 사용하여 앱 정보가 저장된 폴더에 접근, 개인정보를 포함하는 파일을 선별 및 추출하여 추가정보 탈취
사용 APP : 피키캐스트

0) 테스트용 계정 회원가입

1) 정보가 취약하게 취급되고 있는지 확인

APP의 계정 관련 정보를 포함한 APP 관련 정보는 data/data/[패키지 명] 안에 저장되기 때문에 해당 폴더 안으로 들어가서 내 정보를 가지고 있는 파일이 있는지 검색해야한다
ADB 진입 후 해당 폴더 이동
adb shell cd data/data/sixclk.newpiki
Shell
복사
내 정보 (이메일)을 가지고 있는 파일이 있는지 검색 -r : 모든 파일이 검색 대상 . : 현재 디렉토리에서 검색
email 도메인인 naver를 기준으로 검색
grep -r naver .
Shell
복사
시간이 너무 오래걸릴경우 하위 디렉토리로 이동하여 검색
cd shared_prefs grep -r naver .
Shell
복사
SETTING.xml sixclk.mewpiki.service.UserService.xml "naver" 문자열을 포함하는 두 파일을 확인 해당 파일들을 pull 명령으로 로컬로 추출한다 로그인 정보에 포함된다면 꼭 naver으로 검색할 이유는 없음
pull 명령으로 로컬로 파일 이동 adb 명령어는 윈도우에 있기 때문에 exit로 나가서 adb shell(리눅스)이 아닌 cmd에서 입력해야한다
adb pull 명령어 사용 adb pull [복사할 파일(안드로이드 절대경로)] [저장할 경로(로컬)]
adb pull data/data/sixclk.newpiki/shared_prefs/SETTING.xml C:\\Users\\Downloads adb pull data/data/sixclk.newpiki/shared_prefs/sixclk.newpiki.service.UserService.xml C:\\Users\\Downloads
Shell
복사
로컬에서 메모장으로 해당 파일 확인 (메모장에 드래그인 드랍) hash라는 name 태그를 가진 데이터가 저장되어 있는 것을 볼 수 있다 해당 hash 방법인 MD5 형식으로 디코드를 해보면 테스트로 가입한 비밀번호인 test123을 확인할 수 있다

hash 방법이 MD5인 건 어떻게 알죠?

추측해야한다 해시값 자체만으로는 어떤 알고리즘인지 확정하기 어렵다, 다만 각 알고리즘 마다 해시 값의 길이와 형태가 다르기 때문에 그것을 보고 추측한다

MD5

32자의 16진수 문자열로 표현
일반적으로 128비트(16바이트)

SHA-256

64자의 16진수 문자열로 표현
일반적으로 256비트(32바이트)