é seguro passar senhas em texto puro para um script se você usar subshells?

2

Eu tenho um script e ele faz uma leitura -p para uma variável chamada PASSWD:

smbclient -L 192.1.1.1 -U username%$PASSWD

Eu acredito que não vou conseguir ver isso na história. Neste link, diz que alguém fazendo ps seria capaz de ver a string de senha? Transmita parâmetros para um script com segurança

Mas se um script durar um tempo insignificante (alguns milissegundos), isso não é um grande problema?

    
por engineerchuan 16.02.2012 / 09:22

3 respostas

2

Você pode ler em man smbclient :

-U|--user=username[%password]
           Sets the SMB username or username and password.

           If %password is not specified, the user will be prompted. The client will first check the USER environment variable, then the LOGNAME variable and if
           either exists, the string is uppercased. If these environmental variables are not found, the username GUEST is used.

           A third option is to use a credentials file which contains the plaintext of the username and password. This option is mainly provided for scripts where
           the admin does not wish to pass the credentials on the command line or via environment variables. If this method is used, make certain that the
           permissions on the file restrict access from unwanted users. See the -A for more details.

Portanto, será melhor usar a opção -A e definir as permissões corretas no arquivo para que ele NÃO seja legível

    
por 16.02.2012 / 09:31
0

Se o comando usando a senha for chamado de um script, esse comando não estará no histórico do shell, isso está correto. Isso não tem nada a ver com "subshells".

No entanto, não é realmente seguro armazenar ou reutilizar senhas de texto simples em qualquer lugar.

    
por 16.02.2012 / 09:29
0

Isso está aberto para discussão, é tão seguro quanto você acha que é.

Algumas pessoas verão isso como um risco à segurança, outras acharão isso insignificante.

Pessoalmente, eu não faria isso.

    
por 16.02.2012 / 09:29

Tags