Segurança de snaps sob X11

6

Com os snaps chegando ao 16.04 LTS, há um post no blog de Matthew Garrett, um conhecido colaborador do kernel Linux e desenvolvedor do núcleo do sistema operacional, dizendo:

  

... os snaps estão sendo executados sem confinamento e têm acesso a praticamente todo o sistema

Se o objetivo de ter snaps era impor o isolamento de aplicativos de todo o sistema, por que eles conseguem acessar o sistema e executá-lo sem confinamento? Um relatório de bug deve ser arquivado? Há algum passo a ser dado para resolver esse problema?

    
por Safriddle 22.04.2016 / 21:50

2 respostas

8

Isso se refere especificamente a snaps que usam o X11. Em outras palavras, os snaps não são executados sem confinamento, mas se o confinamento do snap incluir o acesso ao X, então sim: ele tem acesso ao X. Ele não envolve snaps que não usam o unity7 ou x11 interfaces. O problema descrito nesse post é uma limitação bem conhecida do X e é uma das razões pelas quais tecnologias alternativas estão sendo desenvolvidas (por exemplo, Mir).

Gustavo Niemeyer escreveu uma postagem no blog que discute isso . Vou citar aqui a posteridade e a integridade:

  

A segurança mental observará que o X11 não é de fato um protocolo seguro. Vários abusos do sistema são possíveis quando entregamos a uma permissão a esta aplicação. Outras interfaces, como home, dariam acesso instantâneo a todos os arquivos não ocultos no diretório $ HOME do usuário (aqueles que não iniciam com um ponto), o que significa que um aplicativo malicioso pode roubar informações pessoais e enviá-las pela rede (supondo ele também define um plug de rede).

     

Alguns podem se surpreender que este é o caso, mas este é um mal-entendido sobre o papel dos snaps e Snappy como uma plataforma de software. Quando você instala o software do arquivo Ubuntu, isso é uma declaração de confiança nos desenvolvedores do Ubuntu e do Debian. Quando você instala os binários do Google Chrome ou MongoDB de seus respectivos arquivos, isso é uma declaração de confiança nesses desenvolvedores (eles têm raiz em seu sistema!). A Snappy não elimina a necessidade dessa confiança, pois uma vez que você concede acesso a um software para seus arquivos pessoais, câmera da Web, microfone, etc., é necessário acreditar que ela não estará usando essas concessões maliciosamente.

     O ponto do confinamento de Snappy nesse quadro é permitir que um ecossistema de software possa controlar exatamente o que é permitido e a quem de uma maneira clara e observável, além do mesmo cuidado processual que todos aprendemos a apreciar o mundo do Linux, não em vez disso. Evitar que as pessoas usem todos os recursos relevantes no sistema simplesmente forçaria a utilização do mesmo software por mecanismos menos seguros, em vez de corrigir o problema.

     

E o que temos hoje é apenas o começo. Essas interfaces logo se tornarão muito mais ricas e mais refinadas, incluindo a seleção de recursos (por exemplo, qual porta serial?), E algumas delas desaparecerão completamente em favor de escolhas mais seguras (Unity 8, por exemplo).

    
por Kyle 22.04.2016 / 22:00
2

O problema não é com snaps, mas com o X11, que é uma tecnologia de 30 anos projetada sem muita consideração de segurança.

Para "resolver o problema" você simplesmente precisa se livrar do X11. O sistema sem ele, como os servidores, pode se beneficiar do isolamento instantâneo no momento. O novo Mir que substituirá o xserver, esperamos que antes e depois, resolva os problemas de segurança do X11.

Você é mais do que bem-vindo a ler a postagem no blog de Matthew Garrett para satisfazer sua curiosidade. Diz:

  

O problema aqui é o sistema de janelas X11. X não possui um conceito real de diferentes níveis de confiança de aplicativo. Qualquer aplicativo pode se registrar para receber pressionamentos de teclas de qualquer outro aplicativo. Qualquer aplicativo pode injetar eventos-chave falsos no fluxo de entrada. Um aplicativo confinado por políticas de segurança strongs pode simplesmente digitar em outra janela. Um aplicativo que não tem acesso a nenhum dos seus dados privados pode esperar até que sua sessão fique ociosa, abra um terminal não confinado e use o curl para enviar seus dados para um site remoto. Enquanto o desktop Ubuntu ainda usa o X11, o formato Snap oferece segurança muito pouco significativa.

    
por mikewhatever 22.04.2016 / 22:03

Tags