Código aberto não faz milagre

Um palestrante do Chaos Communication Congress propõe uma reflexão sobre o uso de hardware de código aberto, se ele realmente é capaz de resolver problemas de confiança.

Muitos pensam que os softwares de código aberto são mais seguros que os proprietários. Agora também estamos vendo tentativas de aplicar uma teoria semelhante ao desenvolvimento de hardware. Na 36º Chaos Communication Congress (36C3), conferência de hackers realizada no mês passado, os especialistas Andrew “bunnie” Huang, Sean “xobs” Cross e Tom Marble levantaram dúvidas se o emprego de código aberto é suficiente para resolver problemas de confiança em hardware. Huang falou longamente sobre o assunto.

Diferenças entre hardware e software em termos de confiança

A segurança do software de código aberto reside não apenas em sua abertura, mas também em ferramentas amplamente usadas que ajudam a garantir que o programa que você executa no terminal seja fiel ao código fonte publicado. Os programadores assinam seu software com um certificado digital, por exemplo, e o sistema verifica o certificado antes de executar a aplicação no computador do usuário.

Com hardware, a história é diferente. Sem equivalentes de hardware para a criação de hash ou assinaturas digitais, os usuários não têm ferramentas para verificar a autenticidade do hardware em relação às informações publicadas sobre ele. A última vez que um dispositivo ou chip é realmente verificado é na fábrica. E quanto maior a diferença entre a verificação de fábrica e o uso do dispositivo, maior a chance de um ataque MITM ser bem-sucedido.

O que pode dar errado?

De um modo geral, tudo pode acontecer com chips ou dispositivos inteiros entre a saída da fábrica e o primeiro uso. Para começar, o firmware pode ser substituído. (Claro, firmware é realmente um problema de software, por isso pode ser verificado, mas você ainda precisa confiar no hardware durante a verificação.) É por isso que Huang se concentrou em problemas – substituições, modificações e implantes de componentes – relacionados estritamente ao hardware.

Adicionando componentes

Atualmente, um módulo totalmente não autorizado pode ser colocado até no conector USB de um cabo de carregamento. Naturalmente, é ainda mais fácil adulterar equipamentos multicomponentes mais sofisticados, que oferecem muito mais espaço para implantes. A única boa notícia aqui é que é relativamente fácil detectar um chip adicionado.

Substituindo componentes

O truque mais simples de substituição é a falsificação da marca. Um exemplo da vida real: um microcontrolador mostrou comportamento inadequado. O logotipo era o certo (da STMicroelectronics) em um chip completamente diferente. Naquela época, o truque era um componente caro substituído por um barato, mas a substituição poderia acrescentar qualquer coisa.

Modificação de chip

As pessoas tendem a pensar que os chips não podem ser modificados após saírem da fábrica, mas não é bem assim. Em muitos casos, o que vemos como um único chip, na verdade são vários microcircuitos separados em um pacote. Um adversário experiente pode usar a mesma tecnologia para colocar mais um pedacinho de silício na mesma embalagem e conectar esse implante aos contatos existentes.

Implante chip-on-chip

Implante chip-on-chip

De fato, o equipamento para fazer isso é relativamente barato e prontamente disponível (de acordo com o palestrante, uma máquina de ligação por fio seminova vinda da China custa cerca de US$ 7 mil), embora os resultados falsificados sejam detectáveis ​​em raios-X.

É mais caro modificar os pacotes CSP no nível de chip (WL-CSP) e os raios X não revelam a troca.

Modificação do circuito integrado (IC)

Normalmente, as empresas projetam chips para tarefas específicas de seu setor, mas os terceirizam para produção; somente grandes players do mercado podem produzir seus próprios chips. Nesse tipo de arranjo, há mais de uma maneira de modificar o produto final, de forma que ele ainda cumpra os termos de referência. Além disso, depois que um chip ou dispositivo está fora do alcance dos projetistas, é raro alguém se incomodar em verificar o produto resultante com as especificações originais.

Em que ponto o hardware pode ser alterado?

O especialista ofereceu vários cenários de substituição que variam de bastante complicado (interceptação de carga em trânsito como um exemplo extremo) a relativamente fácil. Em termos gerais, qualquer pessoa pode comprar um produto, adulterá-lo e devolvê-lo ao vendedor, que pode vendê-lo novamente. E, formalmente, em vários estágios de compra, a equipe de embalagem do fabricante, os agentes alfandegários e muitas outras partes têm acesso ao equipamento, e qualquer um deles pode adulterá-lo, se quiserem. Para todos os efeitos, o uso de hardware de código aberto não melhorará muito a segurança.

Conclusões

No final de sua apresentação, Huang especulou sobre quais mudanças na produção de hardware poderiam permitir aos usuários finais verificar a segurança de chips e dispositivos. Os interessados ​​na filosofia por trás desse movimento, bem como nos detalhes técnicos da modificação do chip, devem assistir ao vídeo da apresentação.

Nem todas as muitas maneiras de tornar o hardware perigoso são caras ou trabalhosas e, o mais importante, não há correlação direta entre a complexidade de um ataque e o quão difícil é detectar. Quanto aos usuários corporativos, fique atento à ameaça e não confie apenas nos produtos de segurança dos terminais; os sistemas de proteção de infraestrutura corporativa protegem ameaças avançadas e ataques direcionados.

Dicas