chmod - altera permissões em um arquivo

1

Eu tenho um Python virtualenv e o executável do Python está localizado no diretório /bin . Neste virtualenv terei que executar algum código inseguro, que pode danificar meu sistema. Eu tentei chmod a-r no virtualenv e agora ninguém pode escrever lá, mas seu diretório pai agora está desprotegido.
Então eu pensei que poderia alterar as permissões em /bin/python , para que ele não pudesse escrever em nenhum lugar, como posso fazer isso?
Eu tentei chmod a-r bin/python , mas ainda é permitido remover arquivos e diretórios, mesmo fora do env.

    
por rubik 12.11.2011 / 14:30

4 respostas

2

Em primeiro lugar, chmod a-r bin/python não impede que o python remova arquivos. Isso impede que qualquer pessoa que não seja proprietário ou não no grupo correto leia esse arquivo.

Se você deseja executar um código não seguro em um "jail", sugiro usar chroot jail . Tenha em mente que, para que o chroot seja executado com eficácia, o executável do python não deve ser executado sob privilégios de root.

    
por 12.11.2011 / 16:26
1

O Python será executado com as permissões do usuário que o invoca, portanto você nunca poderá limitar o que pode tocar, manipular e ler.

    
por 12.11.2011 / 16:33
1

Na verdade, chmod a-r bin/python impede que o proprietário do arquivo, aqueles no arquivo grupo, e todos os outros usuários de ler o arquivo (exceto o superusuário de curso). chmod o-r bin/python impediria todos os usuários, exceto o proprietário e aqueles no grupo do arquivo de ler o arquivo. As permissões de arquivo de um executável não afeta sua capacidade de ler ou editar outros arquivos. Arquivo permissões só determinam quais usuários podem ler, gravar e executar os arquivos ao qual eles são aplicados (e algumas outras coisas ) .

    
por 12.01.2013 / 12:43
0

Eu vejo várias opções:

  • Use uma máquina virtual
  • Executar dentro de um chroot
  • Executar com um usuário diferente
  • Restringir-se a um LKM como apparmor.

eles são compatíveis, então você pode aplicar vários.

Como mencionado acima, um usuário chroot ou diferente não abusa o uso da rede (ab).

Além disso, observe que as restrições impostas ao / usr / bin / python afetarão todos os programas python que você executar. Você pode estar interessado em usar um nome de arquivo diferente para bloquear sem afetar o resto do sistema.

    
por 03.06.2014 / 11:09