suを強化するためにdpkg-statoverrideを使用する方法は?

suを強化するためにdpkg-statoverrideを使用する方法は?

Ubuntu 14強化ガイドを読んでいますが、次の提案の1つです。

sudoグループのユーザーだけがsuコマンドを実行してrootとして機能する(またはrootになる)ことを可能にするのが賢明なアイデアのようです。

dpkg-statoverride --update --root 追加 sudo 4750
/空/数

コマンドを探しましたが、dpkg-statoverrideまだ上記のコマンドが正確に何をしているのかわかりませんか?

これは、Ubuntu 14では基本的に誰でもsudoを使用できることを意味するようです。テストするために新しいユーザーを作成し、そのユーザーとしてログインした後、sudoを試してみましたが失敗しました。大丈夫です。

それでは、上記のアドバイスの目的は何ですか?

ベストアンサー1

目的は、通常のユーザーがsuコマンドを実行するのを防ぐことです(suは、sudoがコマンドを実行し、suが新しいユーザーで新しいセッションを開始し、ユーザーがシャットダウンを実行するまで続くことを除いて、sudoに似ています。 )。

su のデフォルトモードは 4755 または rwsr-xr-x で、s はコマンドが set-UID であることを示します。これは、コマンドを実行したユーザーではなく、常にコマンドを所有しているユーザーとして実行されることを意味します。それ)。この場合、suはrootが所有しているので、常にroot権限で実行されます。)

suには、それを実行しているユーザーが他のユーザーになる権限を持っているかどうかを確認する独自のセキュリティ対策がありますが(通常は他のユーザーのパスワードを要求して)、suには攻撃者が何らかの方法で許可するセキュリティホールがあります。承認なしに他のことをするように説得します。

モードを4750に変更すると、当初は通常のユーザー(rootおよびsudoグループのユーザー以外のユーザー)が読み取ったり実行したりするのを防ぎ、攻撃者はファイルの所有権を変更したりモードを変更したりする必要があります。 suの理論的脆弱性を悪用する前に、そのファイルの有効なUID / GIDを変更してください。

dpkg-statoverrideコマンドは、ファイルが最新バージョンに置き換えられても(つまり、aptを介してアップグレードされた)パッケージ管理者にファイルの所有権/モード値を使用するように指示するため、この状況で役立ちます。つまり、chown と chmod よりも持続性が高いということです。

この場合、私が推奨する一般的な戦略は次のとおりです。 Linux/UNIX システムで su/sudo または認証コンポーネントの構成を調整するたびに、そのサーバーの別の ssh/putty セッションを開き、root としてログインして実行します。セッションを別のウィンドウで開いたままにします。これにより、私が何かを台無しにして自分自身をロックしても、私が壊したすべてを修正できるログインセッションがあります。

おすすめ記事