Segurança de fragmentos sob x11 -- 16.04 campo com snap camp askubuntu Relacionado O problema

Security of snaps under X11


8
vote

problema

português

com snaps chegando a 16.04 lts, ​​há um post de Matthew Garrett, um conhecido colaborador do kernel do Linux e Core OS Developer, dizendo:

.

... os snaps estão funcionando não confinados e têm acesso a praticamente todo o sistema

Se o ponto de ter Snaps era para impor o isolamento do aplicativo de todo o sistema, por que eles são capazes de acessar o sistema e serem executados? Um relatório de bug deve ser arquivado? Algumas etapas serão tomadas para resolver esse problema?

english

With snaps coming to 16.04 LTS, there is a blog post by Matthew Garrett, a well known Linux kernel contributor and core OS developer, saying:

...snaps are running unconfined and have access to pretty much the entire system

If the point of having snaps was to enforce app isolation from the whole system, why are they able to access the system and run unconfined? Should a bug report be filed? Are any steps going to be taken to address this problem?

     
   
   

Lista de respostas

9
 
vote

Isso se relaciona especificamente a Snaps que usam x11. Em outras palavras, os SNAPs são não estão agregados, mas se o confinamento do snap inclui o acesso a X, então sim: ele tem acesso a X. Não envolve os snaps que não usam o < CÓDIGO> ABCDEFGHIJKLMNABCDEFGHIJKLMN0 ou ABCDEFGHIJKLMNABCDEFGHIJKLMN1 Interfaces. A questão descrita nessa postagem do blog é uma limitação bem conhecida de X, e é uma das razões que as tecnologias alternativas estão sendo desenvolvidas (por exemplo, MI).

gustavo niemeyer escreveu um Bom blog post que discute isso . Eu vou citar aqui para a posteridade e completude:

.

A mentalidade de segurança observará que o X11 não é de fato um protocolo seguro. Um número de abusos do sistema são possíveis quando entregamos um aplicativo essa permissão. Outras interfaces, como a casa, dariam o acesso ao encaixe a todos os arquivos não ocultos no diretório de $ HOME do usuário (aqueles que não começam com um ponto), o que significa que um aplicativo malicioso pode roubar informações pessoais e enviá-lo sobre a rede (assumindo Também define um plugue de rede).

Alguns podem ser surpreendidos 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 do Ubuntu, isso é uma declaração de confiança nos desenvolvedores do Ubuntu e do Debian. Quando você instala os binários de cromo ou MongoDB do Google de seus respectivos arquivos, isso é uma declaração de confiança nesses desenvolvedores (eles têm raízes em seu sistema!). Snappy não está eliminando a necessidade dessa confiança, pois uma vez que você dá um acesso de software a seus arquivos pessoais, câmera da Web, microfone, etc, você precisa acreditar que não estará usando maliciosamente esses subsídios.

O ponto do confinamento do Snappy nessa imagem é permitir que um ecossistema de software que possa controlar exatamente o que é permitido e a quem de forma clara e observável, além do mesmo cuidado processual que todos aprendemos a apreciar o mundo do Linux, não em vez disso. Prevenir que as pessoas usem todos os recursos relevantes no sistema simplesmente os forçariam a usar esse mesmo software sobre 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 muito finas, incluindo a seleção de recursos (por exemplo, que porta serial?), E algumas delas desaparecerão completamente a favor de opções mais seguras (unidade 8, por exemplo).

 

This specifically relates to snaps that use X11. In other words, snaps are not running unconfined, but if the confinement of the snap includes access to X, then yeah: it has access to X. It does not involve snaps that don't use the unity7 or x11 interfaces. The issue described in that blog post is a well-known limitation of X, and is one of the reasons alternative technologies are being developed (e.g. Mir).

Gustavo Niemeyer has written a good blog post that discusses this. I'll quote here for posterity and completeness:

The security minded will observe that X11 is not in fact a secure protocol. A number of system abuses are possible when we hand an application this permission. Other interfaces such as home would give the snap access to every non-hidden file in the userxe2x80x99s $HOME directory (those that do not start with a dot), which means a malicious application might steal personal information and send it over the network (assuming it also defines a network plug).

Some might be surprised that this is the case, but this is a misunderstanding about the role of snaps and Snappy as a software platform. When you install software from the Ubuntu archive, thatxe2x80x99s a statement of trust in the Ubuntu and Debian developers. When you install Googlexe2x80x99s Chrome or MongoDB binaries from their respective archives, thatxe2x80x99s a statement of trust in those developers (these have root on your system!). Snappy is not eliminating the need for that trust, as once you give a piece of software access to your personal files, web camera, microphone, etc, you need to believe that it wonxe2x80x99t be using those allowances maliciously.

The point of Snappyxe2x80x99s confinement in that picture is to enable a software ecosystem that can control exactly what is allowed and to whom in a clear and observable way, in addition to the same procedural care that wexe2x80x99ve all learned to appreciate in the Linux world, not instead of it. Preventing people from using all relevant resources in the system would simply force them to use that same software over less secure mechanisms instead of fixing the problem.

