O que é Hardcoding e por que prática “preguiçosa” te coloca em risco?

Tecnologia

Imagine que você está construindo uma casa — nesse caso, um aplicativo —, e, é claro, precisa de chaves para abrir a porta do lugar onde guarda as economias (o servidor onde fica o banco de dados). O certo seria guardar a chave em um cofre ou lugar seguro, não é? O hardcoding equivale a um pedreiro escrever a senha do alarme na parede da sala e deixar a chave embaixo do tapete de entrada para facilitar o seu trabalho.

Como resultado, qualquer pessoa que tiver acesso à casa consegue facilmente olhar embaixo do tapete, achar a chave, abrir a porta e digitar a senha do alarme, que está escrita na parede e fazer o que quiser no imóvel. Nesta matéria, vamos destrinchar como o hardcoding funciona na prática, no âmbito da programação, e porque é preocupante.

Como o hacker “vê” o código

Usuários leigos podem achar que um aplicativo é uma caixa preta blindada, mas, na verdade, o arquivo que compõe cada um (.apk, no Android) nada mais é do que um elemento compactado, como um .zip ou .rar. Não é necessária nenhuma sacada de gênio: tudo que um hacker precisa fazer para acessar o código é descompactar o .apk com qualquer ferramenta gratuita, numa engenharia reversa simples.


Entre no Canal do WhatsApp do Canaltech e fique por dentro das últimas notícias sobre tecnologia, lançamentos, dicas e tutoriais incríveis.

Uma engenharia reversa no arquivo compactado do aplicativo já revela como ele foi construído — se a chave de acesso do servidor estiver lá sem codificação, os hackers têm a vida ganha (Imagem: Reprodução/Pexels/luis gomes)
Uma engenharia reversa no arquivo compactado do aplicativo já revela como ele foi construído — se a chave de acesso do servidor estiver lá sem codificação, os hackers têm a vida ganha (Imagem: Reprodução/Pexels/luis gomes)

Se o desenvolvedor fez hardcoding, a senha da AWS ou Google Cloud necessária para acessar o servidor estará lá, escrita em texto bruto, fácil de ler, como num bloco de notas. Isso pode ser resultado de várias coisas, desde simples preguiça a inexperiência ou pressa.

Na corrida do ouro digital, impulsionada pela inteligência artificial, startups querem lançar aplicativos o quanto antes, facilitando deslizes como esse. Até o “arrumar depois” chegar, os hackers já invadiram.

O que é uma Chave de API e por que ela vale dinheiro?

Pense numa chave de API como um “cartão de crédito corporativo sem senha”. Se um hacker obtiver acesso à chave no código do aplicativo, consegue acessar os servidores da empresa para, por exemplo, minerar criptomoedas, enviar spam aos usuários do app ou roubar dados dos clientes: a conta disso tudo chega, no final, para o dono do aplicativo.

Como se proteger de incidentes como usuário comum?

O problema do hardcoding é gerado internamente, sendo responsabilidade dos desenvolvedores, mas é possível, como usuário, tomar algumas medidas para evitar que esse tipo de brecha atinja seu celular.

Prefira sempre baixar aplicativos bem avaliados e de empresas conhecidas, evitando apps novos e de desenvolvedores iniciantes (Imagem: André Magalhães/Canaltech)
Prefira sempre baixar aplicativos bem avaliados e de empresas conhecidas, evitando apps novos e de desenvolvedores iniciantes (Imagem: André Magalhães/Canaltech)

Para começar, evite baixar aplicativos como “ChatAI Pro” e demais nomes genéricos envolvendo inteligência artificial vindos de desenvolvedores desconhecidos que acabaram de surgir na loja. Preste atenção nas avaliações do app, verifique há quanto tempo ele opera e dê preferência aos verificados ou que estão em destaque.

Também escolha aplicativos de empresas que já têm histórico de segurança e em quem você pode confiar. As permissões também são elementos importantes para levar em conta: se um app de lanterna ou de IA simples pede acesso aos contatos, arquivos ou ferramentas de acessibilidade, desconfie.

Aplicativos mal-feitos ou fraudulentos também costumam exagerar nas permissões, então trate de desinstalar ou revisar essa necessidade. Todo cuidado, atualmente, é pouco.

Leia também:

Leia a matéria no Canaltech.