모바일
[안드로이드 취약점 진단] 1-3. 안드로이드 파일시스템 및 프로젝트 파일 구성
동로시
2022. 6. 7. 02:26
디렉토리 | 설명 |
/ | 루트 파일 시스템 디렉토리, 부팅 관련 설정 파일을 참고해 초기 프로세스 정보 포함 |
/data | 사용자 애플리케이션이 저장되는 장소 |
/data/app | 사용자 애플리케이션이 설치되는 장소 |
/data/data/[패키지이름]/ | 해당 애플리케이션의 라이브러리 및 DB가 저장되는 장소 |
/cache | 캐시 |
/system | 관리 애플리케이션이 저장되는 장소 |
/sdcard | 외부 저장소, sdcard |
/data/data/[패키지이름]/shared_prefs | 애플리케이션 상태, 간단한 사용자 정보 및 구성 옵션 등의 정보 저장/복원 key-value 구조로 XML 파일 activity 내에서 혹은 동일 애플리케이션의 여러 activity간 데이터 공유 가능 |
/data/data/[패키지 이름]/databases | 다른 애플리케이션에서는 접근 불가 |
/data/data/[패키지 이름]/files | 애플리케이션 내부 저장소 애플리케이션이 삭제되면 해당 데이터도 삭제 |
/mnt/sdcard | 사용자 데이터(사진, 동영상 등)이 저장 일반적으로 디바이스의 외장 sd 카드지만 디바이스 내부에 탑재되어 있는 경우도 존재 특정 애플리케이션만 사용하는 고유 영역과 함께 사용되는 공통 영역 존재, 고유 영역은 해당 애플리케이션이 삭제될 때 함께 삭제, 공통 영역은애플리케이션 삭제에 영향x 외부 저장소에 저장된 데이터는 고유 영역에 저장되어 있어도 다른 애플리케이션에 의해 접근 가능 |
프로젝트 파일 구성 (이클립스)
/src : 소스
/gen : 자동 생성 디렉토리, 내부에 R.java 자동 생성
(R.java : 실행 코드 내부에서 리소스들을 쉽게 사용할 수 있게 해주는 R 객체 인스턴스의 기본 클래스)
/res : 리소스
/layout/main.xml : 레이아웃, 기본 레이아웃 = main.xml
/values/strings.xml : 문자열, 배열, 색상, 크기 등에 대한 리소스 관리 strings.xml
AndroidMainfest.xml : 이름, 버전, 구성요소, 권한 등 설정
프로젝트 파일 구성 (안드로이드 스튜디오)
프로젝트
모듈 : 애플리케이션이나 라이브러리를 구성ㅇ하는 최소 단위, 이클립스의 프로젝트
Gradle Wrapper : Gradle 툴을 편리하게 사용할 수 있도록 도와주는 스크립트