2023年12月12日發(作者:善良的女人)

IIS的系統賬戶
IIS與操作系統
?
?
?
?
IIS5.1集成于Windows XP操作系統中。
IIS6.0 集成于Windows Server 2003操作系統中。
IIS7.0 集成于 Windows Vista 和 Windows Server 2008操作系統中。
IIS7.5 集成于 Windows 7 和 Windows Server 2008 R2操作系統中。
IIS的工作進程
? IIS5.1 上的 程序運行在 aspnet_ 進程下。服務器同一時間只能開啟一個aspnet_進程,所有的應用程序都運行在該進程中,也就是說,如果由于一個應用程序導致aspnet_ 崩潰,所有的應用程序都將不可用。
? IIS6.0 上的 程序運行在 進程下。為了防止出現上述的一個應用程序崩潰導致所有應用程序都不可用的情況,IIS6.0引入了應用程序池的概念。一般情況下,一個應用程序池對應一個進程,但是當啟用Web Garden時,一個應用程序池就可對應多個進程了。一個應用程序池可托管一個或多個程序。
? IIS7.0和IIS7.5的工作進程同IIS6.0。
IIS的運行賬戶
IIS5.1
IIS5.1的工作進程aspnet_運行在 ASPNET 賬戶下。ASPNET賬戶隸屬于Urs用戶組,該用戶組下的用戶無法對操作系統進行有意或無意的改動,但可以運行經過驗證的應用程序。Urs用戶組除了擁有ASPNET賬戶外,還擁有 Authenticated Urs 用戶組和INTERACTIVE用戶組。由于內置賬戶LocalSystem也是aspnet_的默認運行賬戶,而LocalSystem賬戶擁有幾乎全部的操作系統訪問權限,所以這就導致了嚴重的安全隱患。
IIS6.0
IIS6.0的工作進程 運行在 NETWORK SERVICE 用戶組下。為了加強安全性,IIS的工作進程默認運行在新的內置的NETWORK SERVICE 用戶組下,該用戶組只擁有低級的用戶訪問權限。
NETWORK SERVICE 隸屬于 IIS_WPG 用戶組。默認情況下,IIS_WPG用戶組只擁有最小化的權限集合用于開啟和運行進程。如果要設計一個特殊的用戶賬戶用于運行網站,最簡單的方法便是將用戶賬戶作為IIS_WPG用戶組成員。
IIS_WPG 用戶組除了擁有 NETWORK SERVICE 用戶組外,還擁有 IWAM_計算機名 賬戶、Service 用戶組和 SYSTEM 用戶組。IWAM_計算機名 賬戶是啟動 IIS 進程賬戶,是用于啟動進程外應用程序的IIS的內置賬戶。在IIS6.0中還有一個賬戶是 IUSR_計算機名 ,這個賬戶是 IIS 來賓賬戶,是用于匿名訪問 IIS 的內置賬戶,該賬戶同時隸屬于 Guests 用戶組。
在IIS6.0中,無論默認的應用程序池還是新建的應用程序池都運行在NETWORK SERVICE用戶組下。所有的Web應用程序都運行在相同的權限下,那么一個在應用程序池A中的應用程序可以讀取應用程序池B的配置信息,甚至有權訪問屬于應用程序池B的應用程序的內容文件。雖然創建新的應用程序池以及為它們配置自定義賬號的任務足夠簡單,但是隨著時間的推移,管理這些賬號卻并不那么輕松。
IIS7.0
在IlS7.0里,系統自動為各應用程序新建一個應用程序池。默認情況下,應用程序池被配置為以 NETWORKSERVICE 賬號運行。而當工作進程被創建時,IIS7.0會向
NETWORKSERVICE安全令牌注入一個特殊的唯一標識該應用程序池的SID(通常是應用程序池的名稱)。IIS7.0還會為工作進程創建一個配置文件,并且將文件的ACL設置為僅允許應用程序池唯一的SID訪問。這么做的結果就是:一個應用程序池的配置將無法被別的應用程序池讀取。順便提醒一下,你可以更改內容文件的ACL,從而允許應用程序池唯一的SID進行訪問而不是NETWORKSERVICE賬號。這可以阻止應用程序池A中的某個應用程序讀取應用程序池B中某應用程序的內容文件。
對于Web服務器來說,使用哪個賬號作為匿名訪問的身分憑證是關系進程身份的重要問題。IIS6依賴于一個本地賬戶——IUSR_計算機名,將其作為匿名用戶登錄的身份憑證。IlS7則使用了一個全新的內置賬號——IUSR,這是一個特殊的賬戶,用戶不能使用該賬戶進行本地登錄,它沒有密碼,所以任何基于密碼破解的攻擊對它是無效的。由于IUSR賬號總是擁有相同的SID,所以它的相關ACL在WindowsSewer2008的機器之間是可傳遞的。如果IUSR賬號不適合我們的應用場景的話(也就是說,如果匿名請求需要經身份驗證的網絡訪問的話),可以關閉匿名用戶賬號,IIS7將為匿名請求使用工作者進程身份。
同樣全新的還有內置的IIS_IUSRS組,這個用戶組取代了原先的IIS_WPG組。在IIS6里,IIS_WPG組提供了運行一個工作者進程所需的最小權限,而且必須手動地將賬號添加到該組,從而為一個工作者進程提供自定制的身份憑證。IIS_IUSRS組為lIS7提供了類似的角色,但是不必特意將賬號添加到該組。取而代之的是,當賬號被指派為某一應用程序池的身份憑證時,IIS7會自動將這些賬號收入到IIS_IUSRS組。并且和IUSR賬號一樣,IIS_IUSRS組也是內置的,所以在所有的WindowsServer2008機器上,它總是具有相同的名稱和SID,這就讓ACL以及其它配置在WindowsServer2008(以及WindowsVista)機器之間是完全可遷移的。
IIS7.5
同IIS7.0
本文發布于:2023-12-12 12:19:00,感謝您對本站的認可!
本文鏈接:http://m.newhan.cn/zhishi/a/1702354741244065.html
版權聲明:本站內容均來自互聯網,僅供演示用,請勿用于商業和其他非法用途。如果侵犯了您的權益請與我們聯系,我們將在24小時內刪除。
本文word下載地址:IIS與系統賬戶的關系.doc
本文 PDF 下載地址:IIS與系統賬戶的關系.pdf
| 留言與評論(共有 0 條評論) |