IExpressWindows 2000和更高版本的作業系統的組件,用於從一組文件中創建自解壓縮程序包。此類軟體包可用於安裝軟體。

概述

IExpress(IEXPRESS.EXE)可用於將自包含的安裝程序包(基於INF的安裝可執行文件)分發到多台本地或遠程Windows計算機。它使用提供的前端界面(IExpress嚮導)或自定義的自我提取指令(SED)文件創建自解壓縮的可執行文件(.EXE)或壓縮的Cabinet(.CAB)文件。[1] 可以使用任何純文本/ ASCII編輯器(例如Notepad)修改SED文件。由IExpress創建的所有自解壓縮文件均使用CAB壓縮算法,使用MakeCab(MAKECAB.EXE)工具壓縮 ,並使用WExtract(WEXTRACT.EXE)工具提取。 IEXPRESS.EXE位於WindowsSYSTEM32的32位和64位安裝文件夾中。可以通過手動導航到相應目錄並打開可執行文件(IExpress.exe)或在「開始」菜單的「運行」窗口中鍵入IExpress來啟動前端界面(IExpress嚮導)。也可以從命令行(Windows命令提示符或批處理文件)中使用它來創建自定義安裝程序包,這些程序包將會自動操作:

IEXPRESS /N drive_letter:\directory_name\file_name.SED

IExpress嚮導界面指導用戶完成創建自解壓程序包的過程。IExpress會詢問用戶,程序包應該做什麼,提取文件然後運行程序,或者僅提取文件。然後,其允許用戶為程序包指定標題,添加確認提示,添加最終用戶必須接受以允許提取的許可協議,選擇要歸檔的文件,為進度窗口設置顯示選項,以及最後指定要在完成時顯示的消息。

如果選擇了創建歸檔文件並運行程序的選項,則將有一個附加步驟,提示用戶選擇要在提取時運行的程序。

IExpress將根據作業系統類型(32或64位)創建相應的自解壓縮存檔,而且64位將無法在32位計算機上運行解壓縮。[2]

安全性

使用IExpress創建的自解壓程序包具有(固有的)漏洞,由於處理安裝命令和命令行處理的方式,它們允許任意代碼的執行。[3] [4] 此外,由於Windows 用戶帳戶控制處理安裝程序的方式,這些漏洞允許特權提升[5][6]

更具體地說,此漏洞有兩個版本:最明顯的是/c:開關告訴軟體包在提取的目錄中運行任意命令;另一個是該目錄對於任何普通用戶都是可讀可寫的,因此msiexec.exe可以用攻擊有效載荷代替常用命令。[5] 後者已由Microsoft在MS14-049中修復,但是僅通過棄用IExpress的策略解決了前者。[6] 此外,IExpress還可能存在DLL劫持漏洞。[7]

參考資料

  1. ^ SED Overview. www.mdgx.com. [2020-07-12]. (原始內容存檔於2018-02-06). 
  2. ^ macos - Installing IIS Express 32-bit on a 64-bit operating system using MAC Parallels Windows 7. Stack Overflow. [2020-07-12]. (原始內容存檔於2016-03-12). 
  3. ^ Command-line switches for IExpress software update packages. web.archive.org. 2016-08-24 [2020-07-12]. 原始內容存檔於2016-08-24. 
  4. ^ Dansimp. IExpress 向导命令行选项(适用于 IT 专业人员的 Internet Explorer 管理工具包 11) - Internet Explorer. docs.microsoft.com. [2020-07-12]. (原始內容存檔於2020-07-15) (中文(中國大陸)). 
  5. ^ 5.0 5.1 Full Disclosure: Defense in depth -- the Microsoft way (part 11): privilege escalation for dummies. seclists.org. [2020-07-12]. (原始內容存檔於2019-04-10). 
  6. ^ 6.0 6.1 Full Disclosure: Defense in depth -- the Microsoft way (part 32): yet another (trivial) UAC bypass resp. privilege escalation. seclists.org. [2020-07-12]. (原始內容存檔於2019-08-08). 
  7. ^ Microsoft IExpress DLL Hijacking ≈ Packet Storm. packetstormsecurity.com. [2020-07-12]. (原始內容存檔於2020-07-12).