modelo de segurança da entrada de senha do Linux

5

Sempre que um aplicativo do Windows quiser fazer algo que exija privilégios de administrador, minha tela fica preta e um prompt aparece, perguntando se desejo conceder privilégios de administrador. Eu entendo este modelo de segurança: ele depende do usuário ter controle sobre o teclado e o mouse. Privilégios vão para quem tem controle de entrada. Se um aplicativo ganhar o controle de entrada enquanto o prompt de segurança estiver ativo, ele ganhará o controle dos privilégios de administrador, mesmo que não saiba minha senha.

Por outro lado, no Linux, o comando sudo é o equivalente. Quando um aplicativo solicita privilégios, ele solicita que eu digite minha senha. Assim, roubar a entrada é insuficiente para obter privilégios totais; um aplicativo deve roubar minha senha. No entanto, eu não entendo esse modelo. Parece que esse modelo apenas facilita roubar minhas credenciais, porque eu estou dando minha senha constantemente. O que impede um aplicativo malicioso de colocar um prompt falso e roubar minha senha, ganhando privilégios para sempre?

  1. Um prompt de segurança é vinculado de alguma forma ao aplicativo que o solicita?
  2. Se um aplicativo puder representar um prompt de segurança ou disparar um aviso de segurança enquanto finge ser outro aplicativo, presume-se que o aplicativo já tenha controle total do computador e não possa aumentar seus privilégios aprendendo minha senha?
  3. Se eu confiar em um aplicativo uma vez, será que esse aplicativo roubará minha senha?
  4. O Linux (teoricamente) impede keyloggers não-root, ou um keylogger não-root pode farejar minha senha mesmo quando estou digitando em um prompt de segurança legítimo?

Eu não entendo o que impede um programa mal-intencionado malicioso de arrancar privilégios de uma conta de administrador. O modelo de segurança pode ser simplesmente que todos os programas executados por um administrador são considerados como tendo acesso ao root, se desejarem, e que os administradores não podem confiar que a raiz / não-raiz seja uma barreira significativa. O Windows é executado sob essa premissa na prática. Não sei dizer se o Linux tenta dar garantias adicionais.

    
por Gilles 13.07.2015 / 23:48

1 resposta

2

Eu li com o Wayland a infra-estrutura para proibi-lo, mas agora ainda é um problema.

Basta ver

xinput test-xi2

O primeiro artigo que li sobre o problema:

link

Discussão adicional e mais profunda:

link

    
por 14.07.2015 / 00:22