이미 소장하고 있다면 판매해 보세요.
|
저자 소개
들어가며 _머리말 _책 소개 _이 책의 특징 _준비 사항 _질문 Part 01 안드로이드 운영체제 이해 _Chapter 01 객체지향 언어와 안드로이드 __1.1 객체지향 프로그램의 특징 ___1.1.1 클래스와 객체 ___1.1.2 캡슐화와 정보 은닉 ___1.1.3 상속 __1.2 자바와 코틀린 _Chapter 02 안드로이드 앱 보안 기초 지식 __2.1 안드로이드 아키텍처 설계 ___2.1.1 안드로이드 앱 설계 패턴 ___2.1.2 안드로이드 앱 설계 원칙 __2.2 정보보안 기본 원칙 - 기본에 충실하기 ___2.2.1 정보보안 기본 원칙 ___2.2.2 접근 제어 보안 원칙 __2.3 위협 모델링 __2.4 안드로이드 운영체제 구조 ___2.4.1 사용자부터 운영체제까지 ___2.4.2 안드로이드 운영체제 구조 ___2.4.3 안드로이드 운영체제 주요 기술 Part 02 안드로이드 정적 분석 _Chapter 03 분석 준비 __3.1 컴파일과 디컴파일 ___3.1.1 컴파일 ___3.1.2 디컴파일 __3.2 빌드 및 패키징 __3.3 APK ___3.3.1 개념 ___3.3.2 APK 분석하기(압축 해제) ___3.3.3 APK 분석하기(디컴파일) ___3.3.4 smali 코드 ___3.3.5 네이티브 코드 ___3.3.6 AndroidManifest.xml _Chapter 04 취약점 진단하기 __4.1 NDK 취약 함수 사용 ___4.1.1 개요 ___4.1.2 진단 방법 ___4.1.3 보안 대책 __4.2 DexClassLoader ___4.2.1 개요 ___4.2.2 진단 방법 ___4.2.3 보안 대책 __4.3 하드코딩된 중요 정보 ___4.3.1 개요 ___4.3.2 진단 방법 ___4.3.3 보안 대책 _Chapter 05 정적 분석 정리 및 한계 Part 03 안드로이드 동적 분석 _Chapter 06 분석 준비 __6.1 정적 분석과 동적 분석 ___6.1.1 정적 분석 ___6.1.2 동적 분석 __6.2 동적 분석 준비 ___6.2.1 동적 분석 환경 준비 ___6.2.2 안드로이드 디버그 브리지 ___6.2.3 안드로이드 앱 번들 설치 _Chapter 07 단말 취약점 진단 __7.1 단말기 내 중요 정보 저장 ___7.1.1 개요 ___7.1.2 진단 방법 ___7.1.3 보안 대책 __7.2 디버그 로그 내 중요 정보 노출 ___7.2.1 개요 ___7.2.2 진단 방법 ___7.2.3 보안 대책 __7.3 백그라운드 화면 보호 ___7.3.1 개요 ___7.3.2 진단 방법 ___7.3.3 보안 대책 __7.4 액티비티 강제 실행 ___7.4.1 개요 ___7.4.2 진단 방법 ___7.4.3 보안 대책 __7.5 코드 패치와 앱 무결성 검증 ___7.5.1 개요 ___7.5.2 진단 방법 ___7.5.3 실습하기 - 앱 코드 패치 ___7.5.4 보안 대책 __7.6 메모리 내 중요 정보 평문 노출 ___7.6.1 개요 ___7.6.2 진단 방법 ___7.6.3 보안 대책 __7.7. 클립보드 내 중요 정보 저장 ___7.7.1 개요 ___7.7.2 진단 방법 ___7.7.3 보안 대책 _Chapter 08 인텐트 취약점 진단 __8.1 개요 ___8.1.1 매니페스트 파일 ___8.1.2 엑스트라 ___8.1.3 자원 식별자 __8.2 브로드캐스트 리시버 ___8.2.1 개요 ___8.2.2 진단 방법 ___8.2.3 보안 대책 __8.3 컨텐트 프로바이더 ___8.3.1 개요 ___8.3.2 진단 방법 ___8.3.3 보안 대책 __8.4 딥링크 ___8.4.1 개요 ___8.4.2 진단 방법 ___8.4.3 실습하기 - MBTI 앱 ___8.4.4 보안 대책 _Chapter 09 통신 구간 취약점 진단 __9.1 HTTP 패킷 스니핑 & 변조 ___9.1.1 개요 ___9.1.2 진단 방법 ___9.1.3 보안 대책 __9.2 TCP 패킷 스니핑 & 변조 ___9.2.1 개요 ___9.2.2 진단 방법 ___9.2.3 보안 대책 Part 04 후킹과 프리다 _Chapter 10 후킹 __10.1 프로시저 링크 테이블 및 전역 참조 테이블을 이용한 후킹 __10.2 디버깅 함수를 이용한 후킹 _Chapter 11 프리다 __11.1 프리다 개요 및 설치 ___11.1.1 프리다 개요 ___11.1.2 진단 PC에 프리다 설치 ___11.1.3 단말에 프리다 서버 설치 ___11.1.4 프리다 통신 확인 __11.2 프리다 주요 기능 ___11.2.1 프리다를 이용한 후킹 실습 1 ___11.2.2 프리다 스크립트 실행 방식 __11.3 프리다 - 파이썬 바인딩 __11.4 프리다를 이용한 후킹 실습 2 __11.5 함수 호출 인자 변경 __11.6 프리다 스크립트 생성 __11.7 프리다 후킹 스크립트 예제 ___11.7.1 클래스, 메서드 목록 나열 ___11.7.2 네이티브 함수 후킹 ___11.7.3 바이트코드를 문자열로 변환 ___11.7.4 호출 스택 확인 __11.8 프리덤프 __11.9 프리다 트레이스 __11.10 프리다와 동적 분석 _Chapter 12 루팅 탐지 로직과 우회 기법 __12.1 su 파일 및 시스템 경로 접근 확인 __12.2 루팅 시 설치되는 바이너리 존재 여부 확인 __12.3 프리다 탐지 로직 ___12.3.1 프리다 서버 파일 존재 여부 확인 ___12.3.2 프리다 프로세스 실행 여부 확인 __12.4 추가 실습 앱 소개 ___12.4.1 루트 비어 ___12.4.2 안디터 __12.5 추가 루팅 탐지 우회 기법 ___12.5.1 루팅 탐지 로직으로 분기하지 않도록 코드 패치 ___12.5.2 설정된 루팅 탐지 로직을 직접 우회 ___12.5.3 루팅 탐지 로직을 포함하는 함수의 반환값 후킹 ___12.5.4 루팅 탐지 우회 솔루션 사용 마치며 _진단 프레임워크 소개 맺는말 _보안 취약점 진단 컨설팅을 시작하는 분들께 _취약점에서 위협으로 _라이선스 |
|
내가 만든 안드로이드 앱,
보안 취약점을 어떻게 진단할 수 있을까ㆍ 직접 개발한 앱 혹은 사용 중인 앱의 보안 취약점을 알고 싶은가요ㆍ 『안드로이드 모의해킹 입문』에서 그 방법을 알아봅시다. 실습 앱과 상세한 설명을 통해 현실에서 발생할 수 있는 보안 취약점을 직접 찾아봅시다. 단순히 진단 도구의 활용을 넘어 코드 레벨에서 직접 스크립트 작성하는 법도 꼼꼼히 담았습니다. 정적 분석과 동적 분석을 이해하고 단말 취약점, 인텐트 취약점, 통신 구간 취약점 등 다양한 상황에서의 취약점을 진단합니다. 이 책에서 안내하는 대로 끝까지 따라온다면 안드로이드 보안에 관한 이해를 한층 더 넓힐 수 있을 거예요. 이 책의 특징 ㆍ 안드로이드 운영 체제와 보안의 기초 지식을 소개합니다. ㆍ 정적 분석과 동적 분석에 대해 소개하고, 이를 이용한 취약점 진단을 설명합니다. ㆍ 취약점 실습 앱을 활용하여 다양한 모의해킹 실습을 진행합니다. 이 책이 필요한 독자 ㆍ 자신이 개발하는 앱의 취약점을 점검하고 싶으신 분 ㆍ 웹 모의해킹 경험을 토대로 안드로이드 모의해킹에도 도전하고 싶으신 분 ㆍ 안드로이드 보안 취약점 진단 컨설팅에 관심이 있으신 분 |