web-dev-qa-db-ja.com

IIS_IUSRSにフルコントロールのアクセス許可を与えることのセキュリティ上の影響は何ですか?

IIS_IUSRSにASP.NET Webサイトのルートフォルダーに対するフルコントロールアクセス許可を与えることのセキュリティ効果は何ですか?

IIS_IUSERグループの一部であるIUSRのみにフルコントロールアクセス許可を付与できないのはなぜですか?

どんな答えでもこの矛盾を明確にし、本当に感謝しています。

22
Alaa

IUSRとIIS_IUSRSの名前は混同しやすいですが、これらは2つの異なるものです。

  1. IIS_IUSRSは、IIS Worker Process Accountsのグループです。これは、アプリケーションプール自体が実行されるIDを意味します。
  2. IUSRは匿名ユーザーIDです。つまり、IISは、サイトにアクセスしているユーザーであると考えられます。このユーザーは、デフォルトではIIS_IUSRSグループのメンバーではありません。

IIS 7.0では、ビルトインアカウント(IUSR)がIUSR_MachineNameアカウントを置き換えます。さらに、IIS_IUSRSという名前のグループがIIS_WPGグループを置き換えます。[...] IUSRアカウントはネットワークに似ています。 IUSR_MachineNameアカウントは、Windows Server 2008 DVDに含まれるFTP 6サーバーがインストールされている場合にのみ作成および使用されます。FTP6サーバーがインストールされていない場合、アカウントは作成されません。 http://support.Microsoft.com/kb/981949

IIS_IUSRSは、必要なすべてのファイルおよびシステムリソースにアクセスできるビルトイングループであり、アカウントをこのグループに追加すると、アプリケーションプールIDとしてシームレスに機能します。

同様のスレッド を読んでください。これは、IIS_IUSRSへのアクセスを与えるとIUSRへの同じアクセスを与えることとは異なる効果を説明します。

Here は、IIS 7。

既定では、IIS_IUSRSにはwwwrootに対する読み取りおよび実行(および結果リストフォルダーのコンテンツ)権限のみがあります。フルコントロールが多すぎる可能性があります。

20
alex

ユーザーが任意のファイルをアップロードできるWebサイトを想像してください。このWebサイトには、そのようなファイルがアプリケーションディレクトリに保存されるバグがあります。

この場合、攻撃者は任意のコードでaspxファイルをアップロードしたり、web.configファイルを上書きしたりできます。

ルートフォルダーへの読み取り専用アクセスを許可し、実行可能コードが含まれないことがわかっている特定のフォルダー(たとえば、App_Dataのサブフォルダー)のみを完全に制御できるようにすることをお勧めします。

10
Joe