Restringir o acesso do vinho ao caminho do wineprefix

2

Existe uma maneira de restringir o Wine no wineprefix para que ele não possa ler arquivos fora dele?

Qual é uma boa maneira de proteger meu sistema de softwares potencialmente mal-intencionados que podem ser executados através do vinho, se é que é possível?

Eu só quero evitar que meu diretório pessoal seja apagado por janelas aleatórias .exe.

    
por Fedcomp 22.11.2015 / 08:41

1 resposta

3

Lendo sua pergunta Eu concordei com sua preocupação e acho que é mais fácil e seguro o comportamento padrão quando você executa aplicativos do Windows em uma máquina virtual (como o virtualbox [ 0 ] por exemplo) que pode ser totalmente isolado do seu sistema (e da rede) ou com um conjunto limitado de pastas compartilhadas.

Do outro lado sempre é possível usar o vinho como um usuário diferente , digamos que o MrWine seja um grupo diferente do seu, para dar a esse usuário o acesso ao seu caminho do vinho local , feche seus diretórios e arquivos para o grupo de MrWine (simplesmente para os outros do mundo unix [ 1 ] como é por padrão). Você pode fechar você mesmo , mas você ainda terá uma parte do sistema acessível ao vinho. É raro que um malware possa ser projetado ou efetivo para isso, mas se você quiser ter mais certeza de que precisa executar novamente em um ambiente fechado separado, como uma máquina virtual.

Pesquisando na internet, encontrei um link interessante [ 2 ] que está de acordo com esta linha e que dão um procedimento passo a passo, com a diferença de que usará o diretório de vinhos do usuário MrWine. Abaixo das etapas, com algumas modificações não testadas, você também pode se referir diretamente ao antigo post original.

  1. Instalar vinho
  2. Crie e configure uma conta para MrWine (o comando deve ser diferente)

    sudo adduser --disabled-login --shell /sbin/nologin MrWine 
    sudo usermod --append --groups audio wine
    
  3. Permita que sua própria conta de usuário inicie comandos na conta Mrwine com sudo

    sudo env VISUAL=/usr/bin/gedit visudo   # maybe sudo visudo is enough
    FedComp ALL=(MrWine) NOPASSWD: ALL      # Use your linux names here
    
  4. Interrompa o uso de qualquer outra conta de usuário no Wine, por isso não é possível executar o wine por erro sem o sudo e com seu próprio usuário

    sudo chown -R MrWine:MrWine ~/.wine  
    sudo chmod -R o-rwx ~/.wine
    
    # The following lines can be dangerous if there are files 
    # called wine* in /usr/bin  directory that are not of the wine program  
    
    sudo chown root:wine /usr/bin/wine*
    sudo chmod o-x /usr/bin/wine*
    
  5. Você pode querer alterar o formulário de umask 022 para 027

    umask 027 
    
  6. Crie o seu lançador para vinho em que você dá o acesso gráfico para o servidor MrWine ao X (com xhost +SI:FedComp:MrWine ). Melhor em um script semelhante ao seguinte (vamos chamá-lo RunWine.sh , chmod u+x RunWine.sh )

    #!/bin/bash
    xhost +SI:FedCom:MrWine   # use the couple of your username
                              # and the one you chose for wine
    
    EnvOptions="HOME=/home/MrWine USER=MrWine USERNAME=MrWine LOGNAME=MrWine " 
    sudo -u MrWine env "$EnvOptions" wine "$@"
    
  7. Instale e execute um programa como MrWine

    sudo chown MrWine:MrWine /home/MrWine/.wine/drive_c/My\ Installer.exe
    ~/RunWine.sh "C:\My Installer.exe"
    ~/RunWine.sh "C:\Program Files\ProgDir\ProgName.exe" 
    

Por favor, consulte o blog original para mais explicações [ 2 ].

    
por 22.11.2015 / 10:01

Tags