Top

안드로이드 포렌식 [구글 안드로이드 플랫폼 분석과 모바일 보안]

  • 원서명Android Forensics: Investigation, Analysis and Mobile Security for Google Android (ISBN 9781597496513)
  • 지은이앤드류 후그
  • 옮긴이윤근용
  • ISBN : 9788960774032
  • 35,000원
  • 2013년 02월 28일 펴냄
  • 페이퍼백 | 480쪽 | 188*250mm
  • 시리즈 : 디지털 포렌식

책 소개

안드로이드의 핵심적인 하드웨어와 소프트웨어 요소, 데이터 구조와 파일시스템, 메모리 유형과 저장 방식, 데이터 보안을 위한 고려사항 등 안드로이드 플랫폼에 대해 자세히 설명하는 책이다. 또한 포렌식 데이터 획득 기술과 데이터를 분석하는 데 필요한 전략을 제공한다. 뿐만 아니라 다양한 오픈소스 툴에 대한 소개와 사용 방법, 분석 작업을 여러 가지 예를 들어 단계별로 자세히 설명한다.


[ 소개 ]

안드로이드 기기에 대한 포렌식 분석 가이드로서, 안드로이드 기기와 데이터 그리고 앱의 보안성을 어떻게 향상시켜야 하는지에 대한 실질적인 조언을 제공한다.

안드로이드 포렌식을 제대로 이해하고 수행하고 싶다면 바로 이 책을 봐야 한다. 이 책만큼 독특하게 안드로이드 운영체제를 자세히 설명한 책은 없다. 안드로이드 기기 조사관이라면 반드시 소장해야 할 책이다.
- 짐 스틸(JIM STEELE), 디지털 포렌식 전문가


안드로이드는 이제 가장 유명한 모바일 플랫폼이며 지금도 여전히 정말 놀라운 속도로 성장하고 있다. 이 책은 안드로이드의 핵심적인 하드웨어와 소프트웨어 요소, 파일시스템, 데이터 구조, 데이터 보안을 위한 고려사항 등 안드로이드 플랫폼에 대한 철저한 설명과 포렌식 데이터 획득 기술, 그리고 그것을 분석하기 위해 필요한 전략을 제공한다. 이 책에서는 오픈 소스 툴과 예를 들어서 단계별로 분석 작업을 설명하는 데에 상당한 주안점을 두고 있다.


[ 이 책에서 다루는 내용 ]

■ 포렌식 분석을 위해 안드로이드 기기를 획득하는 기술
■ 포렌식 분석에 필요한 안드로이드 애플리케이션에 대한 정보 제공
■ 포렌식 분석가와 앱 개발자, IT 보안 관리자를 위해 책 전반에 걸쳐서 안드로이드 기기와 안드로이드의 데이터와 앱 보안에 대한 설명 제공


[ 이 책의 구성 ]

1장에서는 안드로이드 플랫폼의 역사와 AOSP(Android Open Source Project), 그리고 플랫폼의 국제화, 안드로이드 마켓, 간단한 리눅스와 안드로이드 포렌식에 대해 설명한다. 또한 이 책 전반에 걸쳐서 사용할 우분투 기반의 가상머신(VM)을 만드는 방법을 단계별로 설명한다. 이 책에서는 우분투 VM이 중요한 역할을 하며 실제 안드로이드 포렌식 분석 작업에서도 우분투 VM을 사용할 수 있다.

2장에서는 안드로이드를 지원하는 다양한 하드웨어와 장치 유형을 살펴본다. 기기 제조사나 무선 통신 사업자, 그리고 소비자에게는 안드로이드의 하드웨어 호환성이 매우 매력적이지만 포렌식 분석가나 보안 엔지니어에게는 그러한 다양성이 여러 가지 어려움을 만들어낸다. 안드로이드의 하드웨어 요소, 기기 유형, 부팅 과정을 이해하게 되면 안드로이드에 대한 전반적인 이해와 포렌식과 보안 조사에 많은 도움이 된다.

3장에서는 다양한 안드로이드 릴리스와 안드로이드 소프트웨어 개발 킷(SDK), 달빅 가상 머신, 안드로이드 보안의 핵심 요소, 안드로이드 디버그 브리지(adb)와 USB 디버깅 설정 같은 안드로이드 포렌식에서의 핵심 요소를 설명한다. 리눅스, 맥 OS X, 윈도우에 안드로이드 SDK를 설치하는 방법과 포렌식 기술을 테스트하는 데 이용할 수 있는 안드로이드 가상 기기를 만드는 방법에 대해 설명한다.