And what we have today is just the beginning. These interfaces will soon become much richer and more fine grained, including resource selection (e.g. which serial port?), and some of them will disappear completely in favor of more secure choices (Unity 8, for instance).

 
 
   
   
2
 
vote

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

Para "abordar o problema", você simplesmente precisa se livrar do X11. Sistema sem ele, como servidores, pode se beneficiar do isolamento de Snaps agora. O novo mir que irá substituir o xserver, espero que, mais cedo, mais tarde, é suposto abordar os problemas de segurança do X11 .

Você é mais bem-vindo para ler Matthew Garrett's post Para satisfazer sua curiosidade. Diz:

.

O problema aqui é o sistema X11 Windowing. X não tem conceito real de diferentes níveis de confiança de aplicação. Qualquer aplicativo pode se registrar para receber pressionamentos de tecla de qualquer outro aplicativo. Qualquer aplicativo pode injetar eventos de chave falsos no fluxo de entrada. Um aplicativo que é confinado por políticas de segurança fortes pode simplesmente digitar em outra janela. Um aplicativo que não tem acesso a qualquer um dos seus dados privados pode esperar até que sua sessão esteja inativa, abra um terminal não confinado e use a Curl para enviar seus dados para um site remoto. Desde que o Desktop do Ubuntu ainda use o X11, o formato SNAP fornece uma pequena segurança significativa.

 

The problem is not with snaps, but with X11, which is 30 year old technology designed without much security considerations.

To "address the problem" you simply need to get rid of X11. System without it, such as servers, can benefit from snaps isolation right now. The new Mir that will replace xserver, hopefully sooner rather then later, is supposed to address the security problems of X11.

You are more then welcome to read Matthew Garrett's blog post to satisfy your curiousity. It says:

The problem here is the X11 windowing system. X has no real concept of different levels of application trust. Any application can register to receive keystrokes from any other application. Any application can inject fake key events into the input stream. An application that is otherwise confined by strong security policies can simply type into another window. An application that has no access to any of your private data can wait until your session is idle, open an unconfined terminal and then use curl to send your data to a remote site. As long as Ubuntu desktop still uses X11, the Snap format provides you with very little meaningful security.

 
 
 
 

Perguntas relacionadas

1  Como proteger o código em Snaps de acesso não autorizado?  ( How to protect code in snaps from unauthorised access ) 
Eu observei que uma vez que um snap é instalado, todo o código está acessível no diretório / snap / snap_package / atual. Existe uma maneira de impedir o aces...

2  Gitkraken Snap - Faça login com o botão GitHub não funciona  ( Gitkraken snap sign in with github button not working ) 
Eu instalei o mais recente Snap Gitkraken (4.1.1) do software Ubuntu em um novo Ubuntu 18.04.01. Quando corro e tento entrar com o GitHub, nada acontece, depo...

0  Altere a filial de arquivos dentro de um minetest de raiz para mim  ( Change the owership of files inside a minetest snap from root to me ) 
Eu tentei usar o terminal, mas tudo que recebo é arquivo ou diretório não existe. A localização no meu computador é /snap/minetest-luk3yx/6/share/minetest/ga...

16  Não é possível instalar aplicativos Snap  ( Cant install snap apps ) 
Eu atualizei de 14.04.x ​​para 16,04 (64 bits) no fim de semana. Omgubuntu! apenas tinha uma postagem sobre como as notas podem ser instaladas como um snap. ...

17  São snaps instalados sistema largo ou por usuário?  ( Are snaps installed system wide or per user ) 
Os SNAPS instalou o sistema, ou são instalados apenas para o usuário que está logado e instalando-os? no Ubuntu 18.04? Eu não vejo nenhuma opção como o ABCD...

3  A instalação do Snap da ABOX falha  ( Anbox snap installation fails ) 
Estou tentando instalar a caixa no meu novo Ubuntu 16.04 usando as instruções de Esta página . Parecia funcionar, mas não tenho ícone no meu traço, então sus...

0  Como adquirir acesso de gravação a blocos de dispositivos como um aplicativo de pressão?  ( How to acquire write access to device blocks as a snap app ) 
Eu tenho concedido block-devices no meu snapcraft.yaml para ser capaz de gravar para /dev/sdx do meu aplicativo. O aplicativo (NixWriter) está atualment...

10  O Ubuntu não conclui a instalação do pacote usando o Snap  ( Ubuntu fails to complete package install using snap ) 
Quando tento instalar um aplicativo, não posso e me diz: Cannot install "spotify": snap "spotify" has "install-snap" change in progress. ...

2  Fatmas pagas para o Desktop Ubuntu  ( Paid snaps for ubuntu desktop ) 
Você pode publicar um snap pago para o Desktop Ubuntu ou é esse recurso ainda não disponível no Ubuntu Store? Não consigo ver nenhuma opção em https://dash...

2  Falha ao tentar instalar qualquer estalo  ( Failure when trying to install any snap ) 
Estou tentando executar o seguinte comando: sudo snap install core mas recebo uma mensagem de erro: error: cannot perform the following tasks: - Mou...




© 2022 pergunte.org All Rights Reserved. Casa de perguntas e respostas todos os direitos reservados


Licensed under cc by-sa 3.0 with attribution required.