본문 바로가기 주메뉴 바로가기
국회도서관 홈으로 정보검색 소장정보 검색

목차보기


1장. 안드로이드 개발 도구
__소개
__ADT 설치
__JDK 설치
__API 소스 업데이트
__또 다른 ADT 설치 방법
__NDK 설치
__안드로이드 에뮬레이팅
__AVD 생성
__AVD와 상호 작용하는 ADB 사용
__AVD와 파일 송수신
__ADB를 통해 AVD에 애플리케이션 설치

2장. 애플리케이션 보안
__소개
__애플리케이션 인증서와 서명 검사
__안드로이드 애플리케이션 서명
__애플리케이션 서명 확인
__AndroidManifest.xml 파일 검사
__ADB를 통한 액티비티 매니저와의 상호작용
__ADB를 이용한 애플리케이션 리소스 추출

3장. 안드로이드 보안 평가 도구
__소개
__산토쿠의 설치와 설정
__드로저 설정
__드로저 세션 실행
__설치된 패키지 열거
__액티비티 열거
__컨텐트 프로바이더 열거
__서비스 열거
__브로드캐스트 리시버 열거
__애플리케이션 공격 지점 결정
__액티비티 실행
__드로저 모듈 작성: 기기 열거 모듈
__애플리케이션 인증서 열거자 작성

4장. 애플리케이션 공격
__소개
__로그켓을 통한 정보 노출
__네트워크 트래픽 검사
__액티비티 매니저를 통한 수동 인텐트 스니핑
__서비스 공격
__브로드캐스트 리시버 공격
__취약한 컨텐트 프로바이더 목록
__취약한 컨텐트 프로바이더로부터 데이터 추출
__컨텐트 프로바이더에 데이터 삽입
__SQL 인젝션에 취약한 컨텐트 프로바이더 목록
__디버깅 가능 애플리케이션에 대한 공격
__애플리케이션에서의 중간자 공격

5장. 애플리케이션 보호
__소개
__애플리케이션 컴포넌트 보안
__사용자 권한을 사용한 컴포넌트 보호
__컨텐트 프로바이더 경로 보호
__SQL 인젝션 공격에 대한 방어
__애플리케이션 서명 검증(위조 방지)
__설치 프로그램, 에뮬레이터, 디버그 플래그 감지를 통한
__애플리케이션 변조 보호
__ProGuard를 사용한 로그 메시지 제거
__DexGuard를 사용한 고급 코드 난독화

6장. 애플리케이션 리버스 엔지니어링
__소개
__자바를 DEX로 컴파일
__DEX 파일 디컴파일
__달빅 바이트코드 인터프리팅
__DEX를 자바로 디컴파일
__애플리케이션의 네이티브 라이브러리 디컴파일
__GDB 서버를 이용한 안드로이드 프로세스 디버깅

7장. 보안 네트워킹
__소개
__자가 서명된 SSL 인증서의 유효성 검증
__OnionKit 라이브러리의 StrongTrustManger 사용
__SSL 핀잉

8장. 네이티브 공격과 분석
__소개
__파일 권한 검사
__네이티브 실행 파일 크로스 컴파일
__경쟁 상태 취약점 공격
__스택 메모리 손상 공격
__자동화 네이티브 안드로이드 퍼징

9장. 암호화와 기기 관리 정책 개발
__소개
__암호화 라이브러리 사용
__대칭 암호 키 생성
__SharedPreferences 데이터 보안
__암호 기반의 암호화
__SQLCipher를 사용한 데이터베이스 암호화
__안드로이드 KeyStore 프로바이더
__기기 관리 정책 설정

이용현황보기

(안드로이드 플랫폼과 애플리케이션 취약점 분석 사례를 통한)안드로이드 해킹과 보안 이용현황 표 - 등록번호, 청구기호, 권별정보, 자료실, 이용여부로 구성 되어있습니다.
등록번호 청구기호 권별정보 자료실 이용여부
0002085380 005.8 -15-34 서울관 서고(열람신청 후 1층 대출대) 이용가능
0002085381 005.8 -15-34 서울관 서고(열람신청 후 1층 대출대) 이용가능

출판사 책소개

알라딘제공
★ 요약 ★

이 책에서는 안드로이드 운영체계의 각 버전과 앱의 일반적인 취약점을 찾아내고 처리하는 안드로이드의 보안 메커니즘 속으로 안내하는 실용적인 예제를 다룬다. 이 책을 통해 안드로이드 개발도구와 프레임워크를 설정하고, 안드로이드 앱을 비롯한 기기분석을 통해 발견한 일반적인 취약점을 공격하는 방법을 알 수 있으며, 안드로이드 보안 평가 프레임워크인 드로저(drozer)를 이용해 사용자 정의 취약점 평가 도구를 개발하는 방법도 배운다. 또한 일반적인 애플리케이션 레벨 공격에 대한 분석, 열거를 통해 공격코드를 작성하는 방법을 실용적인 예제를 통해 잘 보여준다. 기본적인 개발 도구부터 자바 레이어, 네이티브 레이어까지 안드로이드 애플리케이션 보안을 포괄적으로 다루기 때문에 안드로이드 보안을 접하는 독자에게 좋은 안내서가 될 것이다.

★ 이 책에서 다루는 내용 ★

