Salte direto para a metodologia, hospedada no wiki deste repo.
Como alternativa, consulte o modelo do Google Sheets para rastreamento de testes.
Essa metodologia apresenta um guia opinativo sobre como realizar uma avaliação de segurança de aplicativos da Web. O foco principal é enumerar claramente todas as principais áreas que um testador deve cobrir durante uma revisão de segurança. Como ferramenta, os testadores de segurança podem aprender com o documento e usá -lo para moldar seu processo de teste. Também pode ser usado pelos desenvolvedores para entender quais tipos de vulnerabilidades podem existir em suas aplicações e nas melhores práticas que eles devem implementar para reduzir o risco de ataques.
Se você é iniciante, essa metodologia pode ser considerada mais um documento de referência do que um tutorial ou introdução. Em vez disso, recomendo a Web Security Academy da Portswigger e a série de blogs de Eric Rescorla , compreendendo o modelo de segurança da web .
O objetivo dessa metodologia é ser o mais eficaz possível na comunicação de quais problemas testarem, por que esse problema é importante e (sempre que possível) fornecer recomendações sobre como testar e efetivamente testar e remediar o problema. Os princípios orientadores que sigo ao escrever o documento são:
Flexibilidade, confiabilidade, usabilidade : o documento deve ser mantido atualizado e utilizável em uma ampla gama de aplicações diferentes. Se a metodologia se concentrar muito em tecnologias ou estruturas específicas, os leitores não terão certeza se um determinado problema se aplica à sua situação. Deve ser utilizável por leitores menos experientes (para fornecer uma introdução à aparência dos testes de segurança modernos) e leitores altamente experientes (para mantê-los atualizados e ajudar a garantir que eles atinjam a cobertura total).
Seja sucinto : o documento deve ser o mais sucinto possível ao explicar cada categoria ou questão. Vá direto ao coração do assunto e forneça referências de alta qualidade quando necessário para obter mais informações. Evite inchaço o documento com informações sobre qualquer problema, quando um problema for apenas uma pequena parte de todo o documento.
Seja opinativo : não se esquiva de declarar claramente as melhores práticas. Ainda mais importante, não tente cobrir todos os problemas de segurança possíveis - especialmente quando um problema tem um impacto mínimo ou nenhum na maioria das situações. Se um problema tiver uma variedade de recomendações aceitáveis, faça uma sugestão segura e amplamente aplicável e confie no leitor para ajustar a recomendação para seu contexto específico.
Por fim, nenhuma metodologia substitui o julgamento de um testador experiente que pode levar em consideração o contexto de sua aplicação específica. Um servidor HTTP incorporado caseiro escrito em C terá vulnerabilidades muito diferentes do que um microsserviço Kubernetes usando a estrutura da web mais recente com um front-end do React. Este documento define uma linha de base que pode ser usada por qualquer pessoa interessada em melhorar a segurança dos aplicativos da Web e serve como um padrão para o qual os testadores podem se manter para fornecer resultados de alta qualidade.