Documente Academic
Documente Profesional
Documente Cultură
em desenvolvimento Antes de pensar em segurança é preciso analisar o seu processo de desenvolvimento de software.
Segundo estudos realizados pela Cigital Software Confidence [3]: “software ruim é a origem da
Wagner Elias maioria dos problemas de segurança”. Isso significa que uma má gestão no processo de
Departamento de R&D desenvolvimento de software pode levar a um código mal estruturado e por sua vez a problemas
de segurança. Por outro lado, software de qualidade é desenvolvido com uma abordagem
estruturada e ferramentas de apoio[4][5].
4 - Você adota um processo de Integração Contínua para garantir que bugs não são
inseridos no build?
Um processo de integração continua irá colaborar para garantir a qualidade do software
desenvolvido[9][10]. O processo irá automatizar verificações no processo de build da
ferramenta, garantindo assim, que seja possível gerar um novo release sem problemas.
Já possuo um bom processo de desenvolvimento de software e prescritiva e defina os papéis e responsabilidades dos envolvidos no
SDL.
quero inserir neste processo atividades que irão melhorar a
segurança dos softwares desenvolvidos 4 – Treinamento e Capacitação
O primeiro ponto a ser entendido é: para implementar segurança em Com o processo iniciado e apoio da organização é preciso treinar os
um processo de desenvolvimento são necessárias mudanças. Isto envolvidos e desenvolver materiais e recursos para que os
envolve de questões culturais até capacitação dos envolvidos em profissionais se mantenham conscientes sobre a necessidade de
temas associados a segurança. Todo esse processo de reeducação segurança e sejam informados sobre fontes de pesquisa no tema.
leva tempo e não acontece simplesmente ao escrever uma política
ou definir alguns checklists. 5 – Reutilização de Componentes
Construa e homologue componentes de código e arquitetura que
Segundo estudos relatados no BSIMM (Building Security In Maturity possam vir a ser adotados como padrão na organização. Modelos
Model), atualmente, existem mais de sessenta grandes iniciativas de
como o ESAPI (Enterprise Security API)[12][13][14][15] da OWASP
segurança no desenvolvimento de software em organizações dos podem ser adotados evitando que códigos com problemas de
mais diversos setores. Todas essas iniciativas tem características segurança e componentes inseguros sejam adotados.
comuns, adotam estruturas e abordagens que foram analisadas pelo
BSIMM. 6 – Padrões de Código Seguro e Checklists
Como a segurança das aplicações fará parte das atribuições e metas 15. .Net Swingset: http://code.google.com/p/swingset-dotnet/
de conformidade da organização é necessário que a alta gestão da 16. OWASP Secure Coding Practices: http://www.owasp.org/
organização apoie a iniciativa de desenvolvimento de software index.php/OWASP_Secure_Coding_Practices_-
seguro e fornece todos os recursos necessário. _Quick_Reference_Guide
17. Microsoft Threat Modeling: http://www.microsoft.com/security/
Sobre o Autor sdl/getstarted/threatmodeling.aspx
Wagner Elias atua com Segurança da Informação desde 2004, tendo 18. O uso de ferramentas de Bug Tracker no tratamento de
trabalhado como consultor, líder de equipes e gerente de consultoria. vulnerabilidades: http://wagnerelias.com/2010/03/31/o-uso-de-
Tem ampla experiência na condução de projetos em IT Security com ferramentas-de-bug-tracker-no-tratamento-de-
soluções implementadas em empresas dos mais diversos segmentos. vulnerabilidades/
Possui as certificações CBCP, SANS GIAC GHTQ, ITIL e CobiT Foundations 19. OWASP Testing Guide: http://www.owasp.org/index.php/
além de certificações de produtos de SIEM e WAF. É fundador e líder do Category:OWASP_Testing_Project
capítulo brasileiro da OWASP, ocupou o cargo de diretor de conteúdo na
20. OWASP Code Review: http://www.owasp.org/index.php/
gestão 2006-2008 e de eventos da gestão 2008-2010 do capítulo
Category:OWASP_Code_Review_Project
brasileiro da ISSA. É co-fundador e sócio da Conviso IT Security, onde
atua como Gerente de R&D, responsável pela gestão de pesquisa e 21. O2 Platform: http://www.owasp.org/index.php/
desenvolvimento de projetos de consultoria. OWASP_O2_Platform.
Referências
1. Application Lifecycle Management
http://en.wikipedia.org/wiki/
Application_lifecycle_management
2. Guide to the Software Engineering Body of Knowledge (SWEBOK)
http://www.computer.org/portal/web/swebok
3. Building Security In Maturity Model: http://bsimm2.com/
resources/
4. Bom código é suficiente para um projeto ter sucesso? - http://
www.infoq.com/br/news/2010/09/Good-Code-Is-Not-Enough
5. Inimigos do software seguro: http://wagnerelias.com/
2010/08/04/inimigos-do-codigo-seguro/
6. Visualization of Version Control Information: http://
projetos.inf.ufsc.br/arquivos_projetos/projeto_546/resumo2.doc
7. Software QA and Testing Resource Center: http://
www.softwareqatest.com/