ユーザーが入力したパスワードをファイル(UnixまたはExpect)に入れる方法はありますか?
read -s -p "enter password" input
echo $input > file
上記のコードは安全ですか?
私の予想されるスクリプトでは、パスワード入力としてこのファイルを使用したいと思います。
なぜなら、私はこれを試してみましたが、この予想されるコードを使用して画面にパスワードがしばらく表示されるのを見ることができるからです。
set timeout 30
stty -echo
send_user -- "Password for $username :"
expect_user -re "(.*)\n"
set timeout .000000001
set timeout 30
send_user "\n"
set timeout 30
set password $expect_out(1,string)
send -- "$password\r"
ベストアンサー1
ファイルを読むことができる人は誰でもパスワードを知ることができます。これには、root
ファイルを所有するユーザー(またはファイルを偽装する人)、および(権限に応じて)グループ内のユーザーまたはすべての人が含まれます。数分で投資したら、誰でもLiveCD / LiveUSBを使用してコンピュータを再起動してファイルをインポートできます。まだ一つあります。長い他の可能性のリストです。これはいいえ安全。日常的な用途には十分ですが、深刻な作業には適していません。そして、「重要ではないと思います」だけでは十分ではないことを考慮して、付与された権限の使用チェーン、同じパスワード(または同じ方法で構成されたパスワード)を使用する他のサイトなどを考慮する必要があります。