Desafios e Riscos da Gestão de Acessos Privilegiados no âmbito de DevSecOps

24 | 11 | 2021

297 visualizações

Postado em Blog

Por: Bruna Guimarães, Gerente de Negócios.

Introdução

Quando o tema é a entrega de aplicações, um dos grandes desafios é abordar a segurança, em todas as etapas da cadeia produtiva de desenvolvimento.

As recomendações de segurança para o universo de aplicações são muitas, mas nosso principal objetivo neste artigo é abordar os desafios e riscos relacionados à Gestão de Acessos Privilegiados no âmbito de DevSecOps.

Para contextualizar, podemos afirmar que, a cada dia, mais e mais empresas são app-based, ou seja, centradas na entrega de serviços a partir de aplicações web. Sua indisponibilidade ou violação pode prejudicar em imagem e financeiramente às organizações. Mitigar esses riscos passa principalmente pela abordagem de Segurança em todas as etapas da cadeia produtiva de Desenvolvimento.

O conceito de DevSecOps

Antes de nos aprofundarmos mais no tema, vou conceituar no meu entendimento, o que é DevSecOps.

Em muitas organizações no passado, a segurança era acrescentada ao software apenas no final do desenvolvimento, gerando mais custos por meio do retrabalho e, por consequência, atrasos em objetivos de negócios que dependiam das soluções de software.

Com as mudanças metodológicas relativas à entrega ágil, podemos observar uma alteração na cadeia produtiva de desenvolvimento onde se faz necessário rever a maneira que agregamos segurança às aplicações.

O conceito agregado de DevSecOps fez com que as organizações se reestruturassem para entregar de forma ágil e competitiva frente aos objetivos de negócios e, consequentemente, com segurança desde o seu início, ampliando a cobertura e eficácia dos processos de segurança, aumentando a qualidade na entrega e reduzindo os riscos relacionados a cybersecurity.

Em resumo, estamos falando de assegurar a competitividade e performance financeira, no mesmo momento em que reduzimos o retrabalho na cadeia de desenvolvimento.

OWASP e as principais falhas de segurança

As ameaças de Segurança são inúmeras e apresentam diferentes riscos por todo o ciclo de Desenvolvimento. Neste artigo, no entanto, iremos nos concentrar em sobre os riscos relativos ao tema Super Privilégios de Acesso durante toda a cadeia produtiva.

Nesse contexto, usaremos como referências os mesmos frameworks de Mercado que utilizamos (Afrika Tecnologia) nas nossas estruturas de serviço e abordagens consultivas, que são eles:

•   OWASP (Open Web Application Security Project) que representa um amplo consenso sobre o que são as falhas de segurança de aplicativos web mais importantes. Nesse contexto, utilizaremos essa referência extraindo também um conjunto de boas práticas de segurança a serem seguidas dentro do SDLC;

   ANPD (Autoridade Nacional de Proteção de Dados) que é o órgão Nacional responsável pelo cumprimento da Lei Geral de Proteção de Dados Pessoais no Brasil;

•   NIST (National Institute of Standards and Technology) que é a agência que estrutura os padrões, diretrizes e práticas existentes para organizações do setor privado nos Estados Unidos; e que abordam seções voltadas a gerenciar e reduzir melhor o risco de segurança cibernética;

•   BSIMM (Building Security in Maturity Model) que é um modelo de maturidade de segurança desenvolvido pela experiência de empresas que participam do estudo e que estão ligadas a diferentes mercados, justamente para alcançar uma visão mais abrangente. Como modelo, o BSIMM é formado por 122 atividades agrupadas em 4 domínios de segurança de software;

•   ISO/IEC 27001 que é a norma internacional de gestão de segurança da informação. Ela descreve como colocar em prática um sistema de gestão de segurança da informação avaliado e certificado de forma independente;

•   SAMM que é um framework aberto da OWASP para ajudar as organizações a formular e implementar uma estratégia para a segurança de software. Permite às organizações formular e implementar uma estratégia de segurança de software adaptada aos riscos específicos da organização.

O controle de Credenciais

Nesse universo, a ausência do controle de credenciais ameaça à segurança por todo ciclo. Seja quando utilizada com intenção maliciosa, seja quando utilizada de maneira indevida ou até mesmo acidental, os super privilégios colocam em risco os dados expostos, a disponibilidade do serviço, a privacidade dos dados, a aplicação em si e consequentemente, a Organização.

As contas de super privilégios, como já sabemos, são aquelas que possuem permissão elevada de acesso e precisam ser controladas também no âmbito das aplicações.

De maneira Geral, as discussões de Segurança são voltadas para as Varreduras de Vulnerabilidade, testes de intrusão, Scans de terceiros, Gerenciamento de repositórios, SAST, DAST, Pen Tests, Seguranças de contêineres, entre outros. No entanto, assim como em tempos passados de infraestrutura, as credenciais precisam de uma atenção mais minuciosa.

