Digamos que você tenha um programa que deseja executar autônomo, como root, que requer um segredo (como uma frase secreta; algo que você não quer que outras pessoas descubram), que pode ser lido de uma variável de ambiente. Uma maneira de realizar isso seria criar um script como o seguinte e executá-lo a partir do crontab do root.
#!/bin/bash
export SECRET='my_secret'
/usr/bin/some_program
export SECRET=
Ok, posso pensar em dois problemas de segurança aqui.
Primeiro, alguém pode encontrar o valor de $SECRET lendo o script. Usar chmod 700 deve cuidar disso.
Segundo, alguém pode usar algo como ps ae enquanto some_program está em execução. No entanto, se o script estiver sendo executado como root, somente root (ou sudoers) poderá ver seu ambiente, certo?
Estou correto em acreditar que o valor de $SECRET só pode ser encontrado por root ou sudoers? Existem outros problemas de segurança?
E, para tornar tudo isso um pouco menos abstrato, isso é o que me fez pensar.