4장은 안드로이드 기기에 데이터가 저장되는 방식을 이해하는 데 필요한 정보를 다룬다. 안드로이드에서 데이터가 어디(Shared Preferences, 파일, SQLite, 네트워크 중)에 저장되고, 안드로이드 기기는 어떤 유형의 메모리(RAM, NAND 플래시)를 지원하는지를 설명한다. 또한 YAFFS2, EXT, FAT32/FAT16, 그리고 여러 가지 로우 레벨의 파일시스템 등 안드로이드 기기가 지원하는 다양한 파일시스템에 대해서도 설명한다.

5장에서는 안드로이드 기기, 데이터, 앱에 대한 보안을 다룬다. 안드로이드 기기에서 데이터를 어떻게 탈취하고 실질적인 공격 벡터로서 안드로이드 기기를 어떻게 사용하는지 설명한다. 그리고 몇 가지 중요한 보안 개념을 논의한 다음에 개인과 기업, 그리고 앱 개발자의 보안 전략에 대해 구체적인 조언을 제공한다. 안드로이드의 성장이 지속될수록 데이터 보안은 점점 더 중요해질 것이다. 5장에서는 이 주제에 대해 깊이 있고 실질적인 설명을 한다.

6장에서는 안드로이드 기기에서 포렌식 데이터를 획득하는 데 유용하게 사용되는 기술에 대해 설명한다. 먼저 서로 다른 데이터 획득 유형을 분류하고 안드로이드 기기의 처리 절차를 제공한다. 그리고 패스코드를 회피하기 위한 일곱 가지 전략에 대해 설명한다. 그 다음에는 SD 카드와 eMMC(Embedded MultiMediaCard)에서 데이터를 획득하기 위한 기술과 스크립트를 설명한다. 논리적 데이터 획득 기술을 설명하기 위해서 안드로이드와 SDK에서 제공하는 기술과 법 집행 기관과 정보 기관에 무료로 제공되는 솔루션인 AFLogical, 그리고 여섯 개의 상업 포렌식 소프트웨어 패키지를 예로 들어서 설명한다. 마지막으로 NAND 플래시에서 물리적 이미지를 획득하기 위한 기술을 설명하기 위해서 루트 권한을 취득하기 위한 여섯 가지 전략과 비아포렌식스(viaForensics)에서 개발한 AFPhysical을 예로 들어서 자세히 설명한다.

7장에서는 포렌식 분석가나 보안 엔지니어가 안드로이드 기기를 분석하기 위한 전략과 구체적인 방법에 대해서 설명한다. 물론 전통적인 포렌식 조사에 사용되는 많은 기술을 안드로이드 포렌식 분석에도 적용할 수 있지만 안드로이드의 새로운 파일시스템과 하드웨어 특성으로 인해 새로운 기술도 요구된다. 그런 새로운 기술이 없다면 안드로이드의 물리적인 이미지에서 가치 있는 정보를 추출하는 것이 매우 힘들어진다. 안드로이드를 분석하는 기반 기술과 실질적인 유틸리티뿐만 아니라 안드로이드의 디렉토리 구조와 11개의 중요한 애플리케이션에 대한 자세한 분석 내용도 제공하며, 그런 정보와 지식을 바탕으로 포렌식 분석가나 보안 엔지니어는 어떤 안드로이드 기기가 주어지더라도 충분히 분석을 수행할 수 있게 된다.

저자/역자 소개

[ 저자 서문 ]

안드로이드 모바일 플랫폼은 2008년 10월 처음 안드로이드폰이 나온 이후로 매우 빠르게 성장해서 이제는 가장 유명한 모바일 운영체제가 되었다. 안드로이드 플랫폼의 폭발적인 성장은 경쟁과 기능면에서 매우 많은 소비자의 선택을 받았다. 하지만 포렌식 분석가와 보안 엔지니어들은 안드로이드 기기를 조사하는 툴과 정보 지원의 결여로 어려움을 겪어왔다. 이 책은 안드로이드의 하드웨어와 소프트웨어, 그리고 파일시스템에 대한 깊은 통찰력과 포렌식 분석을 위한 기술을 제공함으로써 안드로이드 포렌식의 어려움을 극복할 수 있도록 도와줄 것이다. 포렌식 경험이 부족한 독자를 위해서, 이 책에서는 무료 오픈소스 유틸리티를 이용해 단계적으로 포렌식 분석의 수행 방법을 설명했다. 따라서 독자는 분석 예를 직접 따라 해 볼 수 있다. 안드로이드 SDK는 완전한 안드로이드 에뮬레이터를 제공하기 때문에 독자는 안드로이드 기기가 없어도 된다.

