Como o SDL ajudou a aumentar a segurança no Office 2010
Como o SDL ajudou a aumentar a segurança no Office 2010
Olá, meu nome é Didier e sou Gerente de Programa de Segurança no Microsoft Security Engineering Center. Nosso foco é ajudar as equipes, como a do Office, a superar os requisitos mínimos do SDL (Security Development Lifecycle, Ciclo de Vida do Desenvolvimento da Segurança). No Office 2010, eu trabalhei junto com os membros da equipe do Office TWC. O Microsoft SDL é um processo de garantia da segurança voltado para o desenvolvimento de software. Como uma iniciativa de toda a empresa e uma política obrigatória desde 2004, o SDL desempenha uma função essencial ao inserir segurança e privacidade no software e na cultura da Microsoft. Pela combinação das abordagens holística e prática, o SDL visa reduzir o número e a severidade das vulnerabilidades no software. O SDL introduz segurança e privacidade em todas as fases do processo de desenvolvimento.
Gostaria de destacar algumas conquistas realizadas durante o desenvolvimento do Office 2010 que ajudarão a proteger nossos clientes.
Há mais de 50 requisitos no SDL que se aplicam às fases do processo de desenvolvimento: treinamento, requisitos, design, implementação, verificação, lançamento e resposta (pós-lançamento). Os requisitos e as recomendações do SDL não são estáticos; eles são alterados regularmente ao sinal de quaisquer ameaças emergentes e melhorias a infraestrutura, ferramentas e processos de suporte. A imagem a seguir mostra as fases do processo do SDL:
Algumas das ferramentas e técnicas usadas para oferecer suporte ao processo do SDL foram lançadas externamente. É possível baixar essas e outras ferramentas do Repositório de Ferramentas do Microsoft SDL (https://www.microsoft.com/security/sdl/getstarted/tools.aspx).
Além de passar pela Avaliação Final de Segurança obrigatória para o processo do SDL, a equipe do Office 2010 também cumpriu os requisitos adicionais emergentes do SDL, como a integração das bibliotecas aprimoradas de estouros de inteiros, compilação com sinalizador avançado de verificação de segurança de buffer (GS) e execução de um número de iterações de teste de fuzzing muito além dos requisitos do SDL. Esses foram os requisitos adicionais do SDL mais marcantes atendidos pelo Office 2010.
Fase de treinamento
A equipe do Office TWC desenvolveu um treinamento personalizado sobre as reduções de estouros de inteiros, o teste de fuzzing de arquivos e a segurança na Web (principalmente Cross-Site Scripting (XSS) e Cross-Site Request Forgery (XSRF)). Esses treinamentos eram obrigatórios em toda a Divisão do Office. Além disso, um treinamento mais específico foi desenvolvido e ministrado para acelerar a integração do FAST, um produto recém-adquirido, às diversas ferramentas e atividades exigidas pelo SDL.
Fase dos requisitos
O Office TWC e o MSEC trabalharam na redefinição da barra de bugs de segurança e do processo de triagem de bugs de segurança para incluir ataques mais recentes. Parte do processo foi aproveitar a experiência das duas divisões Office e TWC para examinar bugs de segurança.
Fase de design
Durante a fase de design, vários itens de trabalho foram identificados para aumentar a confiabilidade dos documentos do Office. Esses itens de trabalho aprimoraram a Central de Confiabilidade agregando Documentos Confiáveis, melhoria no Bloqueio de Arquivos que permite aos usuários escolher quais arquivos desejam abrir ou salvar em sua rede, Validação de Arquivo do Office e Modo de Exibição Protegido. Essas melhorias foram feitas para que os clientes possam confiar nos documentos do Office sem medo de ataques. Além disso, outra meta era oferecer segurança extra e, ao mesmo tempo, evitar avisos desnecessários que provocariam um tédio em relação a esses avisos, reduzindo o valor da segurança desses recursos. Leia mais sobre esses recursos em https://blogs.technet.com/office2010/archive/2009/07/21/office-2010-application-security.aspx.
O Office TWC fez uma simulação de modelo de ameaça em larga escala em toda a divisão, criando e examinando mais de 500 modelos de ameaças. Pela atividade do modelo de ameaça, a equipe identificou e corrigiu mais de 1.000 problemas potenciais de segurança.
Outra área de aperfeiçoamento foi o suporte à Criptografia no Office 2010. Dentre os aperfeiçoamentos estavam o suporte à assinatura digital XAdES, a agilidade criptográfica dos aplicativos cliente do Office permitindo que eles usassem qualquer algoritmo criptográfico disponível pelo sistema operacional (somente Windows Vista e superior) e um novo recurso para as Empresas que habilitam a política de senha de domínio para criptografia de senha.
Fase de implementação
O Office TWC implementou uma solução automatizada capaz de melhorar os relatórios dos resultados da Análise de Código Automatizada do Office (OACR), permitindo que o MSEC e o Office TWC identificassem as equipes de produto do Office com problemas de qualidade de código antes da fase de verificação ou antes de qualquer teste de penetração. Com isso, as equipes podiam direcionar seus esforços para as áreas com mais necessidades.
Com base na análise feita sobre as vulnerabilidades de entrada relatadas nas versões anteriores do Office, uma versão aprimorada do safeInt foi desenvolvida e utilizada no Office 2010.
Uma versão aprimorada da verificação de segurança de buffer (GS avançada disponível no Visual Studio 2010) foi apresentada durante o ciclo de desenvolvimento do Office 2010 e lançada como piloto com 3 grandes componentes do Office 2010. Não foi encontrado nenhum problema sério de regressão, e esse recurso será integrado na próxima versão do Office. O Office 2010 habilita a Prevenção de Execução de Dados (DEP) pela primeira vez e, se você estiver usando o Office 2010 no Windows 7, ele usará o SEHOP, impedindo a exploração de manipuladores de exceção estruturados (https://blogs.technet.com/srd/archive/2009/02/02/preventing-the-exploitation-of-seh-overwrites-with-sehop.aspx).
Foram inseridas outras reduções no SharePoint 2010 para aprimorar a hospedagem multilocatário e as reduções de Cross Site Scripting. As melhorias de segurança mais importantes foram a criação de uma área restrita para as soluções do SharePoint usando uma combinação de Segurança de Acesso do Código e uma área restrita desenvolvida personalizada. Outra redução para Cross Site Scripting foi inserida para usar cabeçalhos de navegador para forçar o download de conteúdo possivelmente não seguro, e nós geramos as permissões necessárias para criar scripts.
Fase de verificação
Foi executado o teste de fuzzing distribuído desde o começo do ciclo de desenvolvimento com refinamento constante nos fuzzers usados. Este esforço persistente tem sido um dos maiores investimentos realizados pelo Office para melhorar a segurança dos analisadores do Office. O uso da Estrutura de Teste de Fuzzing Distribuído expandiu-se agora por toda a empresa e será um dos elementos principais da próxima versão do SDL. O número de iterações de teste de fuzzing no Office 2010 era de mais de 800 milhões em mais de 400 formatos de arquivo, resultando em mais de 1.800 bugs corrigidos. Além do teste de fuzzing de formato de arquivo, a Estrutura de Teste de Fuzzing Distribuído foi usada para fazer o teste de fuzzing em todos os controles ActiveX que acompanham o Office 2010 extensivamente.
Uma infraestrutura automatizada foi configurada durante o Office 2010 para executar a maioria das ferramentas de verificação exigidas pelo SDL (como BinScope) como parte do processo de compilação. Isso possibilitou à Equipe do Office executar essas ferramentas mais frequentemente, permitindo a identificação imediata e a correção mais rápida dos problemas.
Tanto o teste de penetração interno quanto externo foi conduzido durante o ciclo de desenvolvimento do Office 2010. Esse teste teve como alvo os recursos de alto risco identificados durante a fase de design e incluiu diversos produtos, nos SKUs de cliente e servidor.
A perspectiva é de que todos esses esforços juntos tornem o Office 2010 muito mais robusto, e os clientes fiquem tranquilos quando receberem documentos de fontes não confiáveis.
Além desta postagem, a Microsoft publicou há dois meses um white paper explicando como o SDL ajudou na melhoria do Microsoft Office System 2007. Esse white paper está em https://go.microsoft.com/?linkid=9714223.
Obrigado,
Didier Vandenbroeck
Gerente de Programa de Segurança Sênior
Microsoft Security Engineering Center
Esta é uma postagem traduzida no blog. O artigo original está em Como o SDL ajudou a aumentar a segurança no Office 2010