|A component of Microsoft Windows|
Screenshot of IExpress in Windows Vista
|Type||Self-contained installation packages maker|
|Included with||Windows 2000, Windows XP, Windows Server 2003, Windows Vista, Windows Server 2008, Windows 7, Windows 8|
IExpress is a Microsoft utility bundled with various editions of Windows operating systems (32-bit and 64-bit): Windows XP, Windows Server 2003, Windows Vista, Windows Server 2008, Windows 7, and Windows 8. It was also included as part of all Internet Explorer Administration Kit releases 4, 5 and 6, and was part of all installations of Internet Explorer 6.
IEXPRESS.EXE is used to create a single self-extracting package from a set of files. Such packages can be used to install applications, executables, drivers, other system components, or setup bootstrappers.
About the tool
IExpress (IEXPRESS.EXE) can be used for distributing self-contained installation packages (INF-based setup executables) to multiple local or remote Windows computers. It creates a self-extracting executable (.EXE) or a compressed Cabinet (.CAB) file using either the provided front end interface (IExpress Wizard), or a custom Self Extraction Directive (SED) file. SED files can be modified with any plain text/ASCII editor, like Notepad. All self-extracting files created by IExpress use CAB compression algorithms, are compressed using the MakeCab (MAKECAB.EXE) tool, and are extracted using the WExtract (WEXTRACT.EXE) tool.
IEXPRESS.EXE is located in the SYSTEM32 folder of both Windows 32 and 64-bit installations. The front end interface (IExpress Wizard) can be started by manually navigating to the respective directory and opening the executable (IExpress.exe), or by typing IExpress into the Run window of the Start Menu. It can also be used from the command line (DOS console or batch file) to create custom installation packages, eventually unattended (automated operation):
IEXPRESS /N drive_letter:\directory_name\file_name.SED
Creating a self-extracting package
IExpress Wizard interface guides the user through the process of creating a self-extracting package. It asks what the package should do: extract files and then run a program, or just extract files. It then allows the user to specify a title for the package, add a confirmation prompt, add a license agreement that the end-user must accept in order to allow extraction, select files to be archived, set display options for the progress window, and finally, specify a message to display upon completion.
If the option to create an archive and run a program is selected, then there will be an additional step, prompting the user to select the program that will be run upon extraction.
The self-extracting packages created with IExpress have an (inherent) vulnerability which allows arbitrary code execution due to the way they handle their installation command. Additionally, due to the way Windows' user account control handles installers, this vulnerability allows a privilege escalation. A proof of concept was published by Stefan Kanthak.
- MSDN: Using IExpress Wizard to Create a DPInst Installation Package
- MS TechNet: IExpress Technology and the IExpress Wizard
- MDGx: Internet Explorer Administration Kit (IEAK): Guides, Resources & Downloads
- MDGx: Complete INF + IEAK Guide
- MDGx: Setup Information (INF) & Self Extraction Directive (SED) files: Guides, Resources & Downloads