안드로이드 기기의 수가 증가함에 따라 안드로이드 기기에 저장되는 데이터에 대한 관심도 증가할 것이다. 불행하게도 그런 정보에 가장 관심을 가지는 곳이 사이버 범죄 집단이다. 안드로이드 기기에는 매우 많은 개인 정보와 비즈니스 정보가 포함되기 때문에 안드로이드 플랫폼 공격이 성공하기만 하면 엄청난 결과를 얻을 수 있기 때문이다. 그러한 위협을 차단하려면 핵심 안드로이드 개발자와 제조사뿐만 아니라 앱 개발자와 기업 보안 담당자 모두 안드로이드 플랫폼을 깊이 이해해야 한다. 더욱 안전한 앱을 사용하면 민감한 정보를 잃어버리지 않게 차단할 수 있으며, IT 보안 매니저는 좀더 강력한 정책을 적용할 수 있다.

안드로이드에 대한 대부분의 통계는 스마트폰과 태블릿에 집중돼 있지만, 이미 안드로이드를 탑재했거나 조만간 활용하게 될 기기의 가짓수는 더욱 늘어날 전망이다. 예를 들면, 자동차, 텔레비전, GPS, 게임 장치, 넷북 등 다양한 기기에 안드로이드가 운영체제가 사용되고 있다. 포렌식 분석가와 보안 엔지니어가 수행하는 포렌식 조사에 있어서 안드로이드의 비율이 갈수록 증가하고 있다. 마지막으로 안드로이드에 대한 관심이 특정 나라나 지역에 국한되어 있지 않으며, 또한 그로 인해서 안드로이드는 개인이나 기업에 영향을 끼칠 것이다.


[ 저자 소개 ]

앤드류 후그(Andrew Hoog)
컴퓨터 공학자이자 컴퓨터와 모바일 포렌식 전문가(GCFA, CCE)다. 또한 겸임 교수(어셈블리 언어)였으며 혁신적인 포렌식과 보안 회사인 비아포렌식스(viaForensics)의 공동 창립자다. 휴그는 포렌식 조사와 포렌식 소프트웨어 개발, 디지털 포렌식과 보안 연구에 매진하고 있다. 그리고 포렌식과 데이터 복구 영역에서 두 개의 특허를 출원 중이다. 일리노이 주의 오크 파크에서 살고 있으며, 가족과 보내는 시간과 여행, 와인, 과학 소설을 즐긴다.


[ 옮긴이의 말 ]

스마트폰은 이전의 휴대전화와는 분명히 다르다. 스마트폰을 간단히 정의하면 전화 기능이 있는 휴대용 컴퓨터라고 할 수 있다. 출발점은 휴대용 전화기에 여러 가지 다양한 기능을 추가하고자 하는 방향이었지만, 이제는 반대로 휴대용 컴퓨터에 전화 기능이 추가됐다고 볼 수 있다. 스마트폰도 결국 컴퓨터라고 본다면 기존 PC에서의 보안 이슈가 그대로 스마트폰에서도 발생한다고 볼 수 있다. PC와의 차이점이라고 한다면, 스마트폰은 PC의 경우보다 개인 정보가 더 많이 저장된다는 것이다. 또한 스마트폰으로 다양한 SNS 서비스를 이용하기 때문에 자신의 정보뿐만 아니라 다른 사람의 정보, 그리고 그들과의 관계 정보도 저장된다. 결국 사람들은 자신의 정보가 PC보다 더 많이 저장된 기기를 항상 휴대하고 있는 것이다. 또한, 스마트폰(또는 태블릿)은 개인적인 용도뿐만 아니라 회사의 업무 등 다양한 상황에서 점점 더 많이 사용되는 추세다. 따라서 스마트폰이나 태블릿 같은 모바일 기기에 대한 포렌식 분석의 중요성과 필요성이 나날이 증가하고 있다. 문제는 스마트폰 분실에 따른 개인 정보 유출과 스마트폰 운영체제의 보안성이다. 현재 스마트폰 운영체제 중에서 가장 많이 사용되는 것이 바로 안드로이드다. 안드로이드는 개방된 모바일 운영체제이기 때문에 운영체제 내부의 모든 것이 공개되어 있다고 할 수 있다. 안드로이드의 개방성을 포렌식 관점에서 본다면, 안드로이드에서는 정보가 어떻게, 어디에 저장되는지 잘 알 수 있다는 의미가 된다. 그런 점을 바탕으로 포렌식 분석가나 보안 엔지니어는 어떤 데이터를 어디에서 어떻게 찾아야 하는지 기반 지식을 구축할 수 있다.

