스크랩

구간

안드로이드 해킹과 보안 안드로이드 플랫폼과 애플리케이션 취약점 분석 사례를 통한

원제 : Android Security Cookbook

키이스 마칸, 스콧 알렉산더바운 저 | 이승원 외 역 | 에이콘출판 | 2015년 07월

미리보기 북트리

정가
$70.00
판매가
$51.03 (27%↓) 최저가 보상
적립금
$1.02 (2%P)
출고예상일
2026년 10월 08일 수령예상일 안내
북카트 담기 바로구매하기 위시리스트담기

평점 -  ·  리뷰 0

리뷰 쓰기

ISBN : 9788960777385 / 400쪽 188 x 235 (㎜)

이 상품에 궁금하신점이 있으세요? 1:1상담문의

추천inside
Adobe Flash Player 가져오기

이 분야의 베스트셀러

아래의 도서와 구매하시면 이 도서들의 적립금을 즉시적용해 드립니다.

  • 21,600
  • 25,200
  • 21,600
  • 21,420

책 소개

출판사 리뷰

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

저자 소개

  • 저자 : 키이스 마칸, 스콧 알렉산더바운
저자 키이스 마칸(Keith Makan)은 컴퓨터 공학과 물리학을 전공했으며, 열정적인 취미를 가진 보안 연구원이다. 대부분의 자유 시간을 소스 코드를 읽는 것과 리버스 엔지니어링, 퍼지 테스트, 웹 애플리케이션 기술에 대한 공격 코드를 개발하는 데 보낸다.
IT 보안 평가 전문가로 일하며, 자신의 연구를 통해서 구글 애플리케이션 보안 명예의 전당에 여러 차례 헌액되었다. 구글 크롬의 웹킷(WebKit) XSSAuditor, 파이어폭스 NoScript 애드온에 대한 공격 코드를 개발했으며, 워드프레스 플러그인에 대한 보안 결함을 계속해서 보고하고 공격 코드를 개발하기도 했다

역자 소개

  • 역자 : 이승원 외
이승원
안랩(AhnLab) 분석팀에서 악성코드 분석가로 오랫동안 근무했다. PC와 안드로이드 악성코드 분석에 풍부한 경험을 가지고 있으며, 다양한 분석 자동화 시스템 개발 프로젝트를 수행하였다. 독서, 메모, 달리기, 등산을 좋아하고, 인류의 삶을 바꿔나가는 IT기술 홍수 속에서 보안의 역할에 대해 관심이 많다.

박준용
서울대학교를 졸업 후 기계번역과 음성인식 소프트웨어를 개발했으며 2004년 안랩에 합류한 후에는 백신 엔진과 보안 제품, 악성코드 분석에 다양하게 참여했다. 언젠가는 프로그래밍 엔지니어와 보안 엔지니어 사이의 보이지 않는 벽을 허물 수 있다는 꿈을 갖고 있으며, 최근에는 안드로이드와 데이터 시각화에 관심이 있다.

강동현
안랩에서 악성코드 및 스파이웨어 분석을 오랫동안 담당했다. 2012년 모바일 악성코드 분석을 시작하면서 악성코드 분석 자동화 시스템 및 업무 프로세스 자동화에 관심을 갖게 되었다.

박시준
2005년부터 안랩 분석팀에서 PC 및 모바일 악성코드를 분석하고 관련 시스템을 만들고 있다. 새로운 IT 기술과 서비스에 관심이 많고 사람은 사람답게, 기계는 기계답게 하기 위한 자동화를 좋아하며, 맛집 탐방을 즐긴다.

주설우
안랩 분석팀에서 악성코드 분석과 진단 알고리즘, 자동화 분석시스템 등을 연구 개발하며 강산이 변하도록 악성코드 분석가로 일하고 있다. 삼남매를 둔 다둥이 아빠로 여행과 캠핑, 텃밭 가꾸기를 즐기며 자연 친화적인 IT인의 삶을 살고 있다.

이신엽
수원대학교 컴퓨터학과를 졸업하였으며, 현재 안랩 분석팀에서 악성코드 분석가로 근무하고 있다. 모바일 악성코드와 코드 난독화/패킹이 주요 관심 분야다. 항상 노력하는 사람을 동경하며, 안전한 모바일 환경 만들기를 목표로 한다.

조정근
경북대학교 컴퓨터공학과를 졸업한 후 안랩 분석팀에서 모바일 악성코드 분석을 하고 있다. 최근 모바일 및 IoT 분야의 보안에 관심을 가지고 있다. 안드로이드 플랫폼의 구조와 동작방식을 연구하고 있으며, 증가하는 보안 위협에 효율적으로 대응하기 위한 시스템과 프로세스 개발을 목표로 하고 있다.

머리말

★ 지은이의 말 ★

