Menor Privilégio - Blog do Prof. PC | Meus achados preciosos · Mudar senhas do sistema ! Baixar...

27
1 Menor Privilégio Prof. Paulo Cesar F. de Oliveira, BSc, PhD

Transcript of Menor Privilégio - Blog do Prof. PC | Meus achados preciosos · Mudar senhas do sistema ! Baixar...

1

Menor Privilégio

Prof. Paulo Cesar F. de Oliveira, BSc, PhD

2

Capítulo 05 Menor Privilégio

28/05/14 © P C F de Oliveira 2014

Seção 1.1 Introdução

3 28/05/14 © P C F de Oliveira 2014

Capítulo 05 Menor Privilégio

4 28/05/14 © P C F de Oliveira 2014

Capítulo 05 Menor Privilégio

Programa não deve ser executado com mais privilégio do que o necessário para realizar uma tarefa

5 28/05/14 © P C F de Oliveira 2014

Princípio do Menor Privilégio

Todo programa e todo usuário de sistema deve operar com um conjunto mínimo de privilégios necessários para concluir o trabalho. Primeiramente, este princípio limita os danos que podem resultar de um acidente ou de um erro. Ele também reduz ao mínimo o número de potenciais interações entre os programas privilegiados para a operação correta, de modo que usos não-intencionais, indesejados ou impróprios de privilégio são menos prováveis de ocorrer.

Capítulo 05 Menor Privilégio

Saltzer, J.; Schroeder, M. (1975)

6 28/05/14 © P C F de Oliveira 2014

Capítulo 05 Menor Privilégio

LOCAL SYSTEM NON-ADMIN

ADMIN / SYSTEM

§  Ler arquivos do usuário

§  Mudar senhas do sistema

§  Baixar arquivos maliciosos

§  Qualquer coisa

NON-ADMIN

§  Ler arquivos do usuário

§  Mudar senhas do sistema

§  Baixar arquivos maliciosos

§  Possibilidades reduzidas

7

Capítulo 05 Menor Privilégio

28/05/14 © P C F de Oliveira 2014

Seção 1.2 Menor Privilégio no Mundo Real

8 28/05/14 © P C F de Oliveira 2014

Capítulo 05 Menor Privilégio

Ataques da

Internet

9 28/05/14 © P C F de Oliveira 2014

Capítulo 05 Menor Privilégio

Ataques da Internet

Vírus, Trojans, Worms

§  Vírus: programa que se auto-reproduz e copia sua carga para os usuários

§  Trojan: programa que contém função inesperada ou oculta que é prejudicial

§  Worm: programa que replica-se automaticamente impedindo sua remoção

Desfiguração de Servidores

§  Ataque a um site que muda a aparência visual dele ou uma de suas páginas

§  Geralmente conhecida como “grafitagem” eletrônica

10 28/05/14 © P C F de Oliveira 2014

Capítulo 05 Menor Privilégio

Back Orifice

§ Permite invasor remoto:

§ Reiniciar computador

§ Executar aplicativos

§ Visualizar conteúdo de arquivos

§ Instalação tenta se gravar diretório Windows

§ Só administrador

11 28/05/14 © P C F de Oliveira 2014

Capítulo 05 Menor Privilégio

SubSeven

§ Permite invasor acessar a máquina sem conhecimento

§ Cria uma cópia dele mesmo no diretório Windows e atualiza Win.ini e System.ini

§ Só administrador

12 28/05/14 © P C F de Oliveira 2014

Capítulo 05 Menor Privilégio

FunLove

§ Quando executado concede aos usuários acesso a todos arquivos modificando código de acesso ao kernel do SO

§ Grava um arquivo no diretório de sistema aplicando um patch no kernel

§ Só administrador

13 28/05/14 © P C F de Oliveira 2014

Capítulo 05 Menor Privilégio

ILoveYou

§ Propaga-se com o Microsoft Outlook

§ Grava a si mesmo no diretório do sistema

§ Só administrador

14 28/05/14 © P C F de Oliveira 2014

Capítulo 05 Menor Privilégio

Desfiguração de Servidores

§ Desfigurar sites famosos

15 28/05/14 © P C F de Oliveira 2014

Capítulo 05 Menor Privilégio

Melhores Práticas

Aplicação fraudulenta resultar em uma violação da segurança, o processo deve ser dividido entre dois ou mais indivíduos

Em vez de uma pessoa ter responsabilidade

exclusiva de uma função, pessoas são

periodicamente movidas de uma responsabilidade

de trabalho para outra

Somente uma quantidade mínima de privilégios necessários

para realizar sua função de trabalho deve ser dada a cada usuário

Se uma condição não for explicitamente atendida, então ela deve ser rejeitada

16 28/05/14 © P C F de Oliveira 2014

Capítulo 05 Menor Privilégio

