주의사항 : 이 포스팅은 개인 학습 및 교육적 목적으로 작성되었으며, 제공하는 정보를 악용하여 불법적인 행위를 하는 것은 엄격히 금지되어 있습니다. 타인의 시스템에 대한 접근 권한을 얻기 위해 명시적인 동의를 받아야 하며, 이러한 기술을 사용하여 발생하는 모든 결과에 대한 책임은 사용자에게 있습니다.
: iOS 애플리케이션은 임시 데이터와 영구 데이터를 로컬 시스템(iOS 설치기기)에 저장할 수 있다.
: 애플리케이션 데이터 및 설정 정보를 내부 저장소에 저장하는 데 사용되는 XML 파일
NSUserDefault 클래스 : 사용자 기본 설정 및 속성을 저장하는 가장 일반적인 방법 중 하나로, 애플리케이션을 종료하고 재시작하여도 저장된 정보는 계속 유지된다.
해당 클래스로 저장한 데이터는 암호화되지 않은 상태로 plist 파일에 저장된다.
데이터 저장
iOS KeyChain : SQLite DB 로 구현된 암호화된 데이터베이스이다.
데이터 저장
SSH를 통해 keychain_dumper 를 아이폰에 업로드하고 실행하여 keychain-2.db 파일을 컴퓨터로 복사 후 SQLite 로 확인.
: 앱의 모델 객체를 관리하기 위한 프레임 워크
데이터 저장
/private/var/mobile/Containers/Data/Application/$uuid/Library/Application Support 경로의 Model.sqlite 파일을 PC로 복사
: 웹 페이지를 로드하기 위해 UIWebView 를 사용하는 앱이 응답 시간을 단축하기 위해 사용하는 Caching
/private/var/mobile/Containers/Data/Application/$uuid/Library/Caches/com.highaltitudehacks.DVIAswiftv2 경로의 Cache.db 파일을 PC로 복사
DB Browser for SQLite 로 Cache.db 파일 열람. DVIA-v2 앱에서는 UIWebView 가 동작하지 않아 데이터가 저장되지 않는다.
: 오픈소스 데이터베이스 관리시스템으로 모바일 환경을 주요 타깃으로 한다.
: 경량화, 임베디드, 문서 기반(NoSQL), 동기화할 수 있는 iOS 와 macOS 앱을 위한 데이터베이스 엔진이다.
데이터 저장
/private/var/mobile/Containers/Data/Application/$uuid/Library/Application Support/CouchbaseLite/dvcouchbasedb.cblite2 경로의 db.sqlite3, db.sqlite3-wal, db.sqlite3-shm 파일을 PC로 복사
: SQLite를 기반으로 구축된 collection / key / value 저장소이다.
데이터 저장
/private/var/mobile/Containers/Data/Application/$uuid/Library/Application Support 경로의 YapDatabase.sqlite, YapDatabase.sqlite-wal, YapDatabase.sqlite-shm 파일을 PC로 복사
출처
https://hagsig.tistory.com/139
https://takudaddy.tistory.com/590