操作系統(tǒng):Windows Server 2008 R2 Enterprise Service Pack 1 x64 IIS版本:IIS7.5 程序:asp.net
http 常見(jiàn)功能:開(kāi)啟靜態(tài)內(nèi)容,默認(rèn)文檔,HTTP錯(cuò)誤;目錄瀏覽,WebDAV發(fā)布如無(wú)特殊要求,不要開(kāi)啟;HTTP重定向可根據(jù)需要開(kāi)啟。
應(yīng)用程序開(kāi)發(fā):這個(gè)可根據(jù)實(shí)際情況開(kāi)啟,如為asp.net的開(kāi)啟ASP.NET,.NET擴(kuò)展性,ISAPI擴(kuò)展,ISAPI篩選;在服務(wù)器端的包含文件根據(jù)需要開(kāi)啟。
健康和診斷:建議開(kāi)啟HTTP日志記錄,日志記錄工具,請(qǐng)求監(jiān)視;其他可根據(jù)需要開(kāi)啟。
安全性:建議開(kāi)啟URL授權(quán),請(qǐng)求篩選,IP和域限制;其他根據(jù)需要開(kāi)啟。
性能,管理工具,ftp服務(wù)器,IIS可承載的Web核心可根據(jù)開(kāi)啟。
IIS7.5涉及兩個(gè)賬戶,一個(gè)為匿名賬戶,一個(gè)為應(yīng)用程序池賬戶。在磁盤的NTFS權(quán)限設(shè)置中,匿名賬戶只需要擁有對(duì)網(wǎng)站目錄的讀取權(quán)限即可;而應(yīng)用程序池賬戶需要根據(jù)程序?qū)嶋H情況給予相應(yīng)權(quán)限,比如:需要去寫文件,則要給予寫權(quán)限,需要去調(diào)用一個(gè)程序(如cmd.exe)則需要給予執(zhí)行權(quán)限。總之,對(duì)文件的訪問(wèn),首先需要有匿名賬戶的訪問(wèn)權(quán)限,然后再根據(jù)程序的操作需要什么樣的權(quán)限給予應(yīng)用程序池賬戶相應(yīng)的權(quán)限。
1. 上傳目錄的寫入權(quán)限由應(yīng)用程序池賬戶決定; 2. 應(yīng)用程序池默認(rèn)對(duì)于的賬戶為IIS APPPOOL\{app pool name},且屬于IIS_IUSRS組; 3. 默認(rèn)的匿名賬戶為IUSR賬戶,且屬于authenticated users 組; 4. 任何用戶都屬于USERS組,且手工刪除后仍然屬于USERS組; 5. 上傳木馬之后,能夠看到的目錄是由應(yīng)用程序池賬戶決定的; 6. 在此測(cè)試環(huán)境下,USERS組默認(rèn)擁有網(wǎng)站目錄的寫入權(quán)限; 7. 一個(gè)aspx文件的運(yùn)行跟NTFS的運(yùn)行權(quán)限無(wú)關(guān); 8. 對(duì)于網(wǎng)站的匿名賬戶只需要對(duì)網(wǎng)站目錄有讀取權(quán)限; 9. 應(yīng)用程序池賬戶運(yùn)行aspx也只需要讀取權(quán)限,但是如果要寫文件需則寫權(quán)限,要執(zhí)行其他程序則需要執(zhí)行權(quán)限;
1. webdav直接上傳webshell 2. 通過(guò)程序文件上傳漏洞上傳webshell 3. webshell的權(quán)限過(guò)高導(dǎo)致被提權(quán)
在安裝的時(shí)候直接不安裝webdav組件
可以在IIS中設(shè)置需要上傳文件的目錄,處理程序映射中的編輯功能權(quán)限中的腳本去掉,這樣即使上傳了木馬文件在此目錄,也是無(wú)法執(zhí)行的。
上傳目錄取消應(yīng)用程序池賬戶的執(zhí)行權(quán)限
可以設(shè)置進(jìn)程池賬戶對(duì)其他文件夾無(wú)讀取權(quán)限。
取消進(jìn)程池賬戶的NTFS執(zhí)行權(quán)限。
進(jìn)程池賬戶選擇權(quán)限較低的賬戶,最好就是默認(rèn)的賬戶。
1. 匿名賬戶使用默認(rèn)的“應(yīng)用程序用戶”也就是對(duì)應(yīng)的IUSR。 2. 應(yīng)用程序池賬戶使用默認(rèn)的IIS AppPool\應(yīng)用程序池名稱。 3. 刪除everyone,users在所有磁盤上的權(quán)限。 4. 刪除users在system32上的所有權(quán)限(需要先修改所有者為administrator)。 5. 在網(wǎng)站目錄下給予IUSR讀取權(quán)限。 6. 在網(wǎng)站目錄下給予IIS AppPool\應(yīng)用程序池名稱讀取權(quán)限,如果程序中有特殊要求的權(quán)限,如寫入文件等,則再對(duì)應(yīng)的目錄下給予相應(yīng)的權(quán)限,如寫入權(quán)限。 7. 在網(wǎng)站要求的上傳目錄給予IIS AppPool\應(yīng)用程序池名稱寫入權(quán)限,但是不給予執(zhí)行權(quán)限。 8. 在IIS中取消上傳目錄的腳本執(zhí)行權(quán)限。
在測(cè)試過(guò)程中發(fā)現(xiàn),訪問(wèn)aspx程序,如果匿名賬戶為自定義的賬戶,則需要給自定義的匿名賬戶在文件夾C:\Windows\Microsoft.NET\Framework64\v2.0.50727\Temporary
ASP.NET Files
上的寫入權(quán)限;但是,如果使用默認(rèn)的匿名賬戶,也就是IUSR時(shí),需要給予應(yīng)用程序池賬戶在此文件夾上的寫入權(quán)限。疑問(wèn)點(diǎn)在于此文件夾到底是需要哪個(gè)賬戶的寫入權(quán)限,因?yàn)檫x擇默認(rèn)的匿名賬戶時(shí),即時(shí)禁止IUSR在此文件的寫入權(quán)限,只要應(yīng)用程序池賬戶在此文件夾有寫權(quán)限,一樣運(yùn)行正常?
當(dāng)匿名用戶為程序默認(rèn)的時(shí)候,應(yīng)該就是IUSR,但為什么又傳遞的進(jìn)程池賬戶?
注:
C:\Windows\Microsoft.NET\Framework64\v2.0.50727\Temporary ASP.NET Files 這個(gè)目錄不需要賦予IUSR權(quán)限,但需要IIS_IUSRS組的權(quán)限
一、這樣配置的好處?
不知大家有沒(méi)有聽(tīng)過(guò)旁注?我簡(jiǎn)單的解釋一下吧:有個(gè)人想黑掉A站點(diǎn),但找來(lái)找去都沒(méi)發(fā)現(xiàn)可利用的漏洞,無(wú)意中他發(fā)現(xiàn)與A同服務(wù)器上還有個(gè)B站點(diǎn),并且在B站點(diǎn)上找到了可利用的漏洞,于是他將木馬從B站中上傳至服務(wù)器,如果服務(wù)器權(quán)限配置不當(dāng),那么現(xiàn)在他就可以黑掉服務(wù)器上的所有站點(diǎn)了!如果我們?yōu)槊總€(gè)站點(diǎn)都建立一個(gè)用戶,并設(shè)置該用戶只有訪問(wèn)本站點(diǎn)的權(quán)限,那么就能將訪問(wèn)權(quán)限控制在每個(gè)站點(diǎn)文件夾內(nèi),旁注問(wèn)題也就解決了。
二、準(zhǔn)備工作
1、運(yùn)行環(huán)境:Win2K 服務(wù)器版 + IIS 5.0
2、文件系統(tǒng):各分區(qū)文件系統(tǒng)為NTFS
3、站點(diǎn)文件夾:E盤下建立兩個(gè)文件夾web001和web002
4、新建站點(diǎn):IIS中新建兩個(gè)站點(diǎn)web001和web002,站點(diǎn)文件夾分別為E:\web001和E:\web002,都指定IP為192.168.0.146,端口分別為101和102。
OK,在IE中分別輸入http://192.168.0.146:101和http://192.168.0.146:102測(cè)試兩站點(diǎn)是否建立成功。
三、配置過(guò)程
1、建立用戶組和用戶
新建一用戶組webs,以后所有站點(diǎn)用戶全部隸屬于該組,以便于權(quán)限分配。
建立用戶web01,注意要鉤選"密碼永不過(guò)期"(否則背后會(huì)出現(xiàn)"HTTP 401.1 - 未授權(quán):登錄失敗"),并設(shè)置其只隸屬于webs用戶組。同樣在建一個(gè)用戶web02。
2、各分區(qū)NTFS權(quán)限設(shè)置
打開(kāi)各分區(qū)的安全選項(xiàng)卡依次給各分區(qū)授于administrator和system完全控制權(quán)限,并設(shè)置webs組完全拒絕權(quán)限。
3、站點(diǎn)文件夾NTFS權(quán)限設(shè)置
打開(kāi)E:\web01文件夾屬性窗口,選擇安全選項(xiàng)卡,先去掉"允許將來(lái)自父系的可繼承權(quán)限傳播給該對(duì)象"前的鉤,經(jīng)彈出的對(duì)話框中選擇刪除繼承權(quán)限。
最終確保administrator、system和web01對(duì)該文件夾都有完全控制權(quán)限。
E:\web02文件夾也一樣設(shè)置。
4、設(shè)置各站點(diǎn)的匿名訪問(wèn)用戶
在IIS中打開(kāi)web01站點(diǎn)屬性,選擇目錄安全性→匿名訪問(wèn)和驗(yàn)證控制→編輯,去掉"集成Windows驗(yàn)證"前的鉤,再編輯匿名訪問(wèn)使用的賬號(hào),設(shè)置匿名訪問(wèn)賬號(hào)為web01(web02站點(diǎn)也一樣設(shè)置)。
四、測(cè)試
將老兵寫的站長(zhǎng)助手放至web02站點(diǎn)中進(jìn)行測(cè)試,經(jīng)測(cè)試除站點(diǎn)文件可以瀏覽外,其他分區(qū)均不能訪問(wèn)。
聯(lián)系客服