Analisador de Código-Fonte do Microsoft Application Inspector

imagem

A Microsoft lançou o Microsoft Application Inspector, uma ferramenta de código aberto (!) Multiplataforma para analisar o código-fonte.


O Application Inspector difere das ferramentas tradicionais de análise estática, pois não tenta identificar padrões “bons” ou “ruins”; ele relatará que detectará, com base no conjunto inicial de mais de 500 modelos de regras para detectar funções, incluindo funções que afetam a segurança, como o uso de criptografia, etc.


O principal objetivo do Application Inspector é uma identificação sistemática e escalável das funções do código fonte que não são encontradas em outros analisadores estáticos típicos. Isso permite que desenvolvedores e especialistas em segurança verifiquem os objetivos pretendidos dos componentes, por exemplo, que a biblioteca usada faz apenas o que é declarado nela.


Os aplicativos modernos dependem muito do software gravado fora da sua empresa, o que acarreta riscos. O Application Inspector pode ajudar a determinar características interessantes do aplicativo examinando o código-fonte, economizando um tempo considerável comparado à análise "manual".


O aplicativo é uma ferramenta cliente baseada no .NET Core, portanto, funciona no Windows, Linux ou macOS e não requer privilégios elevados, além de um banco de dados local, comunicações em rede ou telemetria. Para iniciá-lo, basta usar a linha de comando dotnet padrão para chamar, por exemplo, dotnet ApplicationInspector.dll, se você estiver executando o Linux, macOS ou Windows AppInspector.exe.


> dotnet AppInspector.dll or on *Windows* simply AppInspector.exe <command> <options> Microsoft Application Inspector 1.0.17 ApplicationInspector 1.0.17 (c) Microsoft Corporation. All rights reserved ERROR(S): No verb selected. analyze Inspect source directory/file/compressed file (.tgz|zip) against defined characteristics tagdiff Compares unique tag values between two source paths tagtest Test presence of smaller set or custom tags in source (compare or verify modes) exporttags Export default unique rule tags to view what features may be detected verifyrules Verify rules syntax is valid help Display more information on a specific command version Display version information 

Você pode adicionar / editar / excluir regras ou padrões padrão, conforme necessário. Também é possível adicionar suas próprias regras a um caminho separado ao conjunto padrão e salvar o conjunto padrão ou excluí-las usando as opções da linha de comandos.


Áreas de teste e aplicação:


  • Controle de fluxo: execução dinâmica de código, gerenciamento de processos.
  • Criptografia: Criptografia, Hashing, Segredos, Randomização.
  • Operações do SO: sistema de arquivos, variáveis ​​de ambiente, operações de rede, contas de usuário, registro do Windows.
  • Dados: JSON / XML, Segredos / Chaves de Acesso, Dados Pessoais Sensíveis, SQL / ORM.
  • Manipulação de dados: serialização de objeto (XML / JSON), Flash, PDF, Silverlight, uso ou análise de mídia de áudio / vídeo, Bluetooth, celular, RPC.
  • Estruturas: Desenvolvimento, Teste, Dependências.

Por padrão, o Application Inspector gera um relatório baseado em html para ilustrar recursos, um resumo do projeto e metadados encontrados. As opções de formato de saída JSON e TEXT também são suportadas.


imagem


Página de projeto do GitHub .

Source: https://habr.com/ru/post/pt484800/


All Articles