Análise de Código e Segurança de Software

Com os softwares cada vez mais expostos aos mais diversos tipos de ameaça, a segurança tornou-se um requisito fundamental para qualquer software desenvolvido. Embora existam diversos programas de treinamento e conscientização em segurança da informação, ainda é muito comum encontrar softwares desenvolvidos de forma insegura, sem ao menos seguir as tão conhecidas melhores práticas de desenvolvimento. Considerando este cenário, a Green Hat oferece ao mercado o serviço de Análise de Código e Segurança de Software que possui como objetivo identificar o nível de segurança das aplicações nas suas diversas fases, desde a arquitetura de segurança do software e análise dos códigos, passando pela identificação de vulnerabilidades associadas a falhas de implantação e configuração/operação do software, até a avaliação da aplicação em seu ambiente de operação, considerando ainda a utilização de ferramentas de proteção de software.

O serviço de Análise de Código e Segurança de Software pode ser visto como um processo incremental, sendo executado em, no máximo, quatro fases, que podem ser personalizadas de acordo com as necessidades e critérios do cliente. Estas fases são

  • Análise Documental;
  • Auditoria de Código;
  • Teste de Execução;
  • Proteção da Aplicação.

Na análise documental, nossos profissionais avaliam os aspectos da arquitetura de segurança do software, por meio da análise dos documentos da engenharia do software, especialmente aqueles relacionados às especificações de requisitos de segurança da aplicação e como a arquitetura do software foi projetada para atender a tais requisitos. Nesta etapa somos capazes de identificar vulnerabilidades arquiteturais/conceituais e podemos garantir que a aplicação atende a um conjunto de requisitos de segurança pré-definidos.

O segundo passo do Serviço consiste na avaliação de questões de implementação, identificando falhas de programação responsáveis por originar vulnerabilidades e inconsistência entre as especificações documentadas e a implementação. Ou seja, os códigos do software são submetidos a uma inspeção manual detalhada – realizada por nossos profissionais que possuem expertise em revisões de segurança em códigos e frameworks nas principais linguagens de programação – auxiliada por ferramentas automatizadas de análise estática que buscam padrões de violações a programação segura (CERT C, CERT C++, CERT Java, CWE, etc).

No terceiro passo, buscamos comprovar se as vulnerabilidades associadas às falhas de implementação, configuração e operação do software podem ser, de fato, exploradas. Para alcançar este objetivo, utilizamos métodos automatizados para acessar as interfaces da aplicação durante sua execução. Nesta etapa, caso você queira uma avaliação mais profunda de sua aplicação, podemos complementar o serviço de Análise de Código e Segurança de Software com o serviço de Teste de Invasão.

Finalizamos o Serviço avaliando a exposição da aplicação em seu ambiente de operação e a utilização de ferramentas de proteção de software. O objetivo desta etapa é identificar se há a necessidade de adoção de mecanismos de proteção do software contra ações adversas de engenharia reversa, adulteração ou pirataria, ou se os mecanismos implementados são, de fato, robustos diante dos cenários de ataque considerados.

A Green Hat disponibiliza relatórios detalhados de todas as etapas do serviço, oferecendo evidências dos problemas encontrados e, principalmente, apontando possíveis correções para cada vulnerabilidade encontrada, seja ela arquitetural, de codificação ou operacional. Além disso, o corpo funcional da Green Hat possui expertise para auxilia-lo na correta implementação de técnicas de proteção de software como ofuscação, incorruptibilidade e marca d’água.