Escolar Documentos
Profissional Documentos
Cultura Documentos
com
Android™Manual do hacker
Android™Há cker's
Mão livro
Joshua J . Drake
Pau Oli vai Fora
Zach Lanier
Collin M uliner
Stephen A . Ridley
Georg W icherski
Android™Manual do hacker
Publicado por
John Wiley & Sons, Inc. 10475
Crosspoint Boulevard
Indianapolis, IN 46256
www.wiley.com
Copyright © 2014 por John Wiley & Sons, Inc., Indianápolis, Indiana
10 9 8 7 6 5 4 3 2 1
Nenhuma parte desta publicação pode ser reproduzida, armazenada em um sistema de recuperação ou transmitida de
qualquer forma ou por qualquer meio, eletrônico, mecânico, fotocópia, gravação, digitalização ou outros, exceto conforme
permitido pelas Seções 107 ou 108 do Copyright dos Estados Unidos de 1976 Act, sem a permissão prévia por escrito do Editor,
ou autorização através do pagamento da taxa por cópia apropriada ao Copyright Clearance Center, 222 Rosewood Drive,
Danvers, MA 01923, (978) 750-8400, fax (978) 646 -8600. Solicitações de permissão ao Editor devem ser endereçadas ao
Departamento de Permissões, John Wiley & Sons, Inc., 111 River Street, Hoboken, NJ 07030, (201) 748-6011, fax (201) 748-6008,
ou online emhttp://www.wiley.com/go/permissions.
Limite de responsabilidade/exclusão de garantia:A editora e o autor não fazem representações ou garantias com relação à
precisão ou integridade do conteúdo deste trabalho e se isentam especificamente de todas as garantias, incluindo, sem
limitação, garantias de adequação a um propósito específico. Nenhuma garantia pode ser criada ou estendida por vendas ou
materiais promocionais. Os conselhos e estratégias aqui contidos podem não ser adequados para todas as situações. Este
trabalho é vendido com o entendimento de que o editor não está envolvido na prestação de serviços jurídicos, contábeis ou
outros serviços profissionais. Se for necessária assistência profissional, os serviços de um profissional competente devem ser
procurados. Nem o editor nem o autor serão responsáveis por danos decorrentes deste. O fato de uma organização ou site
ser referido neste trabalho como uma citação e/ou uma fonte potencial de informações adicionais não significa que o autor ou
o editor endossam as informações que a organização ou o site possam fornecer ou recomendações que possam fazer. . Além
disso, os leitores devem estar cientes de que os sites da Internet listados neste trabalho podem ter mudado ou desaparecido
entre o momento em que este trabalho foi escrito e o momento em que foi lido.
Para obter informações gerais sobre nossos outros produtos e serviços, entre em contato com nosso Departamento de Atendimento ao Cliente nos
Estados Unidos em (877) 762-2974, fora dos Estados Unidos em (317) 572-3993 ou fax (317) 572-4002.
Wiley publica em uma variedade de formatos impressos e eletrônicos e por impressão sob demanda. Alguns materiais incluídos nas
versões impressas padrão deste livro podem não estar incluídos em e-books ou em impressão sob demanda. Se este livro se referir a
mídia como um CD ou DVD que não está incluído na versão que você comprou, você pode baixar este material emhttp://
booksupport.wiley.com.Para obter mais informações sobre os produtos Wiley, visitewww.wiley.com.
Marcas registradas:Wiley e o logotipo da Wiley são marcas comerciais ou marcas registradas da John Wiley & Sons, Inc. e/ou suas
afiliadas, nos Estados Unidos e em outros países, e não podem ser usadas sem permissão por escrito. Android é uma marca registrada do
Google, Inc. Todas as outras marcas registradas são de propriedade de seus respectivos proprietários. A John Wiley & Sons, Inc., não está
associada a nenhum produto ou fornecedor mencionado neste livro.
Sobre a Autores
v
vi sobre os autores
vii
Créditos
ix
Reconhecer dgments
Agradeço à minha família, em especial à minha esposa e filho, pelo apoio e carinho
incansáveis durante este projeto. Agradeço aos meus pares da indústria e da academia;
seus esforços de pesquisa ultrapassam os limites do conhecimento público. Estendo
minha gratidão a: meus estimados coautores por suas contribuições e discussões francas,
Accuvant por ter a graça de me deixar seguir este e outros empreendimentos, e Wiley por
estimular este projeto e nos guiar ao longo do caminho. Por último, mas não menos
importante, agradeço aos membros do #droidsec, à equipe de segurança do Android e à
equipe de segurança da Qualcomm por impulsionar a segurança do Android.
— Joshua J. Drake
— Pau Oliveira
XI
xii Agradecimentos
— Zach Lanier
— Collin Mulliner
— Stephen A. Ridley
Agradeço sinceramente a minha esposa, Eva, e a meu filho, Jonathan, por me aturar
gastando tempo escrevendo em vez de cuidar deles. Eu também te amo. Agradeço a Joshua por
pastorear gatos para fazer este livro acontecer.
— Georg Wicherski
Conteúdo em uma olhadela
Introdução xxv
Índice 523
xiii
Cconteúdo
Introdução xxv
Capítulo 1 Olhando para o ecossistema 1
Entendendo as raízes do Android 1
Histórico da empresa 2
Histórico de versões 2
Examinando o código aberto do pool de 4
dispositivos, principalmente 7
Entendendo as partes interessadas do Android 7
Google 8
Fornecedores de hardware 10
Operadoras 12
Desenvolvedores 13
Usuários 14
Compreendendo as complexidades do ecossistema 15
Fragmentação 16
Compatibilidade 17
Atualizar problemas 18
Divulgações públicas de 21
segurança versus abertura 22
Resumo 23
Capítulo 2 Design e arquitetura de segurança do Android Noções 25
básicas sobre a arquitetura do sistema Android Noções básicas 25
sobre limites de segurança e aplicação 27
Sandbox do Android 27
Permissões do Android 30
Olhando mais de perto as camadas 34
Aplicativos Android 34
A estrutura do Android 39
xv
xvi Conteúdo
Samsung 488
NVIDIA 489
LG 489
HTC 489
Motorola 490
Ferramentas nativas do Android 491
BusyBox 491
setpropex 491
SQLite 491
traço 492
Ferramentas de engate e instrumentação 492
Estrutura ADBI 492
ldpreloadhook 492
Estrutura XPosed 492
Substrato Cydia 493
Ferramentas de análise estática 493
Smali e Baksmali 493
Androguarda 493
apktool 494
dex2jar 494
jad 494
JD-GUI 495
JEB 495
Radare2 495
Descompilador IDA Pro e Hex-Rays 496
Ferramentas de teste de aplicativos 496
Drozer (Mercury) Framework iSEC 496
Intent Sniffer e Intent Fuzzer 496
Ferramentas de hacking de hardware 496
Segger J-Link 497
JTAGulator 497
OpenOCD 497
Vendas 497
Ônibus Pirata 497
GoodFET 497
Total Phase Beagle USB 498
Facedancer21 498
Fase Total Beagle I2C 498
Chip Quik 498
Pistola de ar quente 498
Xeltek SuperPro 498
IDA 499
Apêndice B Repositórios de código aberto 501
Google 501
AOSP 501
Revisão do código Gerrit 502
Conteúdo xxiii
Índice 523