HOME

TheInfoList



OR:

IExpress, a component of
Windows 2000 Windows 2000 is a major release of the Windows NT operating system developed by Microsoft and oriented towards businesses. It was the direct successor to Windows NT 4.0, and was released to manufacturing on December 15, 1999, and was officiall ...
and later versions of the operating system, is used to create self-extracting packages from a set of files. Such packages can be used to install software.


Overview

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 A notebook (also known as a notepad, writing pad, drawing pad, or legal pad) is a book or stack of paper pages that are often ruled and used for purposes such as note-taking, journaling or other writing, drawing, or scrapbooking. History ...
. All self-extracting files created by IExpress use CAB compression algorithms, are compressed using the Cabinet Maker ( MAKECAB.EXE) tool, and are extracted using the WExtract ( WEXTRACT.EXE) tool. IEXPRESS.EXE is located in the SYSTEM32 folder of both 32 and 64-bit installations of Windows. 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 (Windows Command Prompt or batch file) to create custom installation packages, eventually unattended (automated operation): IEXPRESS /N drive_letter:\directory_name\file_name.SED 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.


Security

The self-extracting packages created with IExpress have (inherent)
vulnerabilities Vulnerability refers to "the quality or state of being exposed to the possibility of being attacked or harmed, either physically or emotionally." A window of vulnerability (WOV) is a time frame within which defensive measures are diminished, com ...
which allow
arbitrary code execution In computer security, arbitrary code execution (ACE) is an attacker's ability to run any commands or code of the attacker's choice on a target machine or in a target process. An arbitrary code execution vulnerability is a security flaw in softw ...
because of the way they handle their installation command and their command line processing. Additionally, because of the way Windows
User Account Control User Account Control (UAC) is a mandatory access control enforcement feature introduced with Microsoft's Windows Vista and Windows Server 2008 operating systems, with a more relaxed
handles installers, these vulnerabilities allow a
privilege escalation Privilege escalation is the act of exploiting a bug, a design flaw, or a configuration oversight in an operating system or software application to gain elevated access to resources that are normally protected from an application or user. The re ...
.FullDisclosure
Defense in depth -- the Microsoft way (part 11): privilege escalation for dummies
/ref>FullDisclosure
Defense in depth -- the Microsoft way (part 33): yet another (trivial) UAC bypass resp. privilege escalation
/ref> More specifically, the vulnerability comes in two versions: the most obvious one is that a switch tells the package to run an arbitrary command in the extracted directory; the other is that the directory is predictable and writable by any ordinary user, so that the usual command can be replaced by an attack payload. The latter has been fixed by Microsoft in MS14-049, but the former is only addressed by a policy to deprecate IExpress. There is also a
DLL hijacking Dynamic-link library (DLL) is Microsoft's implementation of the shared library concept in the Microsoft Windows and OS/2 operating systems. These libraries usually have the file extension DLL, OCX (for libraries containing ActiveX controls), o ...
exploit possible with IExpress.


See also

*
List of installation software The following is a list of applications for building installation programs, organized by platform support. Cross-platform Linux Windows macOS AmigaOS See also * List of software package management systems References {{Reflist ...


References


External links

*MSDN
Using IExpress Wizard to Create a DPInst Installation Package
*MS TechNet
IExpress Technology and the IExpress Wizard
*MDGx

*MDGx: ttp://www.mdgx.com/INF_web/ Complete INF + IEAK Guide*MDGx
Setup Information (INF) & Self Extraction Directive (SED) files: Guides, Resources & Downloads
{{Microsoft Windows components Installation software