Content uploaded by Diego F. Aranha
Author content
All content in this area was uploaded by Diego F. Aranha on Dec 15, 2017
Content may be subject to copyright.
Análise de Segurança em Aplicativos Bancários na Plataforma Android
Diego F. Aranha (PQ), Rafael J. Cruz (IC)
Resumo
O projeto realiza análise de segurança em aplicativos bancários na plataforma Android. A análise de segurança
abrange alguns aspectos do aplicativo móvel, a configuração do servidor e a conexão entre aplicativo e servidor.
Os bancos analisados foram Banco do Brasil, Bradesco, Caixa Econômica Federal, Citibank, HSBC, Itaú e
Santander. Os resultados foram interessantes, pois na maioria dos aplicativos, foi possível personificar o banco
para os clientes e obter informações sigilosas, como usuário, senha, saldo, cartão de crédito, entre outros.
Palavras Chave: SSL/TLS, Homem-no-meio, Certificado.
Introdução
Os bancos – aplicações críticas – devem man-
ter boas práticas de segurança. Segundo a
FEBRABAN
1
, cerca de 24% (25 milhões) de contas
utilizam Mobile Banking. Quase metade das con-
tas correntes utilizam o Internet Banking e uma em
cada quatro contas utiliza o Mobile Banking, que
teve um crescimento de 127% de 2013 para 2014 e
já representa 12% do número total de transações.
BANCO
Login:
Senha:
Servidor
Cliente
Atacar!!!
Atacante
Rede Local
x
1
2
6
5
3
4
Quem é o servidor? EU!!!
Sou um cliente,
posso conectar?
Tudo bem.
Figura 1.
Ataque Man In The Middle dentro de uma
rede local.
Os protocolos SSL/TLS
2
foram concebidos com
objetivo de fornecer propriedades muito poderosas
como: confidencialidade, integridade, disponibili-
dade, autenticidade e irretratabilidade.
O ataque Homem No Meio, do inglês Man In
The Middle (MITM), é uma forma de ataque em
que os dados trocados entre duas partes são in-
terceptados, registrados e possivelmente alterados
sem que as vítimas percebam. Neste trabalho, o
ataque é feito dentro da mesma rede local, que
encontra-se o cliente. Para controlar o cliente basta
que o atacante seja o administrador da rede ou
forjar a resolução ARP (como na Figura 1).
Resultados
Na Tabela 1 temos os resultados dos servidores
analisados e na Tabela 2 o resultado da análise dos
clientes (aplicativos Android).
Tabela 1.
Resultado do SSLlabs sobre servidores
examinados. As notas variam de F a A+.
Banco do
Brasil Bradesco
Caixa
Econômica
Federal
Citibank HSBC Itaú Santander
Emprega TLS 1.2 8 8 484 4 8
Emprega TLS 1.1 8 8 8 8 4 4 8
Emprega TLS 1.0 4 4 4 4 4 4 4
Suporta SSL 3.0 4 4 4 84 4 4
Suporta SSL 2.0 848 8 8 8 8
Suporta RC4 4 4 4 8 8 4 4
Suporta MD5 4 4 8 8 8 8 8
Suporta SHA-1 4 4 4 4 4 4 4
Suporta Segredo Futuro 8 8 8 8 8 8 8
Suporta OCSP 8 8 8 8 48 8
Suporta HPKP 8 8 8 8 8 8 8
Diffie-Hellman Inseguro 48 8 8 8 8 8
Vulnerável a Deterioração 4 4 8 8 4 4 4
Vulnerável ao POODLE 484 4 4 4 8
Vulnerável ao DoS 8 8 4 4 8 8 8
Vulnerável ao FREAK 4 4 8 8 8 8 8
Nota F F, F C C C,A-, A- F C
Tabela 2.
Resultado dos aplicativos Android anal-
isados. As notas variam de 0 a 5 estrelas.
Banco do
Brasil Bradesco
Caixa
Econômica
Federal
Citibank HSBC Itaú Santander
Vazamento de credenciais 84 4 4 84 4
MITM 8 8 8 8 8 8 4
MITM com certificado raiz 84 4 4 4 4 4
Redes sociais externas 8484848
Ausência de pinagem 84 4 4 4 4 4
Nota
Conclusões
A segurança de aplicações bancárias pode ser
aprimorada de duas formas. Aplicações do lado
do cliente precisam avaliar cuidadosamente chaves
públicas do servidor enviadas no início da conexão.
Durante a validação feita pelo cliente, deve-se tam-
bém checar CRL, OCSP e pinagem de certificado.
Servidores também devem aumentar o nível
de segurança. Este objetivo pode ser alcançado
abandonando algoritmos e protocolos criptográficos
obsoletos, além de implementar novas medidas de
seguranças (Segredo Futuro, por exemplo).
Agradecimentos
Agradecemos aos bancos pela iniciativa de mel-
hora da segurança dos seus sistemas e agradece-
mos ao SAE da Unicamp por fomentar a pesquisa.
———————————–
1Federação Brasileira de Bancos. Pesquisa FEBRABAN de
Tecnologia Bancária 2014. 2014.
2Holly Lynne McKinley. SSL and TLS: A Beginners Guide.
2003.