Uma das vertentes mais importantes da TI é, sem dúvidas, a segurança da informação. Há um tempo atrás, os testes de segurança da aplicação e sua infraestrutura eram feitos apenas no fim do processo. Caso houvesse algum erro, era preciso voltar e analisar todas as etapas para corrigir o que havia sido feito. Com a chegada das metodologias ágeis, esse processo mudou e facilitou o trabalho das equipes, trazendo maior velocidade às atividades.
Atualmente, a segurança é uma responsabilidade compartilhada e integrada do começo ao fim do projeto. Isso impactou tanto nos resultados que foi criado o termo DevSecOps. Dessa forma, o DevSecOps significa Desenvolvimento + Segurança + Operação. Pode ser considerada uma evolução natural do DevOps, mas com a preocupação de incluir segurança e qualidade ao longo de todo o processo.
Para aplicar segurança em todas as partes de um projeto, é preciso entender e identificar pontos críticos. Isso é possível por meio da integração no pipeline, com auxílio de ferramentas e uma nova mentalidade de trabalho. Alguns itens são essenciais para garantir as etapas de segurança no DevSecOps.
Padrões de governança
O fator segurança é muito abrangente quando falamos em tecnologia da informação: ela pode ser reativa, preventiva, de monitoramento etc. No meio corporativo, por exemplo, existem alguns padrões de governança que são essenciais para preencher todas as frentes de trabalho. Veja quais são os mais conhecidos:
- ITIL (Information technology infrastructure library): padrão de boas práticas para gerenciamento de serviços de tecnologia.
- COBIT: inclui práticas para controle de objetivos, diretrizes de auditorias e gerência dessas diretrizes.
- ISO 270001: utilizado para gerir riscos de uma empresa e organizar atividades, organizando responsabilidades.
Regulamentações internacionais
Dentro da segurança da informação, as regulamentações internacionais são regras estabelecidas pelo governo para que a empresa proteja seus clientes. Dessa forma, existem algumas regulamentações que devem ser seguidas dentro de uma organização para que a segurança de dados seja garantida. Conheça as regulamentações mais utilizadas:
- PCI DSS (Payment Card Industry): utilizado para proteger a privacidade e confidencialidade de dados de cartões de crédito. É uma regulamentação obrigatória para qualquer empresa que tenha que transmitir, processar ou armazenar esses dados.
- SOX (Sarbanes-Oxley): regulamentação que busca garantir a criação de mecanismos de auditoria confiáveis dentro de uma organização.
- SOC 2 (Service Organization Control): tem o objetivo de reportar itens como segurança, disponibilidade, processamento, confidencialidade e integridade de uma organização.
- GDPR: Regulamentação europeia sobre privacidade e proteção de dados pessoais.
Quando falamos de DevSecOps, falamos de análises de segurança em todos os estágios do pipeline. Dessa forma, são definidas as regras de segurança e elas são aplicadas nos diferentes fatores durante o processo: no planejamento, código, homologação e operação.
Etapas de segurança e ferramentas
- Planejar: identificar os próximos desafios em relação à segurança. Ferramentas: Kanboard, Wekan, Redmine, Taiga, Trello.
- Auditoria: como parte da estratégia de defesa, deve-se explorar ferramentas de auditoria de código. Ferramentas: Brakeman, SonarQube, Bandit, CPPCheck, Graudit.
- Camada de segurança: automatizar os testes de segurança por meio de ferramentas de verificação. Ferramentas: OWASP ZAP, Arachni, SQLmap, Dependency Check, Gauntlt, Nikto.
- Defesa: etapa para detectar ataques e se prevenir de exploits. Ferramentas: ELK, Graylog, Prometheus, Zabbix, Fail2ban, Snort, OSSEC, Docker Bench for Security.
Com isso, o DevSecOps traz mais do que um novo significado para a infraestrutura e segurança de aplicativos. Ele traz novas ferramentas e metodologias de trabalho para automatizar e integrar etapas e, com isso, constituir o trabalho de segurança das equipes.