Maioria dos usuários executa todo o tempo como membros

do grupo Administradores (Admins, root no UNIX)

Muitas aplicações Windows requerem

privilégios de administrador quando não

é necessário (least privilege incompatibility –

LPI)

Ameaças de segurança aumentaram: comprometimento da aplicação do usuário è comprometimento do sistema e.g. estouro de buffer no Instant Messenger

Realidade Sistema Windows

17 28/05/14 © P C F de Oliveira 2014

Seção 1.3 Por quê aplicações requerem privilégios elevados?

Capítulo 05 Menor Privilégio

18 28/05/14 © P C F de Oliveira 2014

Capítulo 05 Menor Privilégio

ACL (questões) Privilégio (questões)

Uso dos Segredos da Local Security Authority (LSA)

Por quê privilégio elevado?

19 28/05/14 © P C F de Oliveira 2014

Capítulo 05 Menor Privilégio § Usuário “Everyone”

§ Somente operação de leitura deveria ser configurada

§ Estabelecer harmonia entre usabilidade e segurança

§ Usabilidade: aplicativo funciona realizando operação de leitura

§ Segurança: aplicativo lê apenas o arquivo e nada mais

§ Solução:

§ Abrir recursos com permissões necessárias e não mais

§ Não gravar dados de usuário em áreas do SO

§ Atenuar/afrouxar ACLs

ACL (questões)

20 28/05/14 © P C F de Oliveira 2014

Capítulo 05 Menor Privilégio

§ Se usuário necessitar de privilégio específico (e.g. fazer Backup)

§ Administrador deve ser cuidadoso ao adicionar privilégios perigosos às contas de usuários

§ Administrador não deve exigir que seus usuários tenham quantidade excessiva de privilégios desnecessários

§ Solução:

§  Somente dê privilégio necessário para terminar uma tarefa

§ Não distribuir privilégio para todo mundo

Privilégios (questões)

21 28/05/14 © P C F de Oliveira 2014

Capítulo 05 Menor Privilégio § LSA pode armazenar dados

secretos de um aplicativo

§ Para usar segredos da LSA processo deve ser membro do grupo Administradores

§ Solução:

§ Usar uma API de proteção de dados (DPAPI – data protection API)

§ Aplicativo não requer usuário seja administrador para acessar dados secretos

§ Dados são protegidos por chave associada ao usuário

Uso dos Segredos da LSA

22 28/05/14 © P C F de Oliveira 2014

Seção 1.4 Processo para determinar privilégio adequado

Capítulo 05 Menor Privilégio

23 28/05/14 © P C F de Oliveira 2014

Capítulo 05 Menor Privilégio

§ Encontrar os recursos usados pelo aplicativo

§  Crie uma lista de todos recursos usados pelo aplicativo

§  Dados configuração §  Diretório de dados onde

gravar arquivos §  Diretório do programa

§  Estabeleça o tipo de acesso para cada um deles

§ Encontrar APIs privilegiadas usadas pelo aplicativo

§  Analise quais são elas § Qual conta é requerida § Determine se aplicativo

requer uma conta de administrador para ser executado

§ Ou se a tarefa do aplicativo requer conta de sistema local para execução

Passo 1

Passo 2

Passo 3

24 28/05/14 © P C F de Oliveira 2014

Capítulo 05 Menor Privilégio

§ Obtenha conteúdo do token

§ Determine os SIDs (security identifier) e privilégios no token da conta determinada no passo anterior

§ Todos os SIDs e privilégios são necessários?

§  Faça que membros da equipes de projeto, desenvolvimento e teste analisem cada SID e privilégio no token e determinem se cada um é exigido

§  Comparar lista de recursos e API (passos 1 e 2) com conteúdo token (passo 4)

§ Ajuste o token §  Reduza capacidade token

§  Permitir contas menos privilegiadas executar aplicativo

§  Remover privilégios desnecessários permanentemente

Passo 4

Passo 5

Passo 6

Token: estrutura de dados criada quando usuário se loga no sistema (após autenticação)

25 28/05/14 © P C F de Oliveira 2014

Seção 1.5 Considerações Finais

Capítulo 05 Menor Privilégio

26 28/05/14 © P C F de Oliveira 2014

Capítulo 05 Menor Privilégio

Evitar mau hábito de executar serviços como

administrador

Desafio do menor privilégio: superar obstáculos no desenvolvimento do aplicativo

Projete, construa e teste com menor privilégio

Elevar privilégios somente quando necessário, e libere-os quando seus objetivos forem cumpridos

Aplicativos legados: execute-os em ambientes virtualizados

Aplicativo seguro: aquele que faz o que deve fazer e nada mais

Texto – Fonte Arial Normal – Máx.14pt / Mín.12pt – Preto – Centralizado

27