■ 안드로이드 개발 도구와 프레임워크 설정
■ 안드로이드 애플리케이션과 기기 분석과 애플리케이션과 안드로이드 운영체제의 일반적인 취약점 공격
■ 안드로이드 보안 평가 프레임워크인 드로저(drozer)를 이용한 사용자 정의 취약점 평가 도구 개발
■ 일반적인 애플리케이션 레벨 공격에 대한 분석, 열거, 공격 코드 작성
■ 안드로이드 애플리케이션 보안 취약점 리버스 엔지니어링
■ 최신 보안 강화 기술을 이용한 안드로이드 애플리케이션 방어
■ 보안 애플리케이션 네트워킹, SSL/TLS

★ 이 책의 대상 독자 ★

몇몇 장은 안드로이드 애플리케이션을 공격하는 것을 다루며 나머지는 애플리케이션을 강화하는 것에 초점을 맞추고 있다. 이 책은 공격자와 방어자, 동전의 양면을 모두 다루는 것을 목표로 한다.
보안 연구자, 분석가, 모의 침투 테스트 전문가는 안드로이드 앱을 공격하는 방법의 세부사항을 즐길 것이다. 보안에 대해 더 알고 싶은 애플리케이션 개발자는 공격으로부터 애플리케이션을 보호하는 방법에 대한 실용적인 조언을 얻을 수 있을 것이다.

★ 이 책의 구성 ★

1장. '안드로이드 개발 도구'에서는 개발자가 안드로이드 플랫폼에서 안드로이드 애플리케이션과 네이티브 레벨 구성요소를 다루는 데 사용하는 도구를 설정하고 실행하는 것을 소개한다. 이 장은 또한 안드로이드를 처음 접하는 사람이나 일반적인 개발 환경과 도구를 설정하는 방법을 알고 싶어하는 사람에게는 유용한 개론이 될 것이다.
2장. '애플리케이션 보안'에서는 애플리케이션을 보호하기 위해 안드로이드 운영체제가 제공하는 구성요소를 소개한다. 이 장은 애플리케이션과 애플리케이션이 운영체제와 주고받는 상호작용을 보호하기 위해 사용되는 보안 관련 도구와 서비스를 직접 조사하고 사용해본다.
3장. '안드로이드 보안 평가 도구'에서는 애플리케이션이 사용자에게 노출하는 기술적인 위협을 측정하는 안드로이드 보안 전문가가 사용하는 잘 알려지거나 새롭고, 혹은 앞으로 기대되는 보안 도구와 프레임워크에 대해 소개한다. 여기에서는 나머지 장에서 사용할 해킹과 리버스 엔지니어링 도구를 설정하고 실행하고 확장하는 방법을 배울 수 있다.
4장. 애플리케이션 공격'에서는 안드로이드 애플리케이션을 대상으로 한 상황별 공격 기술을 다룬다. 이 장은 모든 안드로이드 애플리케이션 구성요소 타입을 다루며 소스 코드와 애플리케이션 간 문맥 모두에서 보안 위협을 조사하는 방법을 상세히 설명한다. 또한 3장에서 소개한 도구를 좀 더 능숙하게 다루는 방법을 소개한다.
5장. '애플리케이션 보호'에서는 4장과 정반대의 내용이다. 애플리케이션의 결함에 대해서만 이야기하는 것 대신, 이 장에서는 애플리케이션을 수정하는 것에 대해 다룬다. 4장에서 상세하게 설명한 공격 중 일부로부터 애플리케이션을 보호하기 위해 개발자가 사용할 수 있는 유용한 기술에 대해 체험할 수 있다.
6장. '애플리케이션 리버스 엔지니어링'에서는 애플리케이션을 속속들이 분석하는 방법을 습득할 수 있으며 안드로이드 리버스 엔지니어가 애플리케이션을 조사하고 분석하기 위해 사용하는 기술도 배울 수 있다. Dex 파일 포맷에 대해 매우 상세하게 배울 수 있으며, 또한 Dex 바이트코드를 리버스 엔지니어가 쉽게 이해할 수 있는 유용한 표현 방법으로 해석하는 방법도 배운다. 또한 리버스 엔지니어가 애플리케이션과 네이티브 구성 요소가 안드로이드 운영체제에서 실행되고 있는 동안 동적으로 분석할 수 있는 근사한 방법에 대해서도 다룬다.
7장. '보안 네트워킹'에서는 개발자가 네트워크 통신이 발생하는 동한 데이터를 보호하기 위해 따라야 하는 실용적인 방법을 배울 수 있다. 이 방법을 통해 SSL 통신에 좀 더 강력한 유효성 검증을 추가할 수 있게 된다.
8장. '네이티브 공격과 분석'에서는 안드로이드 플랫폼의 네이티브 문맥과 관련한 보안 평가와 테스트 방법을 다룬다. 안드로이드 시스템에서 폰의 루트 권한을 획득하고 권한을 상승시킬 수 있는 보안 결함을 찾는 방법을 배울 수 있으며, 메모리 손상과 경쟁 상태 공격을 포함한 네이티브 서비스를 대상으로 하는 로우 레벨 공격을 배울 수 있다.
9장. '암호화와 기기 관리 정책 개발'에서는 암호화를 올바르게 사용하는 방법과 애플리케이션 내부의 데이터를 안전하게 유지하는 일반적인 안티 패턴(anti-pattern) 중 일부를 피할 수 있는 방법을 다룬다. 이 장은 애플리케이션의 보안을 빠르고 안전하게 향상시키는 강건하고 시간을 절약할 수 있는 써드파티 라이브러리를 추천한다. 끝으로 기업 보안 정책을 다루고 강화하기 위한 안드로이드 기기 관리 A PI를 사용하는 방법을 다룬다.