본문 바로가기

모바일 해킹/안드로이드

앱 해킹 내부 저장소 진단 - 2 (SQLite로 db 파일 보기)

안녕하세요 바로 안드로이드 앱 해킹 내부 저장소 진단 시작하겠습니다.

 

일단 전 포스트와 마찬가지로 윈도우 터미널와 nox을 연결하겠습니다.

 

cd [adb.exe 있는 디렉터리]

adb.exe connect 127.0.0.1:62001

adb shell

 

시작합니다.

 

내부 저장소 봐볼 거니 내부저장소로 가봅니다.

 

cd /data/data

 

지난 포스팅에는 간단하게 설정 파일 XML 파일을 봤었죠.

 

그럼 이번에는 데이터가 담긴 데이터베이스 파일을 봐보겠습니다.

SQLite로 작성된 db 파일을 보는  거죠.

 

인스큐어 뱅크 디렉터리 찾고 들어가서 db 파일을 가져와 보겠습니다.

 

cd com.android.insecurebankv2

 

databases 있죠

 

그 전에 이 앱 통해 아무 데이터 값을 넣어 보겠습니다.

 

저번에 인스큐어뱅크 앱을 깔기만 했지 앱 가지고 한 게 없잖아요?

그러니 당연히 데이터 베이스에 아무 것도 없을 겁니다.

 

인스큐어 서버 열은 다음 로그인까지 합니다.

 

서버 열고

 

로그인까지

 

그리고 Transfer에서 간단하게 데이터 보내보겠습니다.

 

대충 적고

 

Get Accounts 하고 Transfer 합니다.

 

서버에 뭔갈 행했다고 로그에 남네요

 

이제 이 터미널 놔두고 원래 쓰던 adb로 nox 연결된 터미널로 돌아와서 데이터베이스 폴더로 들어가 보겠습니다.

 

별거 없긴하죠

 

그냥 databases 안에 mydb가 있네요. 그 안에 앱에 이용되는 데이터들이 저장되어 있겠죠.

 

이제 저걸 보고 싶다면 2가지 방법 있겠죠. cat문이나 다른 db파일을 볼 수 있는 명령어 통해서 보느냐

아니면 내 윈도우로 가져와서 보느냐겠죠.

 

보통 후자를 선택합니다. 더 편하니깐요.

 

그럼 저도 후자 고르고 가져오겠습니다.

저 databases 디렉터리 경로를 복사하시고 새로운 터미널을 엽니다.

 

새로운 터미널

 

그리고 다운로드할 파일을 저장할 폴더로 움직입니다.

저는 보기 쉽게 D드라이브에 새로운 폴더를 만들었습니다.

 

 

깔끔한게 좋죠

그리고 adb pull [가져올 파일]  을 작성합니다.

 

 

 

잘 가져 왔네요

 

 

이렇게 가져옵니다.

 

adb에는 pull 처럼 가져오는 명령어 말고 설치하는 install이라던가 push 넣기라던가 등 다양한 명령어들이 있습니다. 그거는 구글링 하시면 더 쉽고 빠르게 찾아보실 수 있어요

 

그럼 이제 SQLite 파일을 봐야 되겠죠. 물론 도구들을 이용해 보는 방법도 있습니다.

 

저는 sqlite browser을 이용하겠습니다.

 

https://sqlitebrowser.org/

 

DB Browser for SQLite

DB Browser for SQLite The Official home of the DB Browser for SQLite Screenshot What it is DB Browser for SQLite (DB4S) is a high quality, visual, open source tool to create, design, and edit database files compatible with SQLite. DB4S is for users and dev

sqlitebrowser.org

여기서 다운로드하시면 됩니다.

 

그리고 DB Browser for SQLite.exe 이 파일을 실행시키면 도구가 실행됩니다.

 

깔끔한 편이죠 이정도면

 

그럼 이제 파일 -> 데이터베이스 열기 -> [방금 다운로드한 mydb파일] 하시면 됩니다.

 

찾으실 때 모든 파일로 하셔야만 보입니다.

 

그러면 이렇게 테이블 명과 데이터들을 볼 수 있게 나옵니다.

 

 

 

위쪽 메뉴에 데이터 보기 클릭하신 다음 테이블을 names로 바꿔서 보시면 dinesh라는 데이터가 보입니다.

 

 

그렇게 중요한 정보는 아닌거 같네요

 

어쨌든 이렇게 데이터 베이스를 볼 수 있다 정도로 알아 두시면 됩니다.

이 데이터베이스는 계속 업데이트될 것이고 그 중간에 중요한 정보가 들어갈 수 있으니깐요!

 

한 번 mydb-journal도 봐보았는데 딱히 중요한 정보는 없었습니다

 

___________________________________________________________________________________________

 

이렇게 해서 내부 저장소를 봐보 았습니다. 다음 포스팅엔 간단하게 외부 저장소도 봐보겠습니다.

 

감사합니다!