4 Ferramentas e técnicas de código aberto para aumentar sua capacidade de testar a segurança de seus aplicativos e organização.

Buscar segurança geralmente requer uma grande variedade de ferramentas e técnicas. O Open Source pode fornecer uma maneira acessível e poderosa de aprimorar os recursos de teste de segurança. Se você trabalha na área de segurança cibernética ou é um entusiasta que deseja testar suas habilidades, aqui estão algumas ferramentas de código aberto que podem valer a pena adicionar ao seu arsenal de ferramentas de segurança.

  • Gerador de documentação Doxygen

O Doxygen Documentation Generator  é um gerador de documentação para uma variedade de linguagens de programação populares. Isso permite que os usuários extraiam a estrutura do código dos arquivos e realce as relações entre os elementos do código. Esta ferramenta fornece essencialmente uma representação visual do seu código e pode ajudar a fornecer uma compreensão mais profunda e abrangente de bases de código particularmente complexas. O Doxygen permite que os usuários analisem o fluxo do código e pode, por exemplo, auxiliar na inspeção visual da herança do código. Doxygen é uma ferramenta muito boa para usar em alguns sistemas operacionais sem problemas se você é um fã de Windows, Linux ou Mac.

  • Z3 Constraint Solver

Outra ótima ferramenta é o Z3, um solucionador de restrições que pode complementar as ferramentas de análise, verificação e difusão de software. Ele fornece links para várias linguagens de programação, incluindo C / C ++ e Python. Z3 tenta encontrar soluções que atendam a um conjunto específico de restrições definidas. Isso pode ser útil, por exemplo, para verificar as restrições de validade de entrada cruzada para encontrar resgates potenciais que podem resultar em condições indesejadas.

Embora a revisão manual do código e a ambiguidade possam ajudar a identificar situações problemáticas, o Z3 adiciona uma verificação matemática e lógica abrangente, que fornece um nível adicional de revisão do código. Você pode usar essa ferramenta para testar um recurso ou um bloco específico de código para testar restrições e detectar possíveis problemas, como violações de privacidade. Por exemplo, a Trail of Bits publicou uma postagem no blog descrevendo como usou o Z3 para encontrar vulnerabilidades Heartbleed. A postagem percorre a conversão de código real em funções e essas funções em restrições Z3, o que resulta em uma combinação de valores que substitui um registro de CPU e chama com sucesso uma rotina de compartilhamento de memória com um valor inválido, conforme visualizado ao longo do processo.

  • LibFuzzer Fuzzing Engine

O terceiro código aberto é chamado libFuzzer . É uma ferramenta que está rapidamente ganhando uso e crescendo em popularidade. Com esta ferramenta, você poderá testar a capacidade e a validade dos formulários e das entradas definidas. No momento em que esta ferramenta é colocada em uso, ela começa a procurar “buracos” dos quais um sistema depende e pode travá-lo. Outro grande benefício é a capacidade do libFuzzer de comparar operações e determinar quais valores seriam os primeiros a serem afetados.

  • Ferramenta de cobertura de código Gcov

Gcov faz parte de uma categoria de ferramentas chamada cobertura de código, que segue a mesma linha dos fuzzers. Como os fuzzers podem ser executados continuamente por dias ou semanas de cada vez, pode ser um desafio para os usuários descobrir quanto código eles testaram, incluindo quais linhas de código são acessadas (e quais não são). As Ferramentas de Cobertura de Código fornecem uma visão geral detalhada do progresso do fuzzer ao longo do tempo, permitindo ajustes do fuzzer que maximizam a cobertura do código do fuzzer para garantir que a maioria dos aspectos do fluxo do código / base do código sejam verificados. Isso ajuda a aumentar a confiança nos resultados.

Deixe um comentário
Shares: