Smart Card e Java Card

Redes de Computadores I - 2012.1

4. Segurança

 

Devido à não-dependência de recursos externos que são, muitas vezes, vulneráveis a ataques maliciosos, os Smart Cards são frequentemente utilizados em aplicações que têm segurança e privacidade como prioridade. Ainda assim, a segurança da aplicação e as técnicas implementadas pelo desenvolvedor é de extrema importância para a segurança dos dados.

 

4.1. Técnicas de segurança

 

4.1. Identificação de usuário

Existem, basicamente, três tipos de identificação de usuário. O uso de senhas e a posse de um objeto não garantem autenticidade de usuário, já que pode ocorrer o compartilhamento de tais segredos. A biometria consiste na identificação de uma característica única do corpo humano. Neste caso, elimina-se a possibilidade de transferência de acesso e assim, garantindo a autenticidade do usuário.

 

Hoje, o método mais comum de identificação de usuário é a entrada de uma senha numérica, o PIN (Personal Identification Number).

 

4.2. Segurança do Smart Card

Pode-se dividir a segurança providenciada pelo Smart Card em quatro componentes. O corpo do cartão, em que o microcontrolador está embutido, inclui métodos de segurança empregados neste componente podem ser conferidos visualmente por humanos, além de legíveis por máquinas. O hardware, sistema operacional e o software protegem os dados e os programas no Smart Card.

 

Figura 4.1. Esquema de componentes na segurança de Smart Cards.

 

4.3. Ataques

 

4.3.1. Classificação

 

Ataques a Smart Cards podem ser divididos em três níveis: social, físico ou lógico.

 

Ataques de nível social atingem pessoas que trabalham com Smart Card, como designers de chip ou programadores, além de usuários comuns. Em ambos os casos, a chave central é a segurança da senha por parte do indivíduo, que pode ser parcialmente garantida através de métodos como proteção ao digitar a senha no teclado numérico. Ainda assim, há riscos devido a possível fraca combinação numérica. Ataques neste nível a desenvolvedores de Smart Cards mostram-se pouco efetivos, visto que é possível tornar público o código produzido, ou terceiros serem contratados para avaliá-lo.

 

Ataques de nível físico envolvem a alteração de condições físicas do Smart Card, como voltagem ou frequência de clock. Para isso, ataques deste tipo necessitam de equipamentos técnicos para a obtenção de acesso ao Smart Card. Dependendo do tipo de ataque de nível físico - isto é, caso haja energia sendo aplicada ao microcontrolador, elas podem ter restrição de tempo ou não, o que pode requerer do atacante equipamentos suficientemente rápidos para a extração de dados.

 

Ataques de nível lógico se caracterizam pela análise do tráfego de bytes no Smart Card. Nisto, incluem-se a exploração de bugs no sistema operacional e cavalos de troia em executáveis de programas. É o ataque mais bem-sucedido em Smart Cards.