IIS 5.0預設應用程式保護等級為「中(共用)」,ISAPI以 IWAM_Computername 身份運行。但13個特定ISAPI DLL(如 idq.dll、ssinc.dll、admin.dll 等)因檔名判斷邏輯缺陷(未做路徑限制、雙位元組字元處理錯誤),會以 SYSTEM權限 載入。攻擊者上傳同名惡意DLL至可寫入的虛擬目錄(預設 /scripts 可寫),即可獲取SYSTEM權限。
| DLL | 預設路徑 |
|---|---|
| idq.dll | d:\winnt\system32\idq.dll |
| httpext.dll | d:\winnt\system32\inetsrv\httpext.dll |
| httpodbc.dll | d:\winnt\system32\inetsrv\httpodbc.dll |
| ssinc.dll | d:\winnt\system32\inetsrv\ssinc.dll |
| msw3prt.dll | d:\winnt\system32\msw3prt.dll |
| author.dll | D:\Program Files\Common Files\Microsoft Shared\web server extensions\40\isapi\_vti_aut\author.dll |
| admin.dll | D:\Program Files\Common Files\Microsoft Shared\web server extensions\40\isapi\_vti_adm\admin.dll |
| shtml.dll | D:\Program Files\Common Files\Microsoft Shared\web server extensions\40\isapi\shtml.dll |
| sspifilt.dll | d:\winnt\system32\inetsrv\sspifilt.dll |
| compfilt.dll | d:\winnt\system32\inetsrv\compfilt.dll |
| pwsdata.dll | d:\winnt\system32\inetsrv\pwsdata.dll |
| md5filt.dll | d:\winnt\system32\inetsrv\md5filt.dll |
| fpexedll.dll | D:\Program Files\Common Files\Microsoft Shared\web server extensions\40\bin\fpexedll.dll |
/scripts 可寫)。ssinc.dll)。asp.exe 工具請求 /scripts/ssinc.dll?okok,即獲 NT AUTHORITY\SYSTEM Shell。安裝「二次解碼補丁包」(包含於SP3)後,載入判斷依據改為「完整路徑+檔名」,修正了雙位元組繞過與路徑限制缺失。
實戰中駭客常組合Unicode漏洞、FPSE擴展溢出、路徑截斷、提權漏洞等多個洞洞疊加,一步到位獲取SYSTEM權限。單一漏洞利用已少見,防禦需系統性修補與深度防護。