Preliminares
Vivemos tempos nos quais, como sociedade, já dominamos o uso da tecnologia da informação para propagar a nossa voz, incrementar nossos negócios, aumentar nossa produtividade e nos aproximarmos como indivíduos. No entanto ainda estamos preocupados com a segurança das nossas informações nestes ambientes computacionais. Será que a Computação Confidencial será uma das inovações que nos deixará mais confiantes quanto ao uso do computador?
Mesmo antes de comentarmos sobre Computação Confidencial, devemos analisar os riscos de segurança que recaem sobre a computação convencional.
Todo computador é composto por dois tipos de dispositivos, que são: 1) Os dispositivos físicos (hardware) e; 2) Os dispositivos lógicos (software). Quando comentamos sobre segurança cibernética, na maioria das vezes, estamos preocupados com a segurança dos nossos dados, ou seja, dos dados inseridos na máquina, como também da garantia que os softwares, que atuam sobre os dados, produzam o resultado desejado de modo confiável e seguro e, não obstante, com a segurança dos dados resultantes da computação. Em linhas gerais, basicamente estamos preocupados com os aspectos de segurança relacionados ao software. São questões comuns neste tema: É seguro editar um arquivo neste serviço de computação em nuvem? É seguro deixar minhas fotos e dados pessoais na nuvem? Meu computador tem um antivírus confiável? Posso usar e confiar no serviço de banco digital a partir do meu celular?
E sobre quais softwares estamos comentando?
Basicamente, estamos falando em dois tipos de softwares, que são: 1) O software de aplicação, ou seja, o software que realiza a função desejada e final do usuário, seja ele editar um texto, usar uma planilha, usar um navegador web, entre outros; 2) Também há o software básico que é o sistema operacional. Todo computador ganha “vida” apenas quando operado por um software que interconecta todos os elementos do hardware e os gerencia, ou seja, o sistema operacional. Em termos práticos, estamos falando do Windows, do iOS para os Apple, como também os sistemas baseados em Linux.
Em quais situações devo me preocupar com a segurança?
Historicamente são duas as principais situações em que os seus dados correm risco. São elas: a) Quando os dados estão armazenados. Dizemos também que os dados estão em repouso, ou seja, quando os dados estão na memória principal do computador, ou armazenado em discos internos, ou mesmo em memórias secundárias externas como os pen drives (memórias flash); b) A outra maneira é quando os dados estão em trânsito, ou seja, quando estão sendo “transportados” entre dispositivos distintos. E como isso pode acontecer?
Consideramos como dados em “trânsito” várias situações, entre elas estão: a transferência de dados numa rede de computadores, ou seja, via wi-fi, bluetooth, via web, email, etc; a transferência entre dados em memória, ou seja, da memória principal para os discos (secundária), entre discos, entre a memória secundária interna (discos) e as memórias secundárias externas (pen drives, discos externos, CD e outros). Meus caros, até os automóveis que possuem essas chaves eletrônicas estão em perigo atualmente. Hoje os criminosos conseguem romper os códigos trocados entre as chaves digitais e seu automóvel em segundos1.
Sobre os dados em repouso, as ameaças ocorrem pela perda ou furto do equipamento, como também pela ação maliciosa de softwares que vasculham os discos a procura de informações valiosas para os criminosos. Daí a razão de ter instalado um antivírus confiável.
Criptografia novamente? Eu uso isso?
Sim. Usa! A criptografia é o principal mecanismo de proteção de dados, tanto os dados em trânsito quanto os dados armazenados, ou seja, em repouso2. A criptografia também é empregada desde a comunicação numa rede wi-fi doméstica (Wired Equivalent Privacy (WEP), Wi-Fi Protected Access (WPA), and Wi-Fi Protected Access Version 2 (WPA2)), até a comunicação por Bluetooth, no WhatsApp e no Telegram.O Facebbok e o Twitter ainda não dispõem de criptografia ponta-a-ponta3 4. Para os serviços em nuvem, tais como os serviços da Google, da Microsoft e da Amazon, todos eles garantem a segurança dos dados em trânsito e em repouso com base em serviços criptográficos.
E por que estamos comentando sobre serviços em nuvem?
Atualmente, grande parte dos serviços jurídicos, via computador, em escritórios usa a tecnologia de armazenamento em nuvem tanto para o armazenamento de dados, quanto que a realização da computação, ou seja, do processamento de dados. O próprio serviço do TJSP, a Plataforma de Justiça Digital, utiliza os serviços em nuvem da Microsoft5. Pequenos escritórios também têm seu cotidiano facilitado por pacotes similares ao Google Workspace que, como assemelhados, é uma coleção de ferramentas de computação em nuvem para aumentar produtividade e facilitar a colaboração dos usuários. Esses serviços geralmente são compostos por softwares de email, editores de texto, planilhas de cálculo, calendário colaborativo, agenda de contatos, chat e software de comunicação e teleconferência.
Ataques às CPUs
O que pouca gente sabe é que os computadores também são vulneráveis aos ataques às CPU (Central Processing Unit), ou seja, seus dados podem ser roubados ou adulterados enquanto estão sendo processados e não somente enquanto estão em repouso ou em trânsito. Talvez o caso mais antigo de ataque à CPU, ou seja, ao processador central do seu computador, tenha ocorrido em 2017 com a descoberta do software Meltdown. Na verdade, o Meltdown e o Spectre são dois softwares que exploram as vulnerabilidades dos processadores6. Embora os softwares convencionais não tenham permissão para ler dados de outros programas, um programa malicioso pode explorar o Meltdown e o Spectre para obter segredos armazenados na memória de outros programas em execução. Hoje, praticamente, não importa o dispositivo eletrônico que você usa, se é um telefone celular, se são os dispositivos eletrônicos de seu automóvel, um relógio digital, um tablet, um computador doméstico, ou mesmo um computador em nuvem, todos esses dispositivos têm um processador e todos estão correndo o risco de serem violados7. Praticamente toda semana surgem listas atualizadas sobre descobertas ou atualizações contra os riscos de ataques em CPUs8. Sabe aquele dinheirinho “suado” que você não usou e que, ao final do mês, aplicou numa criptomoeda? Sim, eu lamento, mas até ela também está em risco. Hoje, o segundo lugar na lista dos softwares que mais sofrem abusos é o chamado XMRig9. XMRig é um software de código aberto para CPU usado para minerar a criptomoeda Monero10. Os criminosos geralmente abusam desse software de código aberto, integrando-o a um malware para realizar mineração ilegal nos dispositivos das vítimas. Hoje, no mundo, temos mais de RS12bi em moneros a um custo de mais de R$860 cada criptomoeda.
Enfim, o que é a Computação Confidencial?
A computação confidencial é uma tecnologia emergente de segurança cibernética que executa tarefas computacionais que garantem a segurança das CPUs enquanto estão em uso. Essencialmente, como muitas organizações usam espaços e processamento por meio de serviços em nuvem, diversas empresas podem ocupar as mesmas instalações físicas ao mesmo tempo. Em tese, pode ocorrer que a presença de softwares distintos de duas organizações que processam os dados no mesmo ambiente possam ser usados para corromper ou espionar os dados do concorrente. Fundamentalmente, a computação confidencial torna possível a coexistência, e até a colaboração, de duas organizações num mesmo ambiente computacional de modo a combinar, analisar e até gerar informações novas a partir de seus dados ao mesmo tempo que mantêm não apenas os dados seguros, mas também os códigos (os algoritmos) “invisíveis” pelo sistema computacional e até pelos operadores humanos.
Numa arquitetura de computação confidencial, todos os cálculos, os processamentos, são realizados em ambiente criptografado baseado em hardware na CPU. Estes são conhecidos como ambiente de execução confiável (TEE, do inglês Trusted Execution Environment). Dados e código não podem ser visualizados, adicionados, removidos ou modificados quando estiverem dentro de um TEE. A Computação Confidencial permite que as organizações isolem os dados em uso para que não sejam expostos à infraestrutura que os processa. Essa abordagem de proteção de segurança protege dados e códigos enquanto eles estão sendo usados por aplicativos, permitindo que as organizações tenham mais confiança na execução de aplicativos confidenciais na nuvem.
Em quais casos podemos usar a Computação Confidencial?
Como dissemos, no modelo atual de computação chamado SaaS (Software as a Service), ou seja, de software como serviço em que o usuário paga uma taxa para usar serviços online (email, editores, planilhas, chat, entre outros) as grandes empresas como Google e Microsoft já dispõem desta tecnologia. Em outros modelos, os quais os softwares são proprietários, muitas vezes elaborados sob demanda, a migração de todo o processamento para ambientes em nuvem permite aproveitar o serviço de computação confidencial disponível pelos provedores. Neste caso, irá ocorrer o isolamento dos processos da empresa contratante da infraestrutura de serviços da contratada, além de ter seu produto protegido contra eventuais administradores mal-intencionados do software. Além deste desacoplamento entre serviço e infraestrutura, a computação confidencial previne o desvio de dados ao mesmo tempo que permite uma colaboração segura entre aplicações.11
Por fim...
Agora é só esperar para ver essa realidade da Computação Confidencial invadir também nossos computadores e demais dispositivos computacionais domésticos. Acredito eu que depois de ler este artigo e alguém te disser que tem ou conhece um sistema computacional completamente imune à violações você vai, ao menos, pedir mais detalhes antes mesmo de desacreditar amigavelmente.
______________
1. What You Should Know About the Honda Key Fob Vulnerability. Disponível aqui. Última visita em 8 de novembro de 2022.
2. Criptografia homomórfica: essa técnica resolve o problema da segurança dos dados pessoais. Disponível aqui. Última visita em 9 de novembro de 2022.
3. Facebook will begin testing end-to-end encryption as default on Messenger app. Disponível aqui. Última visita em 8 de novembro de 2022.
4. Elon Musk wants end-to-end encryption for Twitter DMs. It may not be that simple. Disponível aqui. Última visita em 8 de novembro de 2022.
5. TJSP anuncia desenvolvimento da nova Plataforma de Justiça Digital. Disponível aqui. Última visita em 8 de novembro de 2022.
6. Meltdown and Spectre: Vulnerabilities in modern computers leak passwords and sensitive data. Disponível aqui. Última visita em 8 de novembro de 2022.
7. Security vulnerabilities found in Intel and AMD processors. Disponível aqui. Última visita em 8 de novembro de 2022.
8. Microsoft fixes four zero-days, 58 other flaws on Patch Tuesday. Disponível aqui. Última visita em 8 de novembro de 2022.
9. Check Point Press Releases: September 2022’s Most Wanted Malware: Formbook on Top While Vidar ‘Zooms’ Seven Places. Disponível aqui. Última visita em 8 de novembro de 2022.
10. CoinMarketCap. Disponível aqui. Última visita em 8 de novembro de 2022.
11. Dever de notificação dos incidentes de segurança com Dados Pessoais – Parte 1. Disponível aqui. Última visita em 9 de novembro de 2022.
__________
Evandro Eduardo Seron Ruiz é professor Associado do Departamento de Computação e Matemática, FFCLRP - USP, onde é docente em dedicação exclusiva. Atua também como orientador no Programa de Pós-graduação em Computação Aplicada do DCM-USP. Bacharel em Ciências de Computação pela USP, mestre pela Faculdade de Engenharia Elétrica da UNICAMP, Ph.D. em Electronic Engineering pela University of Kent at Canterbury, Grã-Bretanha, professor Livre-docente pela USP com estágios sabáticos na Columbia University, NYC e no Instituto de Estudos Avançados da USP (IEA-USP). Coordenador do Grupo de Pesquisa “Tech Law” do IEA-USP. Membro fundador do Instituto Avançado de Proteção de Dados - IAPD. (www.iapd.org.br )