이 책은 안드로이드 포렌식에 필요한 기본 지식(안드로이드의 아키텍처뿐만 아니라 하드웨어 플랫폼에 대한 설명)과 기술에 대한 설명뿐만 아니라 포렌식을 위해 반드시 사용하게 되는 다양한 툴까지 자세히 설명한다. 스마트폰을 하나의 컴퓨터라고 본다면 PC의 경우와 마찬가지로 안드로이드 포렌식에서도 가장 중요한 것은 역시 데이터가 저장되는 파일시스템과 데이터 구조, 그리고 메모리와 데이터를 저장하는 매체의 특성에 대한 이해일 것이다. 뿐만 아니라 이 책은 모바일 기기에서 정보를 추출할 때 마주칠 수 있는 다양한 시나리오를 예로 들어 잘 설명해주고 있으며, 안드로이드 포렌식에 사용되는 기술을 논리적인 기술과 물리적인 기술로 나눠 체계적으로 설명한다.

이 책은 안드로이드 포렌식뿐만 아니라 보안에 관심이 있는 독자(보안 엔지니어, 앱 개발자, 기업 보안 관리자 등)에게도 많을 도움이 될 것이다. 이 책에서 제공하는 다양한 기술적인 내용을 바탕으로 안드로이드 기기의 보안과 앱의 보안성을 향상시킬 수 있는 힌트를 많이 얻게 될 것이고, 그것은 기업에서의 운영 정책, 앱 개발자의 안전한 개발 정책을 수립하는 밑바탕이 될 것이다.

현재는 매우 빠른 속도로 안드로이드를 포함한 모바일 플랫폼이 진화 중이고, 또한 다양화되고 있다. 모바일 플랫폼의 변화와 다양성 속에서도 모바일 포렌식의 기본은 변함이 없을 것이다. 이 책을 통해서 단순한 개별 기술보다는 기초가 되는 공통적인 원리를 얻기 바란다.


[ 옮긴이 소개 ]

윤근용
시스템 프로그래머로서 시스템에 대한 다양한 분야에 관심이 많으며 특히 보안 분야에 대한 관심이 높아 다년간 보안 업무에 종사하고 있다. 바이러스 보안 업체를 거쳐 현재는 NHN에서 보안 관련 프로젝트를 수행 중이다. 에이콘출판사에서 펴낸 『웹 애플리케이션 해킹 대작전』, 『실전 해킹 절대 내공』, 『루트킷』, 『리버싱』, 『파이썬 해킹 프로그래밍』을 번역했다.

목차

목차
  • 1장 안드로이드와 모바일 포렌식
    • 소개
    • 안드로이드 플랫폼
      • 안드로이드의 역사
      • 구글의 전략
    • 리눅스와 오픈소스 소프트웨어와 포렌식
      • 리눅스의 역사
      • AOSP 라이선스
      • 개발 프로세스
      • 포렌식에서 오픈소스의 가치
      • AOSP 다운로드 및 컴파일
    • 국제화
      • 유니코드
      • 키보드
      • 커스텀 브랜치
    • 안드로이드 마켓
      • 앱 설치
      • 애플리케이션 통계
    • 안드로이드 포렌식
      • 도전 과제들
    • 정리
    • 참고 문헌
  • 2장 안드로이드 하드웨어 플랫폼
    • 소개
    • 핵심 요소
      • CPU
      • 베이스밴드 모뎀/무선
      • 메모리(RAM, NAND 플래시)
      • GPS
      • 무선(와이파이와 블루투스)
      • SD 카드
      • 스크린
      • 카메라
      • 키보드
      • 배터리
      • USB
      • 가속도계/자이로스코프
      • 스피커/마이크
    • 다양한 기기 유형
      • 스마트폰
      • 태블릿
      • 넷북
      • 구글 TV
      • 자동차(In-board)
      • GPS
      • 그 밖의 기기
    • ROM과 부트 로더
      • Power On & On-Chip 부트 ROM 코드 실행
      • 부트 로더(IPL/SPL)
      • 리눅스 커널
      • init 프로세스
      • 자이고트와 달빅
      • 시스템 서버
    • 제조사
    • 안드로이드 업데이트
      • 커스텀 유저 인터페이스
      • 안드로이드 기기 애프터마켓
    • 안드로이드 기기
      • 티모바일 G1
      • 모토로라 드로이드
      • HTC 인크레더블
      • 구글 넥서스 원
    • 정리
    • 참고문헌
  • 3장 안드로이드 SDK와 ADB
    • 소개
    • 안드로이드 플랫폼
      • 안드로이드 플랫폼별 설명
    • SDK
      • SDK 릴리스 히스토리
      • SDK 설치
      • 안드로이드 가상 기기(에뮬레이터)
      • 안드로이드 OS 아키텍처
      • 달빅 VM
      • 네이티브 코드 개발
    • 안드로이드 보안 모델
    • 포렌식과 SDK
      • 안드로이드 기기 연결
      • USB 인터페이스
      • ADB
    • 정리
    • 참고 문헌
  • 4장 안드로이드 파일시스템과 데이터 구조
    • 소개
    • 안드로이드 데이터
      • 어떤 데이터가 저장되는가
      • 앱 데이터 저장소 디렉토리의 구조
      • 데이터가 어떻게 저장되는가
    • 메모리 유형
      • RAM
    • 파일시스템
      • rootfs, devpts, sysfs, cgroup 파일시스템
      • proc
      • tmpfs
      • EXT 파일시스템
      • FAT32/VFAT
      • YAFFS2
    • 마운트된 파일시스템
      • 마운트된 파일시스템
    • 정리
    • 참고 문헌
  • 5장 안드로이드 기기, 데이터, 앱 보안
    • 소개
    • 데이터 탈취 대상과 공격 벡터
      • 공격 대상으로서의 안드로이드 기기
      • 공격 벡터로서의 안드로이드 기기
      • 데이터 저장소
      • 레코딩 기기
    • 보안 고려사항
      • 보안 철학
      • 미 연방 컴퓨터 범죄에 대한 법규
      • 오픈소스와 클로즈드 소스
      • 암호화된 NAND 플래시
    • 개인 보안 전략
    • 기업 보안 전략
      • 정책
      • 비밀번호/패턴/PIN 락
      • 원격 기기 초기화
      • 최신 버전의 소프트웨어로 업그레이드
      • 원격 기기 관리 기능
      • 애플리케이션과 기기 감사
    • 앱 개발 보안 전략
      • 모바일 앱 보안 테스트
      • 앱 보안 전략
    • 정리
    • 참고 문헌
  • 6장 안드로이드 포렌식 기술
    • 소개
      • 조사의 유형
      • 논리적인 기술과 물리적인 기술의 차이
      • 분석 대상 기기의 변경
    • 안드로이드 기기의 처리 절차
      • 기기의 안전
      • 네트워크 격리
      • 패스코드 회피 방법
    • 안드로이드 USB 대용량 저장 장치
      • SD 카드와 eMMC
      • SD 카드/eMMC의 포렌식 이미지 만들기
    • 논리적 기술
      • ADB Pull
      • 백업 분석
      • AFLogical
      • 상업용 제품
    • 물리적 기술
      • 하드웨어 기반의 물리적 기술
      • JTAG
      • Chip-off
      • 소프트웨어 기반의 물리적 기술
      • AFPhysical
    • 정리
    • 참고문헌
  • 7장 안드로이드 애플리케이션과 포렌식 분석
    • 소개
    • 분석 기술
      • 타임라인 분석
      • 파일시스템 분석
      • 파일 카빙
      • Strings
      • Hex: 포렌식 분석가의 좋은 친구
      • 안드로이드 디렉토리 구조
    • FAT 포렉식 분석
      • FAT 타임라인 분석
      • FAT 추가 분석
      • FAT 분석 노트
    • YAFFS2 포렌식 분석
      • YAFFS2 타임라인 분석
      • YAFFS2 파일시스템 분석
      • YAFFS2 파일 카빙
      • YAFFS2 Strings 분석
      • YAFFS2 분석 노트
    • 안드로이드 앱 분석
      • Messaging(sms와 mms)
      • MMS Helper Application
      • Browser
      • Contacts
      • Media Scanner
      • YouTube
      • Cooliris Media Gallery
      • Google Maps
      • Gmail
      • Facebook
      • Adobe Reader
    • 정리

도서 오류 신고

도서 오류 신고

에이콘출판사에 관심을 가져 주셔서 고맙습니다. 도서의 오탈자 정보를 알려주시면 다음 개정판 인쇄 시 반영하겠습니다.

오탈자 정보는 다음과 같이 입력해 주시면 됩니다.

(예시) p.100 아래에서 3행 : '몇일'동안 -> 며칠동안

정오표

정오표

[ p147 아래에서 7행 ]
포렌시 분석가나→ 포렌식 분석가나