Xisto: como uma tecnologia está mudando a geopolítica dos EUA
setembro 26, 2019
1º Texto da Década: O preço da Gasolina deve Aumentar
fevereiro 19, 2020

A luta entre Machine Learning e Cybersecurity

E você achou que os pilares da industria 4.0 não poderiam concorrer entre si?! Pois bem, não é verdade, e nesse artigo vamos falar exatamente sobre como Machine Learning pode ser um baita problema para quem cuida da segurança de hardwares (ou até softwares dependendo do caso). Apesar de ser um tema extremamente complexo do ponto de vista técnico, vou tentar escrever de uma maneira que leigos possam entender.

Se você ainda não sabe o que são esses temas e qual a relevância que eles tem, não deixa de dar uma olhada no meu artigo sobre industria 4.0

Challenge-Response Authentication


Essa é a forma mais básica de autenticar um sistema ou permitir a entrada de um usuário em uma plataforma. O usuário (ou objeto) simplesmente recebe uma informação (challenge) e deve informar a resposta correta (response) que é verificada a partir de um banco de dados. Se ele acertar, pronto, objetivo completo. Um exemplo clássico e bem simples disso é o seu login/senha.

Physically Unclonable Function (PUF)


Se nós tivéssemos só esse meio meio de proteção provavelmente estaríamos perdidos. Felizmente, novos métodos foram propostos e as PUFs prevalecem até hoje. Uma PUF é uma tentativa de se aproveitar de variações no processo de manufatura do objeto para aumentar a segurança da autenticação.

Funciona da seguinte maneira, todo objeto possui variações randômicas em alguma propriedade devido ao processo de fabricação. Isso permite que uma challenge gere uma response única para cada objeto (por isso o nome ). Para ficar mais fácil de entender, vamos tentar fazer uma analogia com o ser humano (biólogos e médicos me desculpem se eu falar algo incorreto). Assim que o ser humano nasce, ele possui uma digital que foi gerada durante o seu período de formação e é única para cada um. Tente imaginar, portanto, uma PUF como uma digital do objeto gerada durante a sua manufatura.

Uma vez finalizada a produção dos componentes, vários CRPs são coletados compondo um database (fase de enrollment). Na segunda fase (verification), que é onde acontece a autenticação, uma challenge é aplicada à PUF e a sua response é comparada à esse database (como mencionei anteriormente). Todo esse processo é extremamente análogo à quando você coloca o dedo no leitor de digitais.

Existem diversas PUFs geradas por sistemas eletrônicos ou não. Abaixo eu vou listar algumas que para mim são as mais relevantes (e divertidas de se conhecer).

Paper PUFs: Existem várias variações desse tipo mas o mais interessante é sua aplicação. Elas são basicamente a resposta que o papel tem à raios gerados por um feixe de laser considerando a estrutura irregular de fibras dela. Esse esquema foi/é muito usado para identificação de dinheiro forjado.

Magnetic PUFs: Essas são usadas para evitar fraude de cartões de crédito e se aproveitam da estrutura amorfa das partículas em um meio sujeito à ações de magnetismo

Power Distribution PUFs: Normalmente usadas para chips. As variações ocorrem nas resistências elétricas da matriz do chip provocando mudanças na distribuição de potência.

O maior inimigo: Machine Learning


Até aqui eu acredito que você deve ter se convencido de que esse processo de segurança é altamente complexo e difícil de ser hackeado . A grande questão é, estamos totalmente protegidos?

E a resposta é não totalmente. O grande problema do processo é que você tem um banco de dados bem grande o que é um prato cheio para algoritmos (até simples) de machine learning, que conseguem "aprender" a PUF do seu objeto. Na verdade, olhando a imagem abaixo, nós conseguimos ver que a maioria dos tipos não garantem que a PUF não possa ser clonadas matematicamente (o que é basicamente o que um ataque de machine learning faria).

 
 
 
 

Algumas soluções para mitigar esse problema são, basicamente, tornar a PUF mais complexa e não linear ou inserir certos controles dentro dela. Porém, honestamente, eu me pergunto se esses métodos conseguirão enfrentar os futuros avanços que nós estamos tendo no ramo de machine learning.

Para quem ficou interessado até aqui, ataques de ML costumam ser um hot topic no ramo de cybersecurity. Abaixo coloco algumas referências que usei para construir esse artigo.

Referências


1- Roel Maes, Ingrid Verbauwhede Physically Unclonable Functions: a Study on the State of the Art and Future Research Directions (Link)

2- Challenge-Response definição

3- U. Ruhrmair, F. Sehnke, J. Solter, G. Dror, S. Devadas, and J. Schmidhu-ber, Modeling attacks on physical unclonable functions, in Proceedings of ACM Conference on Computer and Communications Security, 2010, pp. 237-249 (Link)

4-R. Yashiro, T. Machida, M. Iwamoto, and K. Sakiyama, Deep-learning-based security evaluation on authentication systems using arbiter PUF and its variants in Proceedings ofInternational Workshop on Security, 2016,pp. 267-285. ( Link)

Felipe Murad
Felipe Murad
Fundador MindSIM Telefone: (21) 98893-1193 https://www.linkedin.com/in/felipe-murad-64a537b0/

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *