모바일 애플리케이션 침투 테스팅
도서명:모바일 애플리케이션 침투 테스팅
저자/출판사:비제이,쿠마,벨루/에이콘출판
쪽수:336쪽
출판일:2017-06-15
ISBN:9791161750057
목차
1장. 모바일 애플리케이션 보****지형
__스마트폰 시장 점유율
____안드로이드 운영 체제
____iPhone 운영 체제
__모바일 애플케이션의 형태
____네이티브 앱
____모바일 웹 앱
____하이브리드 앱
__공개된 안드로이드와 iOS 취약점
____안드로이드 취약점
____iOS 취약점
__모바일 애플리케이션 보안의 어려움
____모바일 애플리케이션 보안의 영향력
____모바일 애플리케이션 침투 테스트의 필요성
__모바일 애플리케이션 침투 테스팅 방법론
____발견
____분석/평가
____공격(Exploitation)
____보고
__OWASP 모바일 보****프로젝트
____OWASP 10대 모바일 위험 요소
____테스트를 위한 취약한 애플리케이션
__요약
2장. 아키텍처 맛보기
__아키텍처의 중요성
__안드로이드 아키텍처
____리눅스 커널
____안드로이드 런타임
____자바 가상 머신
____달빅 가상 머신
____핵심 자바 라이브러리
____ART
____네이티브 라이브러리
____애플리케이션 프레임워크
____애플리케이션 레이어
____안드로이드 애플리케이션 구성 요소
____안드로이드 디버그 브릿지
____애플리케이션 샌드박싱
____애플리케이션 서명
____안전한 프로세스 간 통신
____안드로이드 권한 모델
____안드로이드 애플리케이션 제작 과정
____안드로이드 루팅
__iOS 아키텍처
____Cocoa Touch
____Media
____코어 서비스
____코어 OS
__iOS SDK와 Xcode
__iOS 애플리케이션 프로그래밍 언어
____Objective-C
____Swift
__애플리케이션 상태에 대한 이해
__애플의 iOS 보****모델
____기기 수준 보****
____시스템 수준 보****
____데이터 수준 보****
__iOS 8과 9에서의 변화
____네트워크 수준 보****
____애플리케이션 수준 보****
____iOS 앱 샌드박스
__iOS 격리
____프로세스 격리
____파일 시스템 격리
____ASLR
____스택 보호 (실행 불가능 스택과 힙)
__하드웨어 수준 보****
__iOS 권한
__iOS 애플리케이션 구조
__탈옥
____왜 탈옥을 하는가?
____탈옥의 종류
____탈옥 도구 한 눈에 보기
__Mach-O 바이너리 파일 포맷
____Mach-O 바이너리 검사
__프로퍼티 리스트
__iOS 파일 시스템 탐색
__요약
3장. 테스트 환경 구축
__모바일 앱 침투 테스트 환경 설정
__안드로이드 스튜디오와 SDK
____안드로이드 SDK
__안드로이드 디버그 브리지
__기기에 연결하기
____기기의 접근 권한 얻기
____기기에 애플리케이션 설치
____기기로부터 파일 추출하기
____기기에 파일 저장하기
____서비스 중지시키기
____로그 정보 보기
____앱 사이드로딩 하기
____Monkeyrunner
__Genymotion
____안드로이드 가상 에뮬레이터 생성하기
____Genymotion 에뮬레이터에 애플리케이션 설치하기
____Genymotion 에뮬레이터에 취약한 앱 설치하기
____안드로이드 스튜디오에 Genymotion 플러그인 설치하기
____Genymotion에서 ARM 앱과 Play Store
__에뮬레이터에서 HTTP 프록시 설정하기
____Wi-Fi 설정에서 프록시 설정
____모바일 캐리어 설정에서 프록시 설정
__Google Nexus 5 ?실제 기기 설정하기
__iOS SDK (Xcode)
__필요한 도구와 함께 iPhone/iPad 설정하기
____Cydia
__SSH 클라이언트-PuTTy와 WinSCP
____iFunbox 살펴보기
____Wi-FI없이 SSH 접속하기
____Wi-Fi를 사용할 수 있을 때 SSH 접속하기
____기기에 DVIA 설치하기
____애플 기기에 HTTP 프록시 설정하기
__에뮬레이터와 시뮬레이터, 실제 기기
____시뮬레이터
____에뮬레이터
____실제 기기
__요약
4장. 로딩 업-모바일 침투테스팅 도구
__안드로이드 보****도구
____APKAnalyser
____Drozer
____APKTool
____dex2jar API
____JD-GUI
____Androguard
____자바 디버거 소개
____기타 도구 목록
__iOS 보****도구
____oTool
____SSL Kill Switch
____keychain dumper
____LLDB
____Clutch
____Class-dump-z
____Cycript를 사용한 인스트루먼테이션
____Frida를 사용한 인스트루먼테이션
____Hopper Snoop-it
____iOS 기기에 Burp CA 인증서 설치하기
__요약
5장. 공격 경로 만들기 - 애플리케이션 위협 모델링
__자산
__위협
____위협 에이전트
__취약점
__위험 요소
__위협 모델 접근법
__모바일 애플리케이션 위협 모델링
____모바일 애플리케이션 아키텍처
____위협 모델을 어떻게 생성할까?
____위협 모델링 방법론
____STRIDE를 사용한 위협 분류
____스푸핑
____일반적인 모바일 애플리케이션 위협 모델
____공격 계획과 공격 트리 만들기
____위협 모델의 결과물
____위험 요소 평가 모델
__요약
6장. 전속력으로 - 안드로이드 애플리케이션 공격
__대상 앱 설정하기
____백엔드 서버 설치
__Drozer를 사용해 앱 분석하기
__안드로이드 구성 요소
____액티비티 공격하기
____서비스 공격하기
____브로드캐스트 리시버 공격하기
____컨텐트 프로바이더 공격하기
__웹뷰 공격하기
__SQL 인젝션
__중간자 공격
____SSL 피닝
__하드코딩 된 자격 증명
__클라이언트 측에서의 암호화와 복호화
__JDWP를 사용한 런타임 조작
__저장소/아카이브 분석
__로그 분석
__구현상 취약점 평가하기
__바이너리 패칭
__요약
7장. 전속력으로 - iOS 애플리케이션 공격
__대상 설정하기
__저장소/아카이브 분석
____Plist 파일
____클라이언트 측 데이터 저장소
____키체인 데이터
____HTTP 응답 캐싱
__리버스 엔지니어링
____클래스 정보 추출
____Strings
____메모리 관리
____스택 스매싱 보호
__정적 코드 분석
____OpenURL 스킴
__Hopper를 사용한 앱 패칭
__하드코딩된 사용자 이름과 패스워드
__Cycript를 사용한 런타임 조작
____로그인 과정 우회
____메모리 상의 민감한 정보
__Dumpdecrypted
__클라이언트 측 인젝션
__SQL 인젝션
____UIWebView 인젝션
__중간자 공격
____SSL 인증서 피닝 깨기
__구현 취약점
____Pasteboard 정보 유출
____키보드 로그
____앱 상태 보존
__LLDB를 사용한 원격 추적기 만들기
__평가를 위한 Snoop-IT
__요약
8장. 안드로이드와 iOS 애플리케이션 보호하기
__안전한 설계
__개발자를 위한 보****마인드맵 (iOS와 안드로이드)
__기기 수준
____플랫폼 (OS) 수준
____애플리케이션 수준
__네트워크 수준
____인증서 피닝
____사이퍼 수트
____CFNetwork usage
____안전한 캐싱
__서버 수준
__OWASP 모바일 앱 보****체크리스트
____모바일 앱 개발자 체크리스트
__안전한 코딩 모범 사례
____안드로이드
____iOS
____제조사 중립적인 조언
____개발자 치트 시트
____개발자 정책
__배포 이후 보호
____최신 정보 알기
__요약