As suas passwords estão em risco? Veja como proteger as contas online após as falhas no PHP
Um incidente envolvendo o PHP, linguagem informática usada, em larga escala, no desenvolvimento de apps e sites, mostrou como vulnerabilidades podem ser exploradas de modo malicioso e minar a confiança em sistemas partilhados por milhares de organizações. Saiba o que fazer para proteger-se.
Neste artigo
- Que lições podem ser retiradas do incidente com o PHP?
- Porque as falhas no PHP podem afetar tantos serviços?
- Como foi possível descobrir vulnerabilidades ocultas por anos?
- Que sistemas foram afetados pelas falhas do PHP?
- Que riscos traz este incidente aos consumidores?
- O que podem os consumidores fazer para se protegerem?
Acesso indevido a informação e dados privados, alteração de conteúdos e comprometimento de apps são possíveis consequências de duas falhas identificadas recentemente no PHP. Linguagem informática muito popular em todo o mundo, o PHP é sobretudo usado no desenvolvimento de apps e sites.
Estas vulnerabilidades podem permitir a um atacante executar instruções à distância, em qualquer sistema informático que recorra ao PHP, sem precisar de uma conta legítima.
Dada a popularidade do PHP, o caso ganhou contornos de emergência internacional. Entidades públicas, empresas, hospitais e organizações de muitos países, incluindo Portugal, suspenderam temporariamente alguns serviços digitais, para reduzirem o risco de ataques.
O incidente trouxe também a inteligência artificial para o centro da discussão, pois foi com a ajuda desta tecnologia que as falhas, que terão permanecido ocultas durante mais de dez anos, acabaram por ser identificadas e corrigidas.
A DECO PROteste analisou o caso, identificou impactos para os consumidores e reuniu conselhos para estes mitigarem os riscos.
Voltar ao topoQue lições podem ser retiradas do incidente com o PHP?
Este incidente foi particularmente impactante, devido à combinação de quatro fatores.
- A dimensão da exposição. O PHP é usado em muitos sites em todo o mundo. É ainda uma componente fundamental em várias plataformas de criação de sites, como o WordPress e o Drupal.
- A natureza das vulnerabilidades. Segundo informação divulgada, as falhas podem permitir a execução remota de código sem autenticação.
- A potencial rapidez da solução. Ferramentas de inteligência artificial podem ajudar a analisar código, identificar condições de exploração de vulnerabilidades e desenvolver métodos para corrigir o problema.
- A dificuldade da resposta. Disponibilizada a correção, nem todos os responsáveis por sites conseguiram instalá-la e validá-la de imediato. Daí que algumas organizações tenham optado por suspender temporariamente os seus sites.
Assim se vê que não se tratou apenas de um problema técnico de programação, mas de um teste à capacidade de as organizações públicas e privadas gerirem riscos digitais, atualizarem infraestruturas críticas e garantirem a continuidade de serviços de que os cidadãos dependem.
Voltar ao topoPorque as falhas no PHP podem afetar tantos serviços?
O PHP é uma linguagem de programação de código aberto, usada sobretudo no desenvolvimento de apps e sites.
Quando um consumidor consulta uma área de cliente, pesquisa um produto numa loja online ou acede a um portal público, o servidor pode recorrer a código PHP para apresentar informação personalizada, consultar e atualizar bases de dados, validar formulários e pedidos ou executar operações associadas a compras, pagamentos ou autenticação.
Ao surgir uma vulnerabilidade num componente que é partilhado por milhares de sites e apps, em milhares de organizações, o impacto pode ser sistémico.
Assim, vulnerabilidades em componentes partilhados exigem respostas coordenadas entre os responsáveis pelo software, os fornecedores de alojamento, os programadores dos sites e apps e as entidades que operam os serviços.
Voltar ao topoComo foi possível descobrir vulnerabilidades ocultas por anos?
O desenvolvimento de software envolve questões importantes, como compatibilidade com sistemas antigos, recursos limitados e dificuldades em testar a ocorrência de certos erros. A equipa responsável pelo PHP reconheceu dificuldades estruturais e limitações de recursos para dar resposta a vulnerabilidades.
Tradicionalmente, a descoberta de vulnerabilidades exige conhecimentos especializados sobre programação, gestão de memória, análise de código e técnicas de exploração de falhas.
Um investigador pode identificar uma operação suspeita e concluir que existe um erro. Mas demonstrar que esse erro permite executar código remotamente, em vez de apenas provocar um bloqueio, tende a exigir muito mais trabalho.
Hoje, os modelos avançados de inteligência artificial podem ajudar.
- Analisam código. Identificam padrões suspeitos, referências a memória libertada, condições de erro e caminhos de execução difíceis de detetar numa revisão convencional.
- Constroem cadeias de exploração. Permitem relacionar vários defeitos que, individualmente, parecem pouco relevantes, mas que, em conjunto, podem facilitar um ataque mais grave.
- Experimentam e validam. Contribuem para a criação de testes, a reprodução de erros e a averiguação de uma hipótese de exploração em ambientes controlados.
- Testam correções. Verificam se as alterações eliminam a causa da vulnerabilidade e se não introduzem regressões ou novas falhas.
Mas tais capacidades não tornam a inteligência artificial infalível nem tão-pouco dispensam a intervenção de especialistas. Por dois motivos.
- A identificação de um padrão suspeito não equivale a demonstrar uma vulnerabilidade explorável.
- Uma correção aparentemente eficaz tem de ser validada em condições adequadas.
Neste caso, a combinação de análise automatizada, investigação humana e testes permitiu ultrapassar dificuldades técnicas significativas.
Voltar ao topoQue sistemas foram afetados pelas falhas do PHP?
Estima-se que sejam cerca de 490 mil os domínios .pt ativos e que mais de 300 mil usem o PHP.
Mas não é fácil conhecer o verdadeiro impacto. O simples uso do PHP por um serviço não permite concluir que se encontrava vulnerável. Há mais fatores envolvidos, como a versão do PHP, a configuração do servidor e, claro, a execução de atualizações de segurança.
Neste caso, não há plugin de segurança, atualização do WordPress, antivírus ou autenticação forte que resolva o problema. Só atualizar o próprio PHP, no servidor, o permite. Mas, num alojamento partilhado, solução seguida pela maioria dos sites portugueses, apenas o fornecedor o pode fazer. O dono do site não tem essa possibilidade.
Como tal, também em Portugal várias entidades públicas desligaram temporariamente sistemas para procederem às atualizações de segurança.
No nosso país, o levantamento de problemas identificou versões antigas do PHP, sem suporte, em dezenas de entidades públicas, incluindo câmaras municipais e hospitais.
Porém, os dados divulgados não permitem concluir que essas entidades tenham sido atacadas nem dizer, com certeza, quais delas se mantinham vulneráveis após a correção ter sido disponibilizada.
Voltar ao topoQue riscos traz este incidente aos consumidores?
Há essencialmente três tipos de riscos.
1. Exposição de dados pessoais e credenciais
Um servidor comprometido pode permitir o uso malicioso de informação que os consumidores confiaram a uma organização. Dependendo das permissões e da arquitetura do sistema, podem estar em causa nomes, endereços, contactos, dados de conta, tokens de sessão ou outras informações armazenadas ou acessíveis a partir do servidor.
Não significa, porém, que todas as instalações vulneráveis contenham esses dados na memória ou que tenha ocorrido uma fuga em todos os sistemas afetados.
Ainda assim, é grave. Uma eventual fuga de dados pode até ter consequências que vão para além do incidente inicial: campanhas de phishing personalizadas, tentativas de acesso a outras contas e fraudes baseadas na informação recolhida.
2. Indisponibilidade de serviços essenciais
Um site pode ser o principal canal de acesso a serviços públicos, consultas, documentos, pagamentos ou apoio ao cliente. Mesmo sem roubo de informação, a suspensão prolongada de um serviço pode impedir o consumidor de exercer direitos, cumprir prazos ou realizar operações importantes.
3. Fraude e perda de confiança
Se um atacante conseguir alterar conteúdos ou controlar parte de um site, pode apresentar informações falsas, distribuir software malicioso ou encaminhar utilizadores para páginas fraudulentas.
O problema é ainda mais grave quando o site pertence a uma entidade em que os consumidores confiam. A familiaridade com uma marca ou instituição pode levar o utilizador a baixar a guarda e a fornecer informação que, normalmente, não partilharia.
Voltar ao topoO que podem os consumidores fazer para se protegerem?
As autoridades europeias recomendam aos consumidores que:
- não cliquem em links recebidos por e-mail ou SMS que aleguem ser necessária uma intervenção urgente devido a este incidente;
- não indiquem palavras-passe, códigos de autenticação ou dados bancários em páginas cuja autenticidade não tenham confirmado;
- recorram a palavras-passe únicas e autenticação multifator, sempre que disponível;
- prestem atenção a avisos oficiais de serviços que usam regularmente, sobretudo se tiverem sido temporariamente suspensos;
- sigam as instruções para proteger as contas afetadas, se determinada entidade confirmar que os seus sistemas foram comprometidos.
|
O conteúdo deste artigo pode ser reproduzido para fins não-comerciais com o consentimento expresso da DECO PROteste, com indicação da fonte e ligação para esta página. Ver Termos e Condições. |
