Nuvem Privada APPS On-Premise Proteção e gerenciamento contra ameaças Nuvem Pública Online Proteção aos dados sensíveis Acesso Seguro aos Recursos DISPOSITIVOS • Não diga isso nem brincando.... • Ao adotar um modelo como SDL o primeiro passo é o treinamento básico de segurança para toda a equipe de desenvolvimento • O projeto já nasce com “segurança embutida” pois a validação ocorre em cada fase Windows Store • Desenvolva suas aplicações com base em um framework de segurança (já ouviu falar de SDL?) • Valide suas aplicações com ferramentas de segurança • BinScope Binary Analyzer Valida o uso correto de algumas funções de segurança recomendada via SDL, como: SafeSEH Exception Handling Protection, AllowPartiallyTrustedCallersAttribute e outras. Attack Surface Analyzer Tira um “retrato” do sistema antes da aplicação ser instalada e depois compara com o estado após a instalação. • Windows 8 com Vistual Studio 2012 fornecem um conjunto de APIs, controle e ferramentas para minimizar vulnerabilidades de aplicações e mitigar problemas comuns de segurança • Como padrão você não precisa fazer NADA...isso NADA para usar algumas características de segurança que antes precisavam ser ativadas, como: • /GS (Buffer Security Check) – detecta buffer overrun • /DYNAMICBASE – para uso de ASLR (Address Space Layout Randomization) • DEP (Data Execution Prevention)- quando implementado em nível de software previne código malicioso de tirar vantagem de “exception-handling” • SEHOP (Structured Exception Handling Overwrite Protection) – bloqueia exploits que usam técnicas SEH (Structured Exception Handler) • Através da declaração de App Capabilities é possível limitar o escopo de ação da aplicação. • Se sua aplicação precisa acessar só alguns arquivos então não tem sentido requisitar acesso total a uma pasta e ainda com FULL CONTROL.... • FileOpenPicker class • Páginas remotas que sua aplicação precisa (porventura) interagir e que usam iFrame adicionam uma camada de risco • Quando a entrada da sua aplicação vier de um conteúdo externo, faça a verificação (sanitization) para remover conteúdo executável Converte o script em conteúdo HTML estático Converte o script em texto • Se sua aplicação aceita entrada ou dados vindo da Web, não deixe que este conteúdo faça acesso ao WinRT (Windows Runtime)....sim, como padrão o Windows 8 permite que o conteúdo da sua app acesse o runtime. • Coloque o conteúdo recebido em sandbox iframe • Autentique o acesso a serviços da nuvem • Sua aplicação pode usar GetAppReceiptAsync para validar a app obtida de um serviço de nuvem (App Store) • A validação ocorre via checagem de certificado usando a URL abaixo Aqui vai ser o CertificateID do recipiente • Outros métodos de autenticação incluem: • Shared certificate stores (Windows Store apps) http://msdn.microsoft.com/enus/library/windows/apps/xaml/hh465029.aspx • Web authentication broker http://code.msdn.microsoft.com/windowsapps/Web-Authentication-d0485122 • Isso foi só uma visão geral, próximo passo é ler o paper: http://msdn.microsoft.com/en-us/library/windows/apps/hh849625.aspx • http://blogs.technet.com/yuridiogenes http://yuridiogenes.wordpress.com