
Demonstra uma vulnerabilidade de enumeração não autenticada em um endpoint público de consulta de certificados, expondo dados pessoais como CPF e RG. Inclui PoC usando Google dorks e LinkedIn para coletar identificadores, com detalhes de impacto e mitigação.
Foi identificado um endpoint público que permite a consulta de certificados por meio de um identificador previsível (código do certificado), sem qualquer mecanismo de autenticação ou autorização.
Ao enumerar esse identificador, um atacante pode acessar dados pessoais de terceiros, incluindo nome completo, CPF, RG, data de nascimento e local de nascimento.
Observa-se também que, mesmo quando os titulares dos certificados optam por compartilhar publicamente seus diplomas com dados pessoais parcialmente ofuscados (por exemplo, em redes profissionais ou outras plataformas), o identificador do certificado frequentemente permanece visível. A partir desse identificador, é possível consultar diretamente o endpoint e obter os dados completos, contornando totalmente o mecanismo de ofuscação implementado na interface.
https://www.fiap.com.br/consultadocumento
Identificador de 8 caracteres
Para fins de prova de conceito (PoC), foram realizadas buscas utilizando técnicas de Google dorks para localizar imagens de certificados disponíveis publicamente. Além disso, foram identificados exemplos em perfis do LinkedIn onde os titulares compartilharam seus certificados.
A partir dessas fontes públicas, foi possível extrair os identificadores dos certificados visíveis e, com base neles, montar uma lista de códigos válidos. Utilizando esses identificadores no endpoint vulnerável, foi possível acessar os dados completos associados a cada certificado, demonstrando a viabilidade da exploração em escala.
Ressalta-se que a técnica empregada utilizou exclusivamente informações públicas e reconhecimento passivo, demonstrando que um atacante não precisa de acesso privilegiado para explorar a vulnerabilidade.
Veja o exemplo abaixo.
A vulnerabilidade identificada permite acesso não autorizado a dados pessoais altamente sensíveis, incluindo CPF, RG, nome completo, data de nascimento e local de nascimento, sem exigir qualquer autenticação. A possibilidade de enumerar o identificador do certificado, aliada à coleta desses identificadores a partir de fontes públicas, viabiliza a extração de informações em larga escala, ampliando significativamente a superfície de exposição.
Esse cenário permite o uso indevido dos dados para fraudes, roubo de identidade e ataques de engenharia social altamente direcionados, uma vez que as informações expostas são amplamente utilizadas como mecanismo de validação no contexto brasileiro. Além disso, a falha pode resultar em impactos regulatórios significativos, especialmente no contexto da Lei Geral de Proteção de Dados (LGPD), considerando a exposição de dados pessoais sem base legal adequada ou controle de acesso.
Por fim, destaca-se que a exploração não exige nenhum nível de privilégio ou autenticação e pode ser realizada por agentes externos de forma automatizada, o que aumenta significativamente a criticidade da vulnerabilidade.
Para mitigar o risco de enumeração, recomenda-se que o identificador do certificado seja substituído por um valor imprevisível, como um token gerado de forma segura (por exemplo, baseado em hash como MD5 ou, preferencialmente, algoritmos mais robustos com componente aleatório), garantindo que não seja possível inferir ou enumerar outros certificados válidos.
Além disso, recomenda-se que documentos públicos apresentem dados sensíveis devidamente ofuscados, e que essa mesma lógica seja aplicada ao backend, impedindo que a API retorne informações completas. Dessa forma, mesmo que o link seja compartilhado publicamente, o acesso será limitado a uma versão segura do certificado, preservando a privacidade do titular.
Por fim, é importante implementar mecanismos complementares de proteção, como limitação de taxa (rate limiting), monitoramento de acessos suspeitos e, quando aplicável, o uso de links de verificação com validade temporária, reduzindo ainda mais o risco de exploração automatizada.