sudo で実行する必要があるスクリプトがあります。
#!/bin/bash
cp "$@" /destionation/dir
それは良いスクリプトですか、それとも誰かが制限の宛先ディレクトリを回避できますか?
ご提案ありがとうございます。
答え1
まあ、ちょっとしたタイプミスがあります。/destionation
の代わりに です/destination
。
そこにははこのスクリプトにはセキュリティ上の問題があります。
ユーザーは`sudo /bin/bash`
ファイル名を渡すことができ、その後ルートシェルが使用可能になります。
次のようなコマンドをネストすることもできます。
`sudo /bin/bash; echo "hello" >> /tmp/from_root`
ルート ユーザーとして実行される一連の操作を形成します。
このスクリプトは、宛先ディレクトリが重要でないだけでなく、より大きな問題が発生するため、使用しないことをお勧めします。
おそらくより良い解決策は、sudo 権限を必要としない、誰でも書き込み可能なディレクトリを作成することです。