안드로이드 루팅
·
Android
모바일 진단을 하려면 루팅을 진행하여 관리자 권한 (root)을 얻어야 해.루팅 대상은 갤럭시 노트 10으로 진행했고 안드로이드 버전은 12야! 바로 루팅을 위한 세팅 들어가자! 1. 휴대폰 정보 확인 루팅 전에 할 일은 안드로이드 버전 확인과 루팅 전 설정이야.[설정 > 휴대전화 정보 > 소프트웨어 정보] 에 들어가면 안드로이드 버전과 빌드번호를 확인할 수 있어그리고 빌드번호를 연타하면 다음과 같이 개발자 모드가 활성화 돼! 그다음 설정 부분으로 돌아오면 개발자 옵션이 새로 생성되었을 거야개발자 옵션에 "OEM 잠금 해제", "USB 디버깅"을 모두 활성화해 주면 돼 그리고 이전에 frida 설치하면서 adb도 설치했던 포스팅이 있어! adb를 설치하지 않았다면 설치 후에 adb ..
안드로이드 앱 구조
·
Android
안드로이드 앱 구조 - 안드로이드 앱 확장자 = APK - 위의 그림은 압축을 푼 APK 파일 구조이고, 밑의 그림은 실제 압축을 푼 APK 파일의 내부 파일들이다. 1. AndroidManifest APK 내부 파일 중에서 가장 중요한 파일로 앱 세부정보가 포함되어 있어 packing 된 형태의 파일이다. decoding을 통해서 내부 내용을 확인할 수 있고 내부 구조는 크게 네 가지로 나뉜 형태로 구성되어 있다. 해당 파일에는 앱을 동작시키기 위한 거의 모든 정보와 권한 정보들이 담겨있다. - 구성요소 1. AndroidManifest.xml 파일의 root 요소로 가장 중요한 구성요소 요소를 포함해야 하고 package 속성을 지정하는 역할을 한다. 2. 애플리케이션 선언으로, 애플리케이션의 각 구..
안드로이드 구조
·
Android
안드로이드 구조1. Linux Kernel안드로이드는 리눅스 기반의 운영체제로 쉘에서 사용하는 명령어와 기본적인 구조가 리눅스와 거의 유사하다. 단, 데스크톱에서 사용된 리눅스 시스템의 형태 기반이 아니기 때문에, 리눅스 데스크톱용 배포판 운영체제에서 안드로이드 앱을 실행할 수 없고, 리눅스 프로그램들 또한 안드로이드에서 사용할 수 없다.안드로이드에 적용된 리눅스 커널은 안드로이드에 맞춰진 경량화된 커널이라고 볼 수 있다. kernel의 기능kernel은 하드웨어와 응용 프로그램 사이에서 인터페이스를 제공하여 응용 프로그램이 하드웨어에서부터 오는 자원을 관리하고사용할 수 있도록 한다. 즉, 하드웨어와 운영체제를 연결시켜주는 다리와 같은 존재로 운영체제의 핵심이라고 볼 수 있다.kernel의 주된 기능은..