Segurança no
Desenvolvimento de App`s
Pedro Salomão
@ppgsalomao
ppgsalomao@gmail.com / pedro@onyo.com
#whoami
Segurança
• O que o tema segurança aborda?
• Passwords x Finger Print
• Três grandes preocupações
• Persistência
• Comunicação
• Código
Conceitos Básicos
Criptografia
Criptografia
• Criptografia Simétrica
• Criptografia Assimétrica
• Geração de Chaves
• MD5 / SHA é criptografia?
• TradeOff
• Processamento
Proteção de Código
Como funciona a
proteção?
Conheça seu Inimigo
Decompilando
Decompilando
• É possível?
https://reverse.put.as/wp-content/uploads/2011/06/
GreHack-2012-paper-Mathieu_Renard_-
_Practical_iOS_Apps_hacking.pdf
• Ferramentas de Auto-Unpackers
E como proteger
• Ofuscação
• Criptografia de Strings
• Indireção
• Ferramentas:
• Arxan EnsureIT, Morpher, etc
Solução definitiva
Arquitetura e
Desenho da Solução
Persistência
Quando se
preocupar?
Guardando chaves
Persistência - Chaves
• Apple KeyChain
https://developer.apple.com/library/ios/samplecode/
GenericKeychain/Introduction/Intro.html#//apple_ref/
doc/uid/DTS40007797
Guardando dados
sensíveis
Persistência - Dados
• Escolha da criptografia
• Geração da chave
• Chaves Dinâmicas x Chaves Estáticas
• Chaves Estáticas
• Chaves Dinâmicas
• Master Key + KSN
Comunicação
Quando se
preocupar?
Protocolos
Protocolos
• HTTP x HTTPS
• Man in the Middle
• Certificados SSL cadastrados
• Criptografia de dados transmitidos
• Criptografia Assimétrica -> RSA
Links Úteis
• https://developer.apple.com/library/ios/
documentation/Security/Conceptual/
SecureCodingGuide/Introduction.html
• http://www.slideshare.net/mbazaliy/ios-protection-
mechanisms
Dúvidas?
Pedro Salomão
@ppgsalomao
ppgsalomao@gmail.com / pedro@onyo.com
Obrigado!
Pedro Salomão
@ppgsalomao
ppgsalomao@gmail.com / pedro@onyo.com
Estamos contratando!

Segurança no Desenvolvimento de App`s