web-dev-qa-db-ja.com

「Sudo」を本番コード内に残した場合のセキュリティリスクは何ですか?

Root権限でのみ正常に実行できるスクリプトがあります

しかし、開発ではroot権限で実行するのは本当に難しい(私の開発環境では)ので、コード内で必要なときに「Sudo」を追加し、変更を運用環境にプッシュする前に削除します。

結局 'Sudo'が侵入するため、これは明らかに良い習慣ではありません。

それをそのままにしておくことのセキュリティリスクは何でしょうか?

5
Ezra

セキュリティリスクはsudoersファイルにあります。

sudoersファイルがユーザーを安全な操作のみに制限し、パスワードがないか、毎回パスワードを要求する場合。危険はありません。

これは、シェルインジェクション、エイリアスまたはパス攻撃、およびバッファオーバーンなどのSudoの下で実行されるアクションは安全であり、悪用されてはならないであることを意味します。

代わりに、実際には、ユーザーにグループ権限を付与します。例えば。シリアルポートのグループ「dialout」。パラレルポートの場合は「lp」、サウンドデバイスの場合は「audio」、ログを読み取る必要がある場合は「adm」などのグループ。

8
Jasen

スクリプトを理解していない誰かが通常のユーザーとしてスクリプトを実行する場合、これらの「Sudo」をそのままにしておくと、実際にはできるのに、スクリプトはrootユーザーしかできないことを錯覚させるでしょう。

0
Ezra