14 de setembro de 2005

Least Privilege

Não vou falar na integra o que é least privilege, com um find no google você consegue isso fácil. Vou somente alertar alguns pontos que serão resolvidos com um pouco de vontade e conhecimento do conceito least privilege.

Quando exploramos uma vulnerabilidade em uma aplicação ela irá utilizar os "privilégios" que o usuário que iniciou ela possui, portanto o ideal seria que um usuário que inicia qualquer aplicação tenha privilégio somente para disponibilizar os recursos da aplicação, nada mais que isso.

Não é o que encontramos por aí. Geralmente as aplicações são iniciadas por usuários com privilégios muito superiores, com o mesmo usuário que iniciou uma aplicação pode ser feito tudo na maquina, é comum as pessoas setarem o Administrador da maquina para iniciar aplicações, isso é um perigo enorme.

Esse problema se estende aos usuários e administradores, é comum o desenvolvedor ou administrador da rede/maquina logar com um usuário administrador, quando falo administrador falo de qualquer usuário que tenha privilégios master na maquina.
Isso não deve acontecer, um desenvolvedor deve possuir um usuário que tenha acesso somente aos recursos que ele irá utilizar, um administrador de rede analista de suporte deve possuir dois usuários, um com privilégio mínimo e outro com privilégio master quando for necessário. Como?

No linux é comum se usar o SU para chamar um usuário com mais privilégio para executar alguma atividade que exija mais privilégio, já é uma cultura nos usuários do linux, agora quando falamos em windows a coisa muda um pouco, mais é perfeitamente possível usar um recurso semelhante para conseguir o mesmo resultado.

Podemos usar o "runas" do windows pra isso.

Nenhum comentário: