Uma das apresentações mais incomuns na conferência DEF CON 29, realizada no início de agosto, abordou vulnerabilidades de equipamentos agrícolas encontradas por um pesquisador australiano que atende pelo pseudônimo de Sick Codes.
Vulnerabilidades que afetam as principais fabricantes John Deere e Case IH não foram encontradas em tratores e colheitadeiras, mas em serviços Web mais familiares aos pesquisadores. Por meio deles, foi possível obter controle direto sobre equipamentos de várias toneladas e muito caros, o que representa um perigo especial.
Maquinário agrícola atual
Para quem não está familiarizado com a agricultura atual, o preço das máquinas parece astronômico. Em sua apresentação, Sick Codes explicou por que tratores e colheitadeiras são tão caros. Os melhores exemplos de maquinário agrícola moderno são computadorizados e automatizados em um grau bastante elevado. Isso é ilustrado pelo exemplo da colheitadeira de forragem John Deere 9000 Series, anunciada da seguinte forma:
O motor V12 de 24 litros e a etiqueta de preço de seis dígitos não são nem mesmo o principal – este comercial em particular enumera as capacidades técnicas da máquina: sistema de orientação espacial, coleta automática de linha e sensores de localização e sincronização com o caminhão que recebe o grão cortado. A esses recursos, o Sick Codes adiciona controle remoto e a possibilidade de conectar de forma automática ao suporte técnico diretamente à colheitadeira para solução de problemas. É aqui que ele faz uma afirmação ousada: a agricultura moderna é totalmente dependente da Internet.
Modelo de ameaça de maquinário agrícola
Não é novidade que o maquinário agrícola de hoje em dia está repleto de tecnologia moderna, desde sistemas convencionais de posicionamento e comunicação GPS e 3G / 4G / LTE até métodos de navegação inercial bastante exóticos para determinar a localização no solo com precisão centimétrica. O modelo de ameaça concebido por Sick Codes é baseado em conceitos de TI e soa bastante ameaçador quando aplicado à realidade.
Qual é a aparência de um ataque DoS em um campo? Suponhamos que possamos alterar algumas variáveis no software para pulverizar fertilizante no solo e aumentar a dose várias vezes. Poderíamos facilmente tornar o campo impróprio para a agricultura por anos, ou mesmo décadas, no futuro.
Ou que tal uma variante teórica mais simples: assumimos o controle de uma colheitadeira e a usamos para danificar, digamos, uma linha de transmissão. Ou hackeamos a própria colheitadeira, interrompendo o processo de colheita, causando enormes prejuízos para o agricultor. Em escala nacional, esses “experimentos” podem, em última instância, ameaçar a segurança alimentar. O equipamento agrícola em rede é, portanto, uma infraestrutura genuinamente crítica.
De acordo com Sick Codes, a proteção dos fornecedores dessa mesma tecnologia e infraestrutura deixa muito a desejar. Aqui está o que ele e sua equipe com ideias semelhantes conseguiram encontrar.
Força bruta para encontrar nome de usuário, codificação de senhas e assim por diante
Algumas das vulnerabilidades da infraestrutura de John Deer apresentadas na conferência também são descritas em um artigo no site do pesquisador. Sick Codes começou fazendo sua inscrição em uma conta legítima de desenvolvedor no site da empresa (embora, conforme ele escreve, mais tarde esqueceu o nome que usou). Ao tentar recuperá-lo, encontrou algo inesperado: a API fazia pesquisas de nome de usuário toda vez que digitava um caractere. Uma verificação rápida revelou que, sim, os nomes de usuários já no sistema podem ser revelados por força bruta.
O limite tradicional do número de solicitações de um endereço IP em tais sistemas não foi definido. Em apenas alguns minutos, Sick Codes enviou 1.000 consultas, verificando os nomes de usuário que correspondiam aos nomes das empresas da Fortune 1000 – obteve 192 ocorrências.
A próxima vulnerabilidade foi descoberta em um serviço interno que permite aos clientes manter registros dos equipamentos adquiridos. Como Sick Codes descobriu, qualquer pessoa com acesso à ferramenta pode visualizar informações sobre qualquer trator ou colheitadeira no banco de dados. Os direitos de acesso aos dados não são verificados. Além disso, as informações são bastante sensíveis: proprietário do veículo, localização, etc.
Na DEF CON 29, Sick Codes revelou um pouco mais do que escreveu em seu site. Por exemplo, ele também conseguiu acessar o serviço de gerenciamento de equipamentos de demonstração, com histórico completo dos testes e dados pessoais de funcionários da empresa. Por último, seus colegas detectaram uma vulnerabilidade no serviço corporativo Pega Chat Access Group, na forma de uma senha de administrador codificada. Com isso, foi possível obter as chaves de acesso à conta do cliente da John Deere. É verdade que o Sick Codes não disse exatamente o que essa chave acessa, mas parece ser outro conjunto de serviços internos.
Para um pouco de equilíbrio, o Sick Codes também apresentou algumas vulnerabilidades que afetam o concorrente europeu da John Deere, Case IH. Lá, ele foi capaz de acessar um servidor Java Melody desprotegido monitorando alguns dos serviços do fabricante, o que forneceu informações detalhadas sobre os usuários e apresentou a possibilidade teórica de sequestro de qualquer conta.
Contatando as empresas
Para fins de justiça, devemos observar que o Sick Codes não estabelece uma ligação direta entre as ameaças mencionadas acima e as vulnerabilidades que detectou. Talvez para não colocar em perigo os agricultores comuns. Ou talvez não tenha encontrado esse link. Mas, com base nas falhas de segurança triviais apresentadas, ele conclui que a cultura de segurança nessas empresas é baixa, o que nos permite supor que o controle direto sobre as colheitadeiras seja protegido de forma semelhante. Mas isso continua sendo uma suposição.
Todas as vulnerabilidades nos serviços da John Deere foram corrigidas, mas com algumas ressalvas. O fabricante não tinha nenhum canal de contato especial para relatar vulnerabilidades. Sick Codes teve uma breve conversa com o gerente de mídia social da John Deere. Então, solicitaram o relato das vulnerabilidades por meio do programa caça a bug no serviço HackerOne – no entanto, esse serviço não foi encontrado. Um programa de recompensas para relatar vulnerabilidades foi finalmente introduzido, mas os participantes são obrigados a assinar um acordo de não divulgação.
Os problemas com o site da empresa foram corrigidos sem uma palavra de resposta às mensagens dos pesquisadores. Ou melhor, houve uma resposta, mas foi estranha. Depois que as vulnerabilidades viraram notícia em abril deste ano, uma mensagem criptografada foi postada na conta oficial do Twitter da empresa: “Previsão do tempo: chuva de abobrinha”. Além disso, foi anunciada uma vaga de engenheiro de segurança com a data de início escrita em letras maiúsculas: COMEÇO IMEDIATO.
Como fazer os consertos e as manutenções?
Em 2017, a revista Vice escreveu sobre os problemas enfrentados pelos proprietários de equipamentos agrícolas da John Deere. Numerosos bloqueios de software e hardware impedem os próprios usuários de consertar o equipamento. Tecnicamente, cada peça de reposição deve ser “registrada” no computador de controle da colheitadeira ou no banco de dados do fornecedor. Mas os revendedores oficiais são lentos e caros. Assim, os fazendeiros geralmente optam por firmware sem receita que lhes permite desvincular a máquina de seu fabricante.
Esse é um bom exemplo do debate sobre o direito de consertar: acontece que os clientes da empresa não são os donos do que compram. Eles efetivamente alugam o equipamento (mas pelo preço integral) e têm que usar os serviços de manutenção do fabricante, mesmo que não queiram. O fornecedor frequentemente cita a segurança como o motivo, especificamente a necessidade de evitar que uma unidade de controle não autorizada, por exemplo, assuma o controle de uma máquina deste tipo. Mas o Sick Codes pergunta com razão: que tipo de segurança existe, com base nestas vulnerabilidades gritantes em seu software?
No final do relatório, Sick Codes demonstrou o módulo de controle da John Deere com chip de celular Qualcomm e revelou uma longa lista de vulnerabilidades críticas recentemente mapeadas. Este, é claro, é um argumento fraco: brechas de segurança ainda precisam ser exploradas e o próprio fato de bugs terem sido encontrados diz pouco.
Não é o número de vulnerabilidades que importa, e sim a capacidade de detectá-las e corrigi-las rapidamente. Sick Codes tenta convencer o público de que as máquinas agrícolas são tão mal protegidas quanto os equipamentos médicos. Por mais que isso seja verdade, o problema ainda deve ser resolvido, abrindo o diálogo com os fabricantes. Só pode ser do interesse deste último atender aos avisos de hackers éticos, antes que os cibercriminosos entrem na briga.