De acordo com as Leis 12.965/2014 e 13.709/2018, que regulam o uso da Internet e o tratamento de dados pessoais no Brasil, ao me inscrever na newsletter do portal DICAS-L, autorizo o envio de notificações por e-mail ou outros meios e declaro estar ciente e concordar com seus Termos de Uso e Política de Privacidade.


O uso de ferramentas de Bug Tracker no tratamento de vulnerabilidades

Colaboração: Wagner Elias

Data de Publicação: 09 de abril de 2010

Ao implementar processos de desenvolvimento seguro, geralmente nos deparamos com problemas considerados pelo senso comum como básicos e essenciais para a produção de software, o que é o caso da ausência de uma ferramenta de bug tracker. Neste post, descrevo a implementação de uma ferramenta destinada a preencher este ponto e customizada para auxiliar o processo de gestão e correção de vulnerabilidades em softwares.

A ferramenta escolhida é o Mantis, uma vez que é de fácil customização e instalação, porém qualquer outro produto que possa ser utilizado no processo de bug tracking e possibilite a criação de campos customizados pode ser adotada no mesmo princípio.

Características do Mantis

O Mantis é uma terramenta Open Source desenvolvida em PHP e que tem suporte a diversos bancos de dados, tais como MySQL e Postgres, além de contar com recursos completos para suportar o processo de gestão na correção de problemas encontrados no processo de desenvolvimento de software.

Instalando o Mantis

Para a instalação do Mantis as etapas abaixo apresentadas devem ser cumpridas de forma seqüencial:

  1. Execute o download do pacote de instalação à partir do endereço http://www.mantisbt.org/download.php.
  2. Descompacte este pacote no diretório de publicação que será utilizado no Servidor de Aplicação.
  3. Acesse a URL do web site publicado.
  4. Na tela de configuração apresentada, informe os parâmetros referentes ao banco de dados que será utilizado e execute a instalação seguindo as instruções que serão fornecidas.
  5. Configure o servidor de e-mail que será utilizado pelo Mantis no arquivo config_defaults_inc.php, que será instalado no diretório raiz do web site.

Com estas configurações o Mantis estará funcionando e pronto para ser utilizado, porém para garantir a aplicação de alguns protocolos de segurança adicionais, sugiro que sejam cumpridos os pontos abaixo apresentados:

  1. Apague o diretório admin do diretório raiz do site.
  2. Crie um novo usuário e apague o usuário padrão administrator, cuja senha padrão é root. :-)
  3. No arquivo config_defaults_inc.php altere a diretiva $g_allow_signup = ON para OFF, uma vez que assim será removida a possibilidade de solicitação do usuário que aparece como padrão na página de acesso.

Dica: O funcionamento do Mantis depende muito do envio de e-mails, inclusive para os processos de criação e validação dos usuários, não esqueça de configurar um smtp para suportar esta finalidade e caso você precise testar o processo localmente, uma boa pedida é o Papercut que simula o envio e recebimento de e-mail no seu computador.

Customizando o Mantis para suportar um processo de gestão de vulnerabilidade

  1. A primeira etapa é criar as tags para definir qual o tracker será utilizado. No menu, escolha a opção Manager=>Manage Tags e crie as tags:

    • Bug
    • Feature
    • Support
    • Vulnerability
    • Security Service

  2. Em seguida, é necessário definir os campos personalizados, o que é realizado pela escolha da opção Manager=>Manage Custom Fields no menu, seguida da criação dos campos personalizados abaixo relacionados, onde os campos lista e texto são obrigatórios:

    • Security Impact Booleano
    • Compliance Impact Booleano
    • Privacy Impact Booleano
    • Vulnerability Category Lista
    • Identified By Lista
    • Identification Method Lista
    • Identification Method Source Lista
    • Report Texto
    • Requested Security Activity - Lista

Conteúdo dos Campos Lista

  1. Vulnerability Category:

    • Authentication
    • Authorization
    • Input Validation
    • Output Encoding
    • Error Handling
    • Session Management
    • Logging

  2. Identified By:

    • Development Team
    • Security Team
    • Third Party Assessor
    • Client
    • External Researcher
    • Attacker
    • Operations Team

  3. Identification Method:

    • Code Review
    • Penetration Testing
    • Architecture Review
    • Design Review
    • Other

  4. Identification Method Source:

    • Automated Tool
    • Human
    • Unknown

  5. Requested Security Activity:

    • Requirements Review
    • Architecture Review
    • Design Review
    • Code Review
    • Penetration Test
    • Third Party Assessment
    • Final Security, Compliance and Privacy Assessment

Utilizando o BugTracker para suportar o tratamento de vulnerabilidades

A ferramenta de Bug Tracker será utilizada para suportar o processo de documentação e auxiliar na integração das equipes responsáveis pelo desenvolvimento, análise da segurança, assim como na gestão destas equipes. O primeiro passo é entender o que representa cada estado do BugTracker, a imagem a seguir apresenta os status que o Mantis utiliza:

Entendendo o Mantis

A imagem a seguir apresenta a aplicação de cada um dos status no tratamento da vulnerabilidade e a utilização dos campos customizados que foram citados :

Esta abordagem foi adotada com base no post de Nick Coblentz, respeitando as regras da licença Creative Commons e autorizado pelo autor.

O post original e as imagens podem ser lidas no seguinte link: http://wagnerelias.com/2010/03/31/o-uso-de-ferramentas-de-bug-tracker-no-tratamento-de-vulnerabilidades/

Adicionar comentário

* Campos obrigatórios
5000
Powered by Commentics

Comentários

Nenhum comentário ainda. Seja o primeiro!


Veja a relação completa dos artigos de Wagner Elias