Self-Improvement

[DIVA] 4. Insecure Data Storage - Part 2 (SQLiteDatabase, Sqlite3 설치, find ./ -type f -mmin -10) 본문

AOS/DIVA

[DIVA] 4. Insecure Data Storage - Part 2 (SQLiteDatabase, Sqlite3 설치, find ./ -type f -mmin -10)

JoGeun 2021. 10. 28. 11:50

분석

Part2도 역시나 아이디랑 비밀번호를 입력하여 저장하면 "3rd party ~~" 문자열이 출력된다.

 

자바 소스코드를 확인해보면 SQLiteDatabase로 mDB 객체를 생성해준 후 ids2 라는 DB를 생성해주는 것을 알 수 있다. 그리고 입력한 값을 생성한 DB에 저장해준다.

 

ADB 

ADB에 접근하여 /data 폴더를 확인하면 databases 폴더가 있으며 거기에서 ids2 라는 소스코드에서 봤던 DB 파일이 존재하였다.

 

adb pull 명령어로 해당 파일을 추출하여 파일 내용을 확인하기 위해서는 Sqlite3를 설치해줘야 한다.

 

Sqlite3 설치

아래의 링크에서 다운로드 가능하며 Magisk에서 모듈로 바이너리 명령어 설치 가능하다.

https://www.sqlite.org/download.html

 

SQLite Download Page

Templates (1) and (2) are used for source-code products. Template (1) is used for generic source-code products and templates (2) is used for source-code products that are generally only useful on unix-like platforms. Template (3) is used for precompiled bi

www.sqlite.org

 

위 링크로 접속한 후 아래의 해당 압축파일을 설치해준다.

 

평문저장 확인

그리고 위에서 설치한 sqlite3를 실행하여 ids2 DB를 확인해보면 입력한 값이 평문으로 저장되어 있다.

# 실행
./sqlite3 ids2

# 테이블 조회
sqlite> .tables

# myuser 내용 조회
sqlite> select * from myuser

 

FIND

FIND 명령어로 최근에 생성된 파일들을 판별할 수 있는 명령어이다.

// 10분내에 변경된 파일 찾기(변경된 시간 0~9분전)
find ./ -type f -mmin -10

// 10분내에 접근된 파일 찾기
find ./ -type f -amin -10

// 10분내에 상태변경이 있었던 파일 찾기
find ./ -type f -cmin -10