É seguro para um programa adicionar seu diretório bin ao PATH?

1

Estou construindo um programa que depende de uma série de programas externos (pandoc, samtools, vcflib, etc.). Para garantir que as versões corretas estejam sendo usadas, fiz o download dos binários para todos eles e os coloquei em um diretório bin , incluído no programa. Quando o programa é executado, quero ter certeza de que essas são as versões usadas, independentemente de outras versões instaladas do sistema.

Geralmente, é considerado seguro para o programa executar um comando como PATH=~/my_program/bin:$PATH para adicionar seus próprios binários ao início do $PATH ?

Eu vi perguntas relacionadas aqui e aqui , mas não ficou claro se a implementação isso era realmente aconselhável ou não, ou se poderia haver conseqüências não intencionais sob essas circunstâncias.

    
por user5359531 12.01.2017 / 18:22

1 resposta

3

Depende do que você quer dizer com segurança. Se o local em que seu programa é mantido em disco não pode ser gravado por outros usuários, então é seguro, no sentido de que é apenas outro PATH que os usuários não podem explorar, enganando seu software para executar outra tarefa.

Não é seguro no sentido de que copiar binários para o diretório de software não seja portátil e não se beneficiará de patches de segurança. Mas, se você entender sua própria implantação personalizada, talvez isso não seja um problema.

    
por 12.01.2017 / 19:49

Tags