A ideia de permitir que o usuário leve sua própria conta para a empresa funciona até certo ponto no próprio site, mas não impede a leitura da associação à organização quando se faz login em apps com GitHub
A sessão SAML só é necessária quando os dados são buscados por meio de um token obtido pelo usuário
Ferramentas de SAST quase sempre usam tokens de instância do app e mostram o código para qualquer pessoa com uma conta no GitHub
A Tailscale corrigiu esse problema, mas a Sonarcloud pediu para manter em segredo, e o GitHub respondeu semanas depois que esse comportamento era o esperado
Reportar bugs de segurança é um trabalho ingrato
Precisei implementar SAML recentemente, e essa manchete não me surpreende nem um pouco
A especificação do SAML em si é razoável, mas é muito complexa por se basear em assinaturas XML e canonização XML
Só um comitê conseguiria combinar ideias tão contraditórias
SAML (e, de forma mais ampla, XML-DSIG) é geralmente o pior protocolo de segurança ainda em uso comum
Deve-se tomar todas as medidas necessárias para migrar para OAuth
Eu não dependeria disso ao lançar um produto novo no mercado
Sem um avanço real em verificação formal, é improvável que a última ou pior vulnerabilidade de DSIG já tenha aparecido
Não se deve usar REXML
Ele aceita fazer parse de XML inválido, causando problemas sem fim
Fazer parse de XML com expressões regulares é um antipadrão
Os projetos não passaram a usar Nokogiri por desempenho, e sim por correção
Excelente artigo
Agradecimentos ao ahacker1 pelo trabalho de segurança na implementação de SAML
A WorkOS escreveu um texto sobre a colaboração com ahacker1
Uma vulnerabilidade foi encontrada no GitLab, e a equipe de segurança foi avisada
O GitLab corrigiu o problema
Artigo de 2019 da Latacora sobre como assinar objetos JSON
Aninhar árvores e assiná-las é difícil
É mais fácil manter a mensagem como string bruta e assiná-la
A conclusão mais simples é procurar a assinatura onde ela deveria estar
Não se deve usar um XPath genérico que encontre assinaturas em locais inesperados
É irritante quando um post de blog explica a vulnerabilidade e omite as diferenças de parser envolvidas
É como escrever a introdução de uma história e pular o clímax
Foi a primeira vez que li os detalhes técnicos de assinaturas XML, e minha cabeça está girando
Fico me perguntando se existe algum motivo não legado para usar a criptografia autenticada de chave pública do libsodium (crypto_box) em vez de SAML
Também me pergunto se há algum risco não teórico de diferenças de parser ao usar crypto_box do libsodium e x/crypto/nacl/box do Golang
1 comentários
Comentários do Hacker News
A implementação de SAML do GitHub é inútil
Precisei implementar SAML recentemente, e essa manchete não me surpreende nem um pouco
SAML (e, de forma mais ampla, XML-DSIG) é geralmente o pior protocolo de segurança ainda em uso comum
Não se deve usar REXML
Excelente artigo
Uma vulnerabilidade foi encontrada no GitLab, e a equipe de segurança foi avisada
Artigo de 2019 da Latacora sobre como assinar objetos JSON
A conclusão mais simples é procurar a assinatura onde ela deveria estar
É irritante quando um post de blog explica a vulnerabilidade e omite as diferenças de parser envolvidas
Foi a primeira vez que li os detalhes técnicos de assinaturas XML, e minha cabeça está girando
crypto_box) em vez de SAMLcrypto_boxdo libsodium ex/crypto/nacl/boxdo Golang