
Este artigo foi publicado na Edição 007 da Antebellum, a Revista Eletrônica da ISSA. Como de costume, uma versão em formato PDF está disponível para download.
A origem do problema
Falar sobre Segurança de Aplicações hoje parece tão complicado quanto era defender o uso de firewalls no final dos Anos 90. A maioria do público que paga essa conta não entende como o processo funciona, e mais importante, não consegue entender em sua perspectiva qual é o valor deste tipo de iniciativa para a sua empresa. Discutimos sobre segurança integrada, promovemos a proteção de ativos, mas no final do processo o que vale para que o investimento ocorra é responder a uma pergunta simples e que dificilmente recebe uma resposta direta: quanto o seu cliente ganha com isso?
Os gestores que lerem este parágrafo devem entender plenamente o que falo, especialmente se administram um orçamento que tem que ser diluído entre segurança e desempenho do Ambiente Informatizado. Entre promover um SDL na empresa que irá dar resultados em vários meses ou atender a uma solicitação de usabilidade que irá facilitar a vida dos vendedores, para onde você imagina que o dinheiro será direcionado? Entendo perfeitamente como essa dinâmica funciona, e por já ter vivido na pele por muitos anos, concluo que a origem do problema está em nós, profissionais responsáveis pela Segurança da Informação. Somos excelentes em falar sobre teorias para a proteção de quase tudo, mas por que falhamos tanto em transformar este discurso para uma linguagem mais ampla?
Longe de adotar uma postura arrogante – por mais que estes parágrafos introdutórios possam indicar – comecei a aprender como esta lógica funciona depois de voltar para o mercado de serviços de consultoria. A realidade é mais simples que parece, mas cabe a nós aceitar o erro e procurar uma nova forma de mostrar o valor de nossa atuação.
O Cenário
Quando falamos de desenvolvimento de software, as características mais comuns para os profissionais da área são a figura do analista de negócio, o desenvolvedor, a linguagem adotada e a integração com os componentes da rede de dados. Colocar segurança nessa equação ainda é uma heresia para muita gente boa que trabalha com programação, e falar de segurança com propriedade para programadores, é algo que poucos em nosso mercado conseguem fazer de forma adequada. Equilibrar este cenário é o primeiro passo para caminhar com relativa tranqüilidade para um processo de desenvolvimento seguro. Como eu acho que isso pode ser alcançado?
Os Fundamentos Acadêmicos
Vemos algumas palestras isoladas e trabalhos singulares sobre segurança em software, mas quantas academias no Brasil mantêm uma cadeira sobre o assunto como parte de seus cursos de programação? Sim, cursos de programação e não de segurança, pois são estes os futuros analistas e desenvolvedores que irão criar aplicações maravilhosas, e potencialmente recheadas de falhas de segurança. De acordo com o relatório 2009 Data Breach Investigations Report publicado anualmente pela Verizon Business, 79% dos arquivos furtados por atacantes foram comprometidos pela exploração de SQL Injection. Utilizada em ataques, pelo menos, desde 2005, pode ser prevenida pela forma como a aplicação interage com as bases de dados, mas exige:
- Que o desenvolvedor conheça o ambiente onde a aplicação será executada, o que exige interação com as equipes de redes e bancos de dados.
- Que a empresa responsável pelo desenvolvimento da aplicação entenda que isso deve ser feito desde o primeiro design da solução, e não depois de ser comprometida.
Entendo que este tipo de prática tem que ser levada imediatamente para as academias. Os programadores têm que aprender como desenvolver com um mínimo de segurança ainda na faculdade, isso já deixou de ser uma especialidade há anos, pois é parte da qualidade do produto que eles irão entregar, assim como os valorizados critérios de usabilidade e atendimento aos requisitos de negócio. Aliás, não perder dinheiro não é um fundamento do capitalismo? Por outro lado, as pessoas que serão CIOs um dia, devem ter claro que alocar um determinado esforço para os produtos serem criados de forma segura é parte de suas responsabilidades como gestores. E aí o processo extrapola a faculdade de ciências da computação e deve ir para administração, finanças e outros cursos que formam os executivos das empresas.
Segurança há muito se tornou parte do processo de negócio das empresas, mas infelizmente esta premissa ainda não foi adotada por boa parte do mercado, como os resultados das pesquisas recentes corroboram. É hora de mudar essa postura de uma vez por todas, e talvez uma palavra que causa arrepios em alguns técnicos seja a solução: compliance.
O compartilhamento da responsabilidade
Na contra capa do livro Secrets and Lies, escrito pelo Bruce Schneier e publicado em 2000, um comentário da Business Week é categórico: “Este é um problema de negócio, não técnico, e os executivos não podem mais deixar essas decisões nas mãos de técnicos.”
Mais do que nunca, a necessidade de aderir a determinados padrões acaba forçando os membros do corpo executivo das empresas a se envolverem com mais profundidade. Afinal, as multas aplicadas estão cada vez maiores. Se a Seção 404 do SOX era uma caixa preta para o mercado no começo dos anos 2000 pelo capacidade de interpretação deixada pelo seu texto e a possível abrangência de seus controles, o PCI DSS é claro em determinar quais passos devem ser cumpridos para considerar um desenvolvimento seguro e quais pontos do ambiente que suporta uma aplicação devem ser considerados.
Claro que como todo padrão, o PCI DSS pode ser implementado de forma “para inglês ver” mas como os resultados de um trabalho mal feito tem machucado seriamente tanto as empresas quanto os auditores responsáveis, o nível de seriedade que as empresas devem adotar irá subir naturalmente. Multas que podem ir de US$ 300 a US$ 600 por dado comprometido e ter o nome da empresa exposto na imprensa de forma negativa nunca serão pontos restritos ao departamento de TI.
Compartilhar a responsabilidade pelo desenho, implementação e administração de uma aplicação que envolve os processos de negócio das empresas, é uma realidade nos projetos de ERP há muito tempo, e migrar esta abordagem para as aplicações é uma prática que as empresas deveriam adotar com relativa urgência. Se a crise econômica levou a estratégia comercial a concentrar maiores esforços em vendas pela Internet, a exposição aumenta e essa urgência deve passar de relativa para imediata.
Um bom exemplo que tem surgido nos últimos meses é a impressionante postura da Heartland Payment Systems no tratamento de um dos maiores vazamentos de dados da história. Quem está indo à público falar em nome da empresa é o CEO, que aproveita de forma corajosa a oportunidade de transformar o problema em um questionamento que pode resultar em um aumento da segurança para os processos que envolvam dados de cartão de crédito.
No final das contas, é uma questão de ROI?
O termo Return on Investment, ou ROI, tem sido usado pelo mercado de segurança há anos para justificar a implementação de soluções que sem este acrônimo poderiam passar como um custo ao invés de um investimento. Como a fórmula clássica de cálculo deste valor é baseada em valores absolutos, existem discussões intermináveis entre profissionais da área que defendem o uso desta métrica e outros que questionam a precisão do resultado. Eu me incluo entre o segundo grupo. Porém, se falarmos de Perda Realizada, onde os ativos são vendidos por um preço menor que o utilizado na compra, é possível ser mais preciso.
A Cigital publicou uma pesquisa intitulada “Finding Defects Earlier Yields Enormous Savings” onde chegou a um resultado interessante, que independe de aderência a padrões. Quando existe um planejamento no desenvolvimento de aplicações, a média de falhas encontradas gira em torno de 200, a um custo de correção individual de US$ 977, o valor a ser incluso no projeto para garantir um nível de segurança adequada é de US$ 195 mil. Quando o processo corretivo é desenvolvido em uma aplicação em teste o valor sobe para US$ 356 mil e finalmente para impressionantes US$ 2,1 milhões durante a fase de produção. Claro que o estudo foi feito em cima do mercado norte-americano e a diferença de mercado deve ser considerada, mas a evolução de valores mostra claramente que:
- Quando o investimento em segurança durante o planejamento é deixado de lado, o produto poderá potencialmente ser vendido por um preço menor que o custo total de produção.
- Os custos com as perdas colaterais resultantes do desgaste de imagem da empresa, necessidade de alteração de infra-estrutura para adequação de controles e revisão de códigos, só podem ser calculados posteriormente, diminuindo ainda mais a margem de lucro na comercialização do produto em questão.
- Se o seu concorrente tomar essa atitude, ele não só pode utilizar a questão da segurança como um diferencial para investir na sua base de clientes como ainda adotar um preço de venda menor, uma vez que tem uma perda potencial estimada menor que a sua.
Um exemplo de como isso tem sido feito, é o uso de selos de garantia de segurança por alguns web sites. Independente da forma como os controles por trás deste diferencial são tratados o consumidor sente-se mais seguro em utilizar as empresas que vão neste caminho. E no final das contas, é ele que define onde vai colocar o dinheiro.
Adaptação para um novo modelo de negócios
A questão recorrente que já ouvi em clientes e da audiência em palestras que freqüento é; na minha empresa isso nunca irá acontecer porque a equipe está mal dimensionada e mal dá conta do trabalho atual, quem dirá de incluir segurança. Bem, isso com honráveis exceções é comum em todo o mundo. Já vi o mesmo cenário no Brasil, Estados Unidos e Europa, ou seja, está longe de ser uma questão geográfica e sim um ponto da cultura empresarial. Porém, me parece que o discurso está equivocado, incluir segurança deve ser parte do trabalho atual, e não um passo adicional. Quando uma empresa precisa investir em um novo negócio, ela tem que alocar uma equipe adequada em tamanho e competências, além de precisar garantir a alocação de esforço adequada para que o negócio em questão chegue ao mercado na janela de oportunidade planejada.
Você já viu um boteco passar do café coado para o espresso sem ter que comprar uma máquina especial, contratar a consultoria para aprender a usar e como resultado colocar o preço do novo produto de centavos para reais? Dimensionar a equipe para lidar com segurança é parte do processo, seja aumentando os quadros, alocando especialistas pontuais ou mesmo capacitando a equipe atual e dado tempo para que os projetos de desenvolvimento sejam feitos tendo a proteção adequada do produto final como uma de suas premissas.
Isso já aconteceu quando passamos das linguagens direcionadas para mainframe e começamos a nos especializar em modelos adequados para o mundo on line. E ainda demos um passo atrás durante o bug do milênio, quando o salário do pessoal de COBOL e similares pulou em alguns meses. É uma evolução natural do mercado, e enquanto não for tratada dessa forma, os crackers continuarão a furtas dados para suportar crimes, e quem não se proteger deste cenário que está por aí, verá os seus clientes migrarem para um modelo de negócio que atenda às suas necessidades.
Quando uma empresa não acompanha a evolução do mercado e reposiciona os seus produtos de acordo com os anseios dessa nova demanda, ela morre. É uma lei básica de mercado, mas vale a pena relembrar sempre. Segurança em aplicações já deixou de ser um diferencial, é uma necessidade iminente em qualquer lugar onde os processos de negócio são baseados ou suportados por soluções de TI, nos dias de hoje, quase qualquer lugar.
Conclusão
Além dos valores já citados e referenciados ao longo dos parágrafos anteriores, o documento The Financial Impact of Cyber Risk apresenta 50 questões comentadas, onde destaco alguns pontos para serem considerados neste escopo e utilizados por técnicos e gestores para uma discussão em busca de soluções para a segurança de suas aplicações.
Risco legal
Imagine o seguinte cenário, um cliente seu compra um produto na sua loja virtual e tem o cartão de crédito fraudado. Outro cliente, usa uma aplicação sua para gerenciar a força de vendas, e os dados dos clientes dele são expostos na Internet por uma falha no controle de acesso. Com uma análise de segurança das aplicações em questão, não é difícil reproduzir o problema e dar o suporte para que ele processe a sua empresa, pois a responsável pela falha foi o seu produto, e não a forma como ele utilizou.
Avaliar se isso é factível na sua empresa é uma questão de envolver os seus advogados e colocar todos em uma sala para avaliar qual perda estimada existe e o quanto pode ser evitado pela adoção de controles pró-ativos no desenvolvimento das aplicações. Com isso, é hora de chamar outra figura para a cena.
Risco financeiro
Além dos impactos que podem ser imaginados de um ponto de vista legal, podemos aprofundar o questionamento para a ótica financeira. No final, o quanto irá custar uma falha de segurança oriunda das aplicações da sua empresa? O cálculo envolve bem mais do que a questão anterior, ficando um um ponto, pense em execução de seguros e em como a apólice foi contratada, ela abrange também mais uma pessoa para chamar à mesa.
Segurança Integrada
Este é o momento de fazermos o nosso papel, cabe ao CSO e sua equipe discutir os pontos com os demais membros da empresa e juntos chegarem a uma postura positiva em relação a proteção das aplicações. Somente juntando esta audiência na mesma sala, existe a massa crítica necessária para um trabalho que todos compreendam e possam executar em conjunto.
Liderar o processo para a tomada desta decisão é nossa função, temos que ser mais que simples técnicos ou especialistas, afinal já fazemos parte dos processos de negócio de nossas empresas, por mais que alguns autores tentem colocar IT como um custo isolado e não algo como algo que vai de encontro ao fundamento do capitalismo: ganhar dinheiro com negócios que atendam à demanda do mercado.
{ 0 comments }