안드로이드는 사용자뿐만 아니라 개발자와 모든 종류의 회사에게 가장 인기 있는 모바일 운영체제가 되었다. 물론, 이 때문에 안드로이드는 악의적인 적들에게도 매우 인기 있는 플랫폼이 되었다.
안드로이드는 2005년부터 일반에 공개되기 시작해 기능이 급격하게 많아지고, 더불어 매우 복잡해졌다. 현재 일반적으로 스마트폰은 사용자에 관한 매우 예민한 정보를 저장하고, 또 이메일, 텍스트 메시지, 소셜 네트워킹 서비스나 전문 네트워킹 서비스 접속에 대한 정보도 저장한다. 어떤 소프트웨어라도 마찬가지지만 기능과 복잡성의 증가는 이와 동시에 보안 위협의 증가를 불러왔다. 소프트웨어가 더 강력하고 복잡해질수록 관리하기 더 힘들어지며 나쁜 현실에 적응하기도 더 힘들어진다.
이런 점은 특히 모바일 스마트폰 소프트웨어에 적용된다. 개인정보와 예민한 정보를 잔뜩 담고 있는 모바일 스마트폰 소프트웨어는 문제를 해결하는 흥미로운 보안 문맥(security context)을 제시한다. 한편, 모바일 스마트폰의 보안 문맥은 네트워크상이나 클라우드 상의 서버들과 비교하기 쉽지 않다. 이 서버들은 이동하지 않으며 쉽게 도난당하지도 않는다. 또한, 지속적으로 서버를 모니터링할 수도 있고 빠르고 자동화된 방법으로 보안 사고에 대응할 수도 있다. 우리가 주머니나 핸드백에 들고 다니거나 택시에서 잃어버리기도 하는 스마트폰과 같은 장치와는 전혀 다른 이야기다!
안드로이드 사용자와 개발자는 모바일 보안 위협에 대해 지속적으로 인지할 수 있어야 한다고 요구한다. 이 때문에 모바일 보안과 위협 평가 전문가와 보안 엔지니어에 대한 요구가 아주 높다. 이 책은 초보 안드로이드 보안 평가 전문가의 학습 곡선을 완만하게 해주는 것을 목표로 하며, 숙련된 안드로이드 보안 전문자에게는 일반적인 안드로이드 보안 문제를 깔끔하게 해결하기 위한 도구로서의 역할을 기대한다


★ 옮긴이의 말 ★

‘안드로이드’라는 OS가 세상으로 나온 지도 벌써 10년이다. 강산이 바뀌는 동안 안드로이드는 스마트폰이라는 이름으로 우리의 삶 속에 들어왔고, 모바일 OS 시장점유율의 과반수 이상을 차지하고 있다. 최근에는 웨어러블 디바이스도 등장하면서 우리의 삶과 더 가까워지고 있다. 우리가 이런 스마트 디바이스에 의존한다는 것은 많은 데이터를 디바이스에 입력해서비스를 받는 것을 의미한다. 입력되는 데이터는 연락처, SMS, 통화목록, 공인인증서, 사진, 위치정보, 생체정보(웨어러블 디바이스를 통해 수집되는) 등 매우 다양하고 하나같이 민감한 정보들이다. 그러나 만약 안드로이드의 보안이 취약하다면 여러분의 정보는 공격자들의 좋은 먹이가 될 수 있다. 여러분이 관심을 가질 만한 부분은 안드로이드가 어떻게 민감한 정보를 보호하는지에 대한 내용일 것이다. 그리고 안드로이드 개발자들이 고민해야 할 부분은 내가 개발하는 애플리케이션을 어떻게 공격자로부터 안전하게 보호할 수 있는가에 대한 것이다.
이 책은 안드로이드 보안에 관심이 있는 사람들과 애플리케이션 개발자에게 혜안을 제시한다. 또한 안드로이드 운영체계의 각 버전과 애플리케이션의 일반적인 취약점을 찾아내고 처리하는 안드로이드의 보안 메커니즘 속으로 안내하는 실용적인 예제들을 다룬다. 이 책을 통해 안드로이드 개발 도구와 프레임워크를 설정하고, 안드로이드 앱을 비롯한 기기 분석을 통해 발견한 일반적인 취약점을 공격하는 방법을 알 수 있으며, 안드로이드 보안 평가 프레임워크인 드로저를 이용해 사용자 정의 취약점평가 도구를 개발할 수도 있을 것이다.
또한 이 책은 일반적인 애플리케이션 레벨 공격에 대한 분석, 열거를 통해 공격코드를 작성하는 방법을 실용적인 예제와 함께 잘 보여주고 있다. 기본적인 개발 도구부터 자바 레이어, 네이티브(Native) 레이어까지 안드로이드 애플리케이션 보안을 포괄적으로 다루기 때문에 안드로이드 보안을 접하는 독자에게 좋은 안내서가 될 것이다.
안드로이드는 계속 변화하고 있다. 계속 업데이트가 진행되는 만큼 지금까지는 없던 취약점 역시 생길 수 있다. 어쩌면 이 책을 번역하고 있는 지금도 아직 발견되지 않은 취약점이 있을지 모른다. 이 책을 통해 여러분이 안드로이드 보안에 더 관심을 가지고 기술적으로 견고해진다면, 분명 안드로이드는 안전한 방향으로 발전할 것이라 생각한다. 여러분의 건승을 빈다.

 

목차

목차
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 프로바이더
__기기 관리 정책 설정

top