2 pontos por GN⁺ 2024-03-08 | 1 comentários | Compartilhar no WhatsApp

Links de segurança privados sem acesso público, será mesmo?

  • Ferramentas populares de análise de malware/URL como urlscan.io, Hybrid Analysis e o scanner de URL do Cloudflare Radar armazenam grandes volumes de links para coleta e compartilhamento de informações.
  • Não é amplamente conhecido que esses serviços estejam armazenando links privados e sensíveis que foram enviados por engano por usuários ou escaneados como dados públicos por scanners e extensões mal configurados.

Que tipo de links são esses?

  • Arquivos compartilhados usando ferramentas de armazenamento em nuvem (Dropbox, iCloud, Sync, Egnyte, Ionos Hidrive, AWS S3 etc.).
  • Ferramentas de NAS conectadas à nuvem (Western Digital Mycloud etc.).
  • Comunicação corporativa (Slido, Zoom, Onedrive, Airtable etc.).
  • Links de redefinição de senha, links de login OAuth e outros.
  • Esses serviços têm em comum o uso de um único link privado com identificadores aleatórios para permitir acesso ao serviço. Às vezes, também contam com proteção adicional por senha ou frase secreta; nesse caso, acessar o link não necessariamente resulta em exposição de dados.

Quem deve ser responsabilizado?

  • Segundo os termos de uso do Hybrid Analysis e do urlscan.io, a responsabilidade pelo conteúdo enviado é do usuário, e não existe um mecanismo para revisar e remover links sensíveis.
  • Implementar isso de forma automatizada também pode não ser algo simples.
  • Como pesquisador de segurança, é difícil rastrear a origem desses links.

Somos caçadores de ameaças! Todos os links nos pertencem!

  • O urlscan Pro permite que usuários/empresas pagantes acessem não apenas varreduras Public, mas também Unlisted.
  • Unlisted não aparece em páginas públicas nem em resultados de busca, mas é visível para clientes da plataforma urlscan Pro.
  • Os Cortex-Analyzers do TheHive usam explicitamente a configuração public:on no analisador do urlscan.io, fazendo com que os links apareçam como unlisted.
  • Para usuários do urlscan Pro, os dados não são públicos, mas são acessíveis, o que aumenta o risco de vazamento de informações sensíveis.

Como remover links sensíveis?

  • Urlscan e Hybrid Analysis permitem sinalizar links para remoção.
  • No caso do Hybrid Analysis, todos os arquivos enviados para o sandbox público podem ser pesquisados e ficam públicos para o mundo todo.

Conclusão

  • É certo que esse problema continuará existindo, mas manter as varreduras privadas por padrão pode ser a melhor solução, embora isso não esteja alinhado com o objetivo das práticas de compartilhamento de inteligência de ameaças e análise na comunidade de segurança.
  • Ao usar esses serviços, é preciso prestar atenção à visibilidade das varreduras.

Isenção de responsabilidade

  • Se você optar por acessar esses links/arquivos no banco de dados de URLs, tome cuidado com arquivos e links realmente maliciosos.
  • Alguns podem ser simples tentativas de phishing e podem conter malware real.
  • Recomenda-se o uso de um ambiente sandbox.

Links úteis

  • SOAR spot do urlscan.io: Chatty security tools leaking private data (2022)
  • urlscan.io Search API Reference
  • Falcon Sandbox Public API
  • Cloudflare Radar URL Scanner

Opinião do GN⁺

  • Este artigo chama a atenção de pesquisadores de segurança e usuários em geral ao mostrar como ferramentas de segurança podem expor informações sensíveis por engano.
  • Esse tipo de problema pode surgir por erro do usuário ou configuração incorreta das ferramentas, o que exige mais cuidado e responsabilidade no tratamento de informações sensíveis dentro da comunidade de segurança.
  • O artigo também reforça a importância de quais medidas indivíduos e empresas devem tomar para proteger seus dados.
  • Sob uma perspectiva crítica, esse tipo de vazamento pode representar uma ameaça grave à privacidade individual e à confidencialidade corporativa, levantando dúvidas sobre a confiabilidade de ferramentas e serviços de segurança.
  • Outros projetos com funcionalidades semelhantes incluem plataformas de análise de malware como VirusTotal e Any.run, e ao usar esses serviços é sempre importante avaliar cuidadosamente se os dados serão públicos ou não.

1 comentários

 
GN⁺ 2024-03-08
Comentários do Hacker News
  • O problema fundamental é que o link não tem controle de acesso e se presume que seja privado porque não existe um índice público. Houve bastante repercussão no Hacker News sobre descobrir IDs de contas AWS por meio de buckets, e o consenso nos comentários foi que depender da privacidade de um identificador de conta como parte da segurança é uma abordagem equivocada. Isso é apenas mais um método de "dorking".

    • Privacidade do link: presumir que um link é privado só porque não é indexado publicamente é problemático. Depender da privacidade do ID de uma conta AWS não é uma abordagem correta de segurança, e isso não é uma nova questão de segurança, mas uma forma de "dorking".
  • Para criar um link que possa ser compartilhado de forma privada, é preciso armazenar a informação secreta na parte de hash da URL. O hash não é incluído em consultas DNS nem em requisições HTTP. Por exemplo, um link no formato links.com#<secret> não sai do navegador. É recomendável codificar os dados da parte de hash em uma string Base64 segura para URL.

    • Compartilhamento seguro de links: é possível compartilhar links com mais segurança armazenando informações secretas na parte de hash da URL. Esse método é mais seguro porque o hash não é incluído em consultas DNS nem em requisições HTTP.
  • Sempre desconfiei de links "privados" que podem ser usados infinitamente. Isso é apenas segurança por obscuridade. É melhor quando há uma opção explícita, como no Google Docs, de "qualquer pessoa com a URL pode acessar". No sistema que o autor construiu, são usadas URLs assinadas de curta duração, e essas URLs não são mostradas diretamente ao usuário.

    • Dúvidas sobre links privados: links "privados" na prática são apenas segurança por obscuridade, e usar URLs assinadas com curta duração é uma abordagem mais segura.
  • Qualquer link que não faça parte de um loop rápido de redirecionamento será copiado e compartilhado. URLs são universais e facilitam o acesso a recursos no protocolo. O controle de acesso para qualquer coisa com duração mais que breve deve acontecer fora da URL. Ao compartilhar um link por um canal sem e2ee, o primeiro agente a acessar a URL pode não ser o destinatário, mas o próprio serviço do canal. Ferramentas de scanner desse tipo provavelmente não melhorariam a UX se deixassem explícito ao usuário que o escaneamento é público.

    • Controle de acesso via URL: URLs são compartilhadas para facilitar o acesso a recursos, e o controle de acesso deve ser feito por outros meios, não pela própria URL. Ferramentas como scanners não ajudam na UX se informarem ao usuário que o escaneamento é público, porque isso pode fazer a pessoa hesitar em usar o serviço.
  • A solução para o problema de "autenticação baseada em e-mail" é usar códigos de uso único que não causem problema mesmo se a URL for compartilhada por engano, sem exigir a etapa de criar conta e senha. Quando o usuário visita o link "privado", o site reenvia por e-mail um código temporário com limite de tempo, e o usuário digita esse código para confirmar que possui o e-mail.

    • Autenticação por e-mail e código de uso único: para resolver o problema da autenticação baseada em e-mail, usam-se códigos de uso único, de modo que não haja problema mesmo se a URL for compartilhada acidentalmente.
  • Na internet, se uma URL não tiver proteção além de uma string aleatória, ela não é realmente privada. É a mesma história de encontrar webcams conectadas à internet. Já deveríamos saber disso. Por que isso não é mencionado na seção "quem deve ser responsabilizado"?

    • Natureza privada das URLs: se uma URL não tem proteção além de uma string aleatória, ela não é privada, e isso já é algo conhecido.
  • Fugindo um pouco do assunto, há um link dizendo que o Cloudflare Radar minera dados do 1.1.1.1. Eu achava que o 1.1.1.1 não usava dados de usuários para nenhuma finalidade.

    • Cloudflare Radar e 1.1.1.1: há a alegação de que o Cloudflare Radar minera dados do 1.1.1.1, o que entra em conflito com a impressão anterior de que o 1.1.1.1 não usa dados de usuários.
  • Links de reunião do Zoom frequentemente adicionam a senha como parâmetro de consulta. Esse link é um link "privado e seguro"? Sem a senha, ele é um link "privado e seguro"?

    • Segurança dos links de reunião do Zoom: questiona-se a segurança de links de reunião do Zoom com e sem senha incluída.
  • Alguém pode explicar qual dos dois casos a seguir é mais seguro?

    1. domain.com/login usuário: John senha: senha aleatória de 5 caracteres
    2. domain.com/ URL aleatória de 12 caracteres Assumindo a mesma proteção por aleatoriedade/limitação de taxa em ambos os casos, ou nenhuma proteção, por que o caso 1 seria mais seguro que o caso 2?
    • Comparação de segurança de login: pergunta sobre a comparação de segurança entre duas formas diferentes de login.
  • Todo o conteúdo de mídia/fotos enviado para apps privados do airtable.com vira link público, acessível sem autenticação por qualquer pessoa que conheça a URL.

    • Links públicos no Airtable.com: mídias e fotos enviadas para o Airtable.com ficam em links públicos, e qualquer pessoa com a URL pode acessá-las.