Propomos então que se reserve a devida atenção às concessões e revisões de acessos de credenciais no ciclo de Desenvolvimento. É sobre conceder as permissões corretas e o os Controles devidos de Credenciais de acesso em todo SDLC.

Entendemos o perigo, mas quais são os riscos?

Se o DevSecOps tem como objetivo incorporar de maneira automática a segurança em todas as fases do desenvolvimento do software, vamos seguir de maneira objetiva, alguns dos principais riscos e recomendações de segurança na Gestão de Acessos Privilegiado.

Podemos citar, alguns dos principais riscos de credenciais passíveis de ocorrem em todo o ciclo de desenvolvimento, tais quais:

•   Durante o ambiente produtivo, o vazamento de dados por ataque ao ambiente de desenvolvimento;

•   Exposição de senhas de forma indevida à pessoas não autorizadas e possíveis atacantes;

•   Exposição de credenciais utilizadas para a criação das builds* de aplicações, expondo uma aplicação desde as fases iniciais da sua criação;

  • Utilização de senhas fracas ou amplamente conhecidas, permitindo brechas para ataques de brute force*
  • Em uma situação de ataque, não detecção de vazamento em uma velocidade necessária para remediação;

* Em Desenvolvimento de Software, “build” é o termo usado para identificar uma versão compilada de um programa. Ou seja, quando as linhas de código escritas em linguagem de alto nível são traduzidas para linguagem de máquina, que um computador é capaz de entender.

* Ataque de brute force consiste em uma tentativa de violação de uma senha ou um nome de usuário, encontrar uma página da Web oculta ou descobrir uma chave usada para criptografar uma mensagem, usando uma abordagem de tentativa e erro e esperando que, em algum momento, seja possível adivinhá-la.

E quais controles e soluções podemos implementar?

•   Definir e limitar o acesso as senhas de produção, baseado em políticas de segurança, que Desenvolvedores, por exemplo, não devem ter acesso a senhas de credenciais do ambiente produtivo.

•   Determinar requerimentos de segurança de senhas, determinando padrões mínimos de complexidade e segurança, para todas as senhas utilizadas no ambiente de desenvolvimento e produção;

•   Minimizar a possibilidade de abuso de senhas, implementando um gerenciamento do ciclo de vida das senhas de todas as aplicações.

•   Determinar requisitos de autenticação de arquitetura, verificando que toda a comunicação entre os componentes da aplicação, incluindo APIs, sejam autenticados.

•   Criar uma Automação do processo de buildque seja eficiente e integrado com ferramentas de segurança;

  • Desenhar uma arquitetura de criptografia forte das aplicações a fim de proteger os dados de acordo com sua criticidade;

•   Determinar requerimentos para recuperação de senhas, garantindo os requerimentos mínimos para a recuperação de senhas do ambiente.

Quais Soluções podemos apresentar

•   Utilizar uma ferramenta própria para armazenamento seguro dos secrets e senhas produtivas que mantenha a criptografia a todo o momento;

•   Aplicar o princípio de privilégio mínimo a todos que precisarem de acesso aos secrets e senhas;

•   Garantir que as senhas sejam armazenadas de forma segura. Nesses casos, o ideal é sempre fazer o uso de ferramentas que façam a utilização de tecnologia para armazenagem, saque e gerenciamento seguro;

•   Garantir a autenticação em todos os pontos da aplicação. Mais uma vez, o ideal é realizar por meio de múltiplo fator de autenticação por meio de uma ferramenta de segurança;

•   Garantir a utilização do mínimo privilégio em todos os pontos da aplicação;

•   Implementar a utilização de senhas únicas para acesso a sistemas operacionais, componentes, serviços e servidores.

•   Garantir que as credenciais de integração não sejam imutáveis como chaves de API ou contas privilegiadas compartilhadas;

•   Garantir que caso senhas sejam necessárias as credenciais utilizadas não sejam contas padrões.

Mantendo as aplicações seguras e ativas com Afrika Tecnologia

Entendemos então que a entrega de aplicações possui uma estratégia voltada para o negócio e que a agilidade é um grande diferencial competitivo de posicionamento e marca. Aplicações ativas e conectadas impulsionam e transformam os negócios.

O crime digital no Brasil continua fazendo estragos, sendo um dos principais alvos de ataques no mundo. Uma grande parte dos ataques são direcionados no nível da aplicação. Proteger os recursos e dados dos seus negócios que acontecem por meio das aplicações, precisam ser prioridades na estratégia de segurança.

Sugerimos então, por fim, que as boas práticas de segurança de credenciais sejam seguidas por meio dos controles, das integrações, dos processos e das ferramentas para que os riscos sejam reduzidos e que as aplicações se mantenham ativas, impulsionando os negócios e os recursos.

Existem mais desafios, citados anteriormente, que nós da Afrika enfrentamos diariamente. Dentro do contexto dos riscos apresentados, a nossa consultoria identifica esses riscos e propõe controles que facilitam a implementação, a segurança das aplicações e consequentemente a Operação Assistida.