Data: 2010-04-24 | Author: Gwyn FisherIntrodução:
Análise automatizada de código fonte é tecnologia que visa localizar e descrever as zonas de fraqueza no código fonte. Estas deficiências podem ser vulnerabilidades de segurança lógica, erros, defeitos execução, concorrente violações, raros fronteira condições, ou muitos outros tipos de problemas, causando código.
O nome do domínio é associado investigação estática código análise. Esta é diferenciada de análise dinâmica técnicas mais tradicionais como a unidade ou teste de penetração pelo fato de que o trabalho é realizado em tempo construir utilizando apenas o código-fonte do programa ou módulo em questão. Os resultados são relatados, portanto, gerada a partir de uma visão completa de todos os possíveis execução caminho, ao invés de algum aspecto de uma necessariamente limitada runtime observado comportamento.
Talvez a pergunta mais óbvia confrontando qualquer novo dono para a frente a tecnologia é: por quê?
-Por que usar uma nova ferramenta desenvolvedores quando eles já têm tantas para escolher?
-O que torna essa tecnologia atraente o suficiente para me fazer querer adicioná-lo ao meu já inchada
construir cadeia?
-E que faz, afinal?
Este documento irá responder a estas perguntas, e muito mais. Mas, para o momento apenas considerar o fato de que no momento de escrever, 80% das empresas Fortune 500 já implantados, ou estão actualmente empenhados na implantação, algum tipo de análise automática de código fonte. As razões para fazê-lo pode ser declarado como em muitas maneiras como há pessoas respondendo a pergunta, mas o princípio básico pode ser encontrado em todas estas implementações:
Diga-me o que há de errado com meu código antes que eu navio-lo - não me deixe ser o cara responsável pelo transporte marítimo um assassino vulnerabilidade ou falha no meio selvagem.
Existem outras razões, tais como:
Faça-o meu código para analisar os processos mais eficazes através da automatização
-Melhorar o meu GQ recursos existentes com 100% de cobertura de todas as condições fronteira
Ajuda-me proteger a minha marca como vamos ao mercado com novos produtos
Mas a linha de fundo continua a ser a capacidade de oferecer esta tecnologia para desenvolvedores a capacidade de esfrega seu código de óbvias e não tão óbvias debilidades como elas funcionam, antes de apresentar o respectivo código para o check-in e mais formal down-stream validação dos procedimentos.
Introdução à tecnologia:
O processo de análise automática de código fonte envolve a construção de uma rica representação ou modelo do código fornecido (semelhante a uma compilação fase) e, em seguida, simular todos os possíveis caminhos execução através desse modelo, mapear o fluxo da lógica sobre os caminhos e de forma conjugada com dados onde os objetos são criados, utilizados e destruídos.
Uma vez que a projeção de código caminhos e do mapeamento dos dados objetos estão disponíveis, podemos olhar para as condições anômalas que ou vai ou poderia potencialmente causar vulnerabilidades exploráveis, execução falha ou corrupção de dados em tempo de execução.
Existem duas grandes famílias de verificar capacidade típicas para este tipo de análise: resumo sintaxe árvore (AST) e validação código caminho análise. O primeiro caso é mais frequentemente aplicada a validação de sintaxe e estrutura de base de código, que este último é utilizado para a análise mais completa dos tipos que dependem da compreensão do estado de um programa de dados objetos em qualquer ponto específico sobre a execução do código um caminho.
Article Source : http://www.muitoartigo.com/Automatizado-Análise-Código-Fonte_119164/