Have I Been Pwned é oficialmente um projeto de código aberto

Base operada com esforço da comunidade contará também com o FBI para alimentar senhas comprometidas

Author Photo
4:00 pm - 28 de maio de 2021
Have I Been Pwned Adobe Stock

Troy Hunt, especialista em segurança e fundador do Have I Been Pwned (HIBP), site gratuito usado por milhões para verificar se suas credenciais foram comprometidas, anunciou nesta quinta-feira (27) que abriu o código-fonte da plataforma.

Depois de mencionar o plano de abrir o código-fonte da base de código HIBP no ano passado, e as solicitações de senhas vazadas do site se aproximarem de 1 bilhão por mês, Hunt confirmou que o código é oficialmente aberto por meio da .NET Foundation, uma organização independente sem fins lucrativos.

Hunt, também diretor tegional da Microsoft, reforçou que o HIBP foi construído por toda comunidade e que, desde a finalização do processo de Fusão e Aquisição (F&A), concluído no início deste ano, ele tem buscado um “futuro mais sustentável” para o serviço. “O projeto não pode depender apenas de mim. No entanto, é onde estamos hoje e se eu desaparecer, o HIBP rapidamente murcha e morre”, escreveu em postagem de blog.

“Cada byte de dados carregado no sistema nos últimos anos veio de alguém que os ofereceu gratuitamente para melhorar o cenário de segurança para todos. Muitos dos serviços em que o HIBP é executado são fornecidos gratuitamente por empresas como a Cloudflare. Grande parte do código que foi escrito foi elaborado com base nas contribuições da comunidade em virtude do conteúdo que as pessoas publicaram publicamente ou do suporte que me foi fornecido diretamente, escreveu Hunt.

O Have I Been Pwned é acessado gratuitamente com uma taxa de quase 1 bilhão de solicitações por mês. Ele coleta dados de todas as muitas violações de segurança pessoal que acontecem a cada uma ou duas semanas. Em breve, o HIBP também receberá senhas comprometidas descobertas durante as investigações do FBI.

Hunt também anunciou a parceria com o FBI, o qual perguntou se haveria uma maneira de fornecer à agência uma “avenida para inserir senhas comprometidas no HIBP e revelá-las por meio do recurso Pwned Passwords”.

“Estamos entusiasmados com a parceria com o Have I Been Pwned neste importante projeto para proteger as vítimas de roubo de credenciais on-line. É outro exemplo de como as parcerias público/privadas são importantes na luta contra o cibercrime”, disse Bryan A. Vorndran, diretor assistente da Divisão Cibernética do FBI.

As senhas do FBI, segundo o site ZDNet, serão fornecidas em pares de hash SHA-1 e NTLM; o HIBP não precisa deles em texto simples. Eles serão inseridos no sistema à medida que forem disponibilizados pelo FBI. Para fazer isso, o HIBP está adicionando um novo programa de código aberto, Pwned Passwords, para permitir que os dados fluam facilmente para o HIBP.

Hunt começou a planejar o Have I Been Pwned de código aberto em agosto de 2020 e descobriu rapidamente que isso não era fácil.

“Eu sabia que não seria fácil, mas também sabia que era a coisa certa a fazer para a longevidade do projeto. O que eu não sabia é o quão não trivial seria por todos os tipos de razões que você pode imaginar e um monte de outras que não são imediatamente óbvias. Um dos principais motivos é que há muito esforço envolvido em escolher algo que é executado como um projeto de estimação individual por anos e movê-lo para o domínio público”, ele escreveu.

“Eu não tinha ideia de como gerenciar um projeto de código aberto, estabelecer o modelo de licenciamento, coordenar onde a comunidade investe esforços, receber contribuições, redesenhar o processo de lançamento e todos os tipos de outras coisas que tenho certeza que nem pensei ainda. É aqui que entra o .NET Foundation”.

Hunt está começando com o código Pwned Password porque é relativamente fácil. Os motivos para isso incluem, segundo o site ZDNet: uma base de código muito simples que consiste em armazenamento do Azure, uma única função do Azure e um trabalhador Cloudflare; tem seu próprio domínio, conta Cloudflare e serviços do Azure para que possa ser facilmente escolhido e disponibilizado de forma independente para o resto do HIBP; e é totalmente não comercial, sem quaisquer custos de API ou serviços corporativos como outras partes do Have I Been Pwned.

Os dados que impulsionam as senhas Pwned já estão disponíveis gratuitamente no domínio público por meio dos conjuntos de hash para download. Hunt disse que essa mudança “garante que qualquer pessoa possa executar sua própria instância de senhas Pwned, se assim desejar”.

Hunt espera “que isso incentive uma maior adoção do serviço devido à transparência que a abertura da base de código traz consigo e à confiança de que as pessoas sempre podem ‘fazer seus próprios’ se quiserem. Talvez eles não queiram a dependência da API hospedada , talvez eles apenas queiram uma posição de reserva, caso eu venha a falecer prematuramente em um infeliz acidente de jet ski. Isso dá opções às pessoas”.

O plano geral do HIBP é, segundo o ZDNet:

  1. Há um endpoint autenticado que receberá pares de senhas de hash SHA-1 e NTLM. O par de hash também será acompanhado por uma prevalência indicando quantas vezes ele foi visto no corpus que levou à sua divulgação.
  2. Após o recebimento das senhas, os hashes SHA-1 precisam ser extraídos para a construção de Armazenamento de Blob do Azure existente. Isso não é nada mais do que 16 ^ 5 arquivos de texto diferentes (porque cada hash SHA-1 é consultado por um prefixo de 5 caracteres), cada um contendo o sufixo de hash SHA-1 de 35 bytes de cada senha vista anteriormente e o número de vezes que foi visto.
  3. “Extraído para” significa adicionar um novo hash SHA-1 e sua prevalência ou atualizar a prevalência onde o hash foi visto antes.
  4. Ambos os hashes SHA-1 e NTLM devem ser adicionados a um corpus de dados para download para uso off-line e conforme o ponto anterior, isso significará criar algumas novas entradas e atualizar as contagens nas entradas existentes. Devido à frequência potencial de novas senhas e ao tamanho dos corpora para download (até 12,5 GB compactados no momento) – que de se tornar um processo mensal.
  5. Depois que o arquivo no armazenamento de blob ou todo o corpus para download for modificado, o item de cache Cloudflare correspondente deve ser invalidado. Isso afetará a taxa de acertos do cache, o que afetará o desempenho e o custo dos serviços na origem no Azure. Podemos precisar limitar o impacto disso definindo uma taxa na qual a invalidação de cache pode ocorrer (ou seja, não mais de uma vez por dia para qualquer item de cache).

“Não tenho todas as respostas sobre como as coisas vão prosseguir a partir daqui. “Mas, com a ajuda de você, do FBI e da .NET Foundation, o Have I Been Pwned promete ser mais útil do que nunca, disse Hunt.

(Com informações da ZDNet)

Newsletter de tecnologia para você

Os melhores conteúdos do IT Forum na sua caixa de entrada.