Falha em portal do Estado permitia roubar dados de milhares de portugueses

7-05-2022

Uma vulnerabilidade no portal SIGA, uma plataforma para a gestão de atendimento em diferentes serviços do Estado, permitia aceder ao nome completo, número de identificação de Segurança Social (NISS), número de identificação fiscal (NIF), endereço de e-mail, telefone e pedidos de agendamento feitos por milhares de portugueses através da plataforma.

O problema foi detetado a 23 de março por Diogo Cardoso, especialista em consultoria informática, e resolvido dois dias depois. À Exame Informática, o Instituto de Informática, responsável pelo desenvolvimento do portal SIGA, diz não ter evidências de que esta vulnerabilidade tenha sido ativamente explorada por piratas informáticos, mas admite que não sabe durante quanto tempo esteve vulnerável. “Não foi possível determinar o momento a partir do qual a vulnerabilidade se manifestou”.

A falha em causa permitia alterar a identificação única (ID) atribuída aos agendamentos do portal SIGA, o que possibilitava a quem tivesse conhecimento da falha aceder aos dados pessoais e agendamentos de outras pessoas. Além do acesso e potencial roubo de dados pessoais – que no pior dos cenários pode levar a episódios de roubo de identidade –, também era possível remarcar ou desmarcar os agendamentos que tinham registo na plataforma.

Segundo o Instituto de Informática, tudo aponta para que, apesar da falha, nenhum dado tenha sido roubado. “Seguindo os procedimentos determinados no âmbito do nosso Sistema Integrado de Segurança da Informação, foi aberto um incidente de segurança e, em resultado do que foi averiguado, não temos evidências de que esta vulnerabilidade tenha sido ativamente explorada por alguém com fins maliciosos”. Em março foram feitas, em média, 3.900 marcações por dia no portal SIGA.

Imagem do portal SIGA

Além da gravidade do que era possível fazer com a substituição do ID, a forma como era possível explorar o problema “era muito fácil”, segundo Diogo Cardoso. “Qualquer pessoa conseguiria replicar esta vulnerabilidade – até num iPad. Não precisas de [saber] qualquer linguagem de programação”, conta. Isto porque através da funcionalidade Inspecionar Elemento de um navegador de internet, que dá acesso ao código-fonte do site, era possível trocar o ID das marcações para aceder aos dados de outras pessoas.

A vulnerabilidade em si era uma falha no sistema de filtragem de privilégios nos pedidos de informação feitos à base de dados por parte da infraestrutura (backend) do portal SIGA. De uma forma mais simplificada, a plataforma não limitava o utilizador às suas próprias marcações e permitia assim que qualquer utilizador, desde que autenticado, pudesse aceder às informações de outras marcações e respetivos dados associados.

“A questão é que o backend não fazia esta verificação”, acrescenta Diogo Cardoso. O consultor informático diz ainda que os ID são sequenciais – isto é, gerados numa ordem lógica – e não gerados de forma aleatória. Alguém que soubesse da falha e tivesse um conhecimento mais avançado, poderia criar uma ferramenta automática (script) para descarregar, sem esforço, os dados de milhares de portugueses.

Sobre a causa que motivou esta falha, o Instituto de Informática diz apenas que “não foi detetada aquando da realização da bateria de testes de segurança que executamos ao portal SIGA”.

A dor de barriga que se transformou numa dor de cabeça

A descoberta desta vulnerabilidade começa de forma inusitada. Depois de um jantar em casa dos sogros, Diogo Cardoso começou a sentir dores de estômago e passou mal durante dois dias. Decidiu ir ao médico, que lhe diagnosticou uma apendicite. “Vais ter que ser operado agora”, ouviu Diogo da boca do médico. Nesse mesmo dia, acabaria por ser operado. Devido ao problema de saúde, teve de tratar da baixa médica e recebeu uma mensagem no telemóvel sobre uma marcação, através do portal SIGA, para uma verificação de incapacidade temporária.

Diogo Cardoso, que tem experiência em programação, acedeu ao portal SIGA para se inteirar da marcação que lhe tinha sido feita e a curiosidade levou-o a querer saber mais sobre a implementação da plataforma. “Muitas das vezes para facilitar, os programadores acabam por acelerar o processo [de desenvolvimento] e não fazem uma verificação, assumindo que 99% dos utilizadores não vão ter capacidade de aceder a mais informação [além da visível]. O problema são os outros 1% que podem ser curiosos como eu e acabam por descobrir uma vulnerabilidade”, explica.

Diogo, 30 anos de idade, percebeu que o ID da sua marcação não estava associado a apenas uma entidade das mais de dez que fazem utilização do portal SIGA para agendamento de marcações de serviços públicos – e que inclui serviços estatais como a Segurança Social e a Autoridade Tributária.

“Mudando o ID, conseguia ter acesso a outras entidades e a outras informações de outras pessoas, outras marcações em que a informação era tão completa, como o nome completo, o número de identificação de Segurança Social, o número de telefone, o contacto de e-mail e qual era a nota que a pessoa tinha colocado quando fez essa marcação”, exemplifica. Quando experimentou mudar o ID da marcação, Diogo acabou por ir parar a uma marcação para renovação do cartão europeu de saúde de uma outra pessoa. Aqui percebeu definitivamente que havia um problema grave no portal SIGA.

Diogo descobriu a vulnerabilidade no dia 22 de março e documentou a sua descoberta. No dia 24 de março, o consultor enviou um e-mail ao Instituto de Informática a reportar a falha. Não recebeu resposta e no dia seguinte, 25 de março, decide reportar a vulnerabilidade ao Centro Nacional de Cibersegurança (CNCS). “Quanto mais tempo [a vulnerabilidade] estivesse exposta, pior poderia ser”, comenta.

Passadas quatro horas, o CNCS respondeu a dizer que já tinha notificado o Instituto de Informática sobre o problema. A primeira resposta que recebeu do instituto afeto à Segurança Social só aconteceria, no entanto, a 5 de abril, a agradecer o alerta. “Eles não disseram se foi corrigido ou não”, refere. Por esse motivo, Diogo voltou a contactar o Instituto de Informática, no mesmo dia, para confirmar se o problema tinha sido resolvido. Recebeu uma resposta a confirmar que no dia 25 de março a falha tinha sido sanada. Nas respostas que enviou à Exame Informática por e-mail, o Instituto de Informática também sublinha que foi no dia 25 de março que o problema ficou resolvido.

Na sua resposta, o Instituto de Informática destaca ainda que “para além da revisão e atualização da bateria de testes de segurança, foram definidos e implementados testes de segurança complementares ao SIGA, cujo resultado da sua execução não evidenciou qualquer outra vulnerabilidade”.

(Exameinformatica)

Desenvolvido por: Suporte Informatica