私は複数の議論で、プロセスリストからエコーするための引数を得ることができるので、passwdへのecho to pipeの使用は危険です。passwdにパイプ経由でパスワードをエコーするのはどれほど危険なのですか?
私は現在、sshを使用してパスワードをリモートから変更するツールを開発中です。私はusermodまたはchpasswdを使うためのルートアクセス権がないのでechoメソッドを使用します。
CMD:
echo -e 'old\nnew\nnew' | passwd
はそれがいかに簡単かを確認するには - 私が試してみました。しかし、それらを得ることができませんでした。私は数回エコー経由でパスワードを変更したが、何も見えませんでした
#!/bin/bash
filename=$1
while true
do
echo "$(pgrep -af passwd)" >> "$filename"
sleep 0.1
done
:
これは私の方法でした。私は睡眠0.1が問題かもしれないと思います。
これはプロセスリストから取得するのが簡単なので、この方法ではどのように使用するのが安全でないかです。
他人*のパスワードを変更するには、root権限が必要です。端末の代わりに標準入力からデータを取得しても、それは変更されません。 – chepner
それは動作します。やってみて。 – scagbackbone