Desenvolvimento

Ξ 2 comentários

Seu desenvolvedor entrega aplicativos web seguros? Como você sabe?

publicado por Eduardo Lanna

Muito já se falou e ainda será comentado sobre o crescente movimento de ataques de hackers maliciosos na internet, e sobre os impactos que causam danos desde os mais simples, como a alteração de conteúdo de páginas na web (defacing), passando pela interrupção de serviços (DDoS), até a obtenção de informações sigilosas em bancos de dados, contas de e-mail, ou dados dos administradores das redes e de ambientes servidores, que são alvos de hackers.

Como o risco de novos ataques poderia ser minimizado? Onde estariam as falhas de segurança? Um olhar sobre os orçamentos de TI das empresas vítimas dessas ofensivas pode confirmar investimentos significativos em políticas de segurança e infraestrutura, além de serviços profissionais especializados, e mesmo assim elas têm enfrentado problemas.

Uma pesquisa do IDC projeta um crescimento de 13% no mercado de TI em relação a 2010, movimentando 39,1 bilhões de dólares, com destaque para Hosting, Infrastructure Services, e Hosted Application Management que crescerão mais de 15%. A segurança tem sua fatia nesta projeção, mas enquanto isso o Brasil ainda figura no terceiro lugar do hanking de fraudes eletrônicas segundo o Global Fraud Report da revista The Economist, atrás de China e Colômbia, que lideram o ranking com mais de 94 % de incidentes.

O que acontece atualmente é que, apesar dos esforços já realizados na segurança de infraestrutura, a raiz das falhas de segurança mais exploradas está oculta na camada das aplicações web, devido à forma como as empresas contratam seus projetos de desenvolvimento de sistemas que sustentarão suas operações na internet.

A necessidade de atender às demandas do mercado com a oferta de novos serviços web mais atraentes, com melhores tecnologias e recursos, ou mais conectados às redes sociais, ou, enfim, integrados a outras plataformas, leva as áreas de negócio a priorizar a especificação de requisitos funcionais para as fábricas de software, deixando de lado a inclusão de requisitos que garantam a segurança no uso daquelas funcionalidades.

O Pomenon Institute divulgou em abril de 2011 sua pesquisa anual “State of Web Application Security”, e mostra que entre as 638 grandes empresas Americanas consultadas, 70% dos gestores não acreditam que os investimentos realizados em segurança de aplicações sejam suficientes. Apenas 18% do orçamento fora dedicado à segurança das aplicações web, considerada a parte mais vulnerável dos sistemas, e o restante foi para segurança da infraestrutura, rede e banco de dados. A pesquisa também mostra que 55% acreditam que os desenvolvedores não têm tempo para resolver problemas de segurança em seus projetos.

Se os administradores brasileiros acreditam que as fábricas de software estão preocupadas com a segurança, melhor saber mais sobre Secure Software Development Lifecycle (SDLC), e perguntar aos seus fornecedores “como” este conceito é tratado em seu processo de desenvolvimento.

Ora, se os clientes não especificarem requisitos de segurança no uso das funcionalidades do projeto, o desenvolvedor não vai se preocupar com isso.

Vale lembrar que especificar o uso de senhas seguras ou de Certificados Digitais para criptografia de dados transacionados entre o usuário e a aplicação web (SSL) não basta. Na verdade, estes requisitos podem ser considerados como recursos básicos de segurança funcional, assim como outras funcionalidades de uso. Eles não evitam e nem impedem que sejam realizados ataques a partir de certas vulnerabilidades exploráveis pelo uso de um simples browser navegando pela aplicação web em qualquer parte do mundo. Estas vulnerabilidades são muitas e já são bem conhecidas, se não pelo seu desenvolvedor ou pelo seu gerente de projetos, certamente o são pelos agentes maliciosos.

A recomendação de melhor prática para prevenir o risco de ataques é medir a qualidade da segurança entregue pelo desenvolvedor segundo a perspectiva de um atacante, e pelo uso dos melhores padrões de avaliação de segurança disponíveis como OWASP Top10 ou os requisitos do PCI-DSS. Só assim é possível saber o grau de risco de um projeto de desenvolvimento antes de entrar em produção.

É importante não confundir “funcionalidades de segurança”, que são características funcionais demandadas pelo cliente (SSL, senha forte, token, etc.), com “segurança das funcionalidades” de uso, que é a capacidade do código executável da aplicação web de resistir às tentativas de ataque, cujo objetivo é corromper o fluxo das transações solicitadas pelo cliente. São abordagens completamente diferentes, mas não menos importantes, apesar de muitas vezes negligenciadas pelo cliente, e também pela fábrica de software.

É necessário, portanto, garantir a qualidade do código executável da aplicação entregue pelo desenvolvedor, e medir os indicadores da segurança na homologação dos requisitos funcionais do projeto, assim como no ambiente de produção.

Veja o caso de um banco, por exemplo: se ao avaliar as entregas do seu desenvolvedor ele sempre encontrar vulnerabilidades que deveriam ter sido eliminadas na fase de construção do código da aplicação, surge um indicativo da pouca maturidade daquela fábrica de software. Com o passar do tempo e com a priorização da segurança em vários segmentos da economia, fica claro quais fornecedores têm melhor maturidade para projetos críticos, e, consequentemente, cria-se um diferencial qualitativo destes fornecedores.

A introdução de processos que sustentam um ciclo de desenvolvimento seguro também reduz sensivelmente o custo do projeto para a fábrica de software, como conseqüência de um processo natural de melhoria da qualidade, que traz maturidade ao time de desenvolvimento. A percepção desta melhora na qualidade se torna cada vez mais relevante para o cliente, principalmente na hora de escolher fornecedores para projetos mais complexos e críticos.

Além disso, o custo de manutenção de sistemas que apresentam falhas de segurança em produção é comprovadamente muitas vezes mais elevado, e pode ser imprevisível se as falhas contribuírem para um cenário de ataque com grave impacto ao negócio.

Autor

Eduardo Lanna é diretor comercial da REDE SEGURA TECNOLOGIA, especializada em segurança de aplicações web.

Eduardo Lanna

Comentários

2 Comments

  • Excelente matéria. É impressionante como a maioria das aplicações desenvolvidas não possuem um mínimo de segurança mesmo com tanta informação. O OWASP Top10 é o mínimo que os desenvolvedores devem acompanhar para evitar problemas graves de ataques. Os ataques de SQL Injection continuam sendo os mais explorados mesmo após tantos anos de divulgação e alertas das empresas de segurança.

  • Falou, falou e falou e não disse nada.
    Esse trecho mostra que o site está escrevendo artigos enchendo linguiça pra ter ibope (page views): “A introdução de processos que sustentam um ciclo de desenvolvimento seguro também reduz sensivelmente o custo do projeto para a fábrica de software, como conseqüência de um processo natural de melhoria da qualidade, que traz maturidade ao time de desenvolvimento.”
    Acho que deveria ser mais prático, mais objetivo….

You must be logged in to post a comment.

Busca

Patrocínio

Publicidade



Siga-nos!

Newsletter: Inscreva-se

Para se inscrever em nossa newsletter preencha o formulário.

Artigos Recentes