Can an administration extraction of an MSI file perform registry and/or system wide changes?

4

I am always getting MSI (or setup EXEs which are basically MSI) files, and half the time they really do not need to be a setup.

Microsoft is probably one of the biggest sources - almost every time I want to download a little source code sample, it has a MSI which if you install, only usually has three files.

I would rather not do an install and add it to the add/remove programs and who knows what else (although I am sure it wouldn't be that bad) for the sake of three files!

For this reason, I always use the following command:

MSIEXEC /a <filename.msi> /qb TARGETDIR=<directory name>

Now, this works fine and I have never had problems... However, I was just browsing some articles on Technet and found the following resource about administration installs.

Apparently, MSI files can have two sequences: The AdminUISequence Table and the AdminExecuteSequence Table.

I am not so worried about the AdminUISequence Table as it states that "The installer skips the actions in this table if the user interface level is set to basic UI or no UI", and this is what the /qb switch I use does.

However, there is nothing similar written against AdminExecuteSequence Table.

I realise that many people who write MSI files simply do it for a single end user and probably do not even touch the admin install options, however, is it possible for them to set items that can affect the system and if so, is there a fail proof way of extracting?

I do already use 7-zip, however despite it being on the "supported" page, MSI support is lacking... well... completely sucks. It looses the file names and is generally useless. They have a bug which was closed with no reason/resolution over three years ago, and I opened a forum post and haven't had a reply.

I would not really want to install any additional programs if I could help it and just want peoples opinions on this.

Thanks.

edit - Should also say, I run with UAC on, and I have never ever had a elevation prompt whilst performing the MSIEXEC operation, so I am guessing I have never had a system wide change, however, I am still curious as to if it is possible... As if changes (even just to the user) are possible I would do this locally/in a VM and never on a server or place of importance!

William Hilsum

Posted 2011-02-27T20:11:38.673

Reputation: 111 572

Have you tried running Procmon against your system while extracting the MSI? This will tell you what's going on in the background. – None – 2011-02-27T22:57:47.753

Have you ever thought of modifying the msi file with Orca?...http://support.microsoft.com/kb/255905

– Moab – 2011-02-27T23:58:56.100

I keep a spare system just for installing software, then copy off what I want for my main PC, a guinea pig of sorts. – Moab – 2011-02-28T00:02:27.970

@Randolph Potter - Nope, and I am sure for the three files, it wouldn't do this... and as I said in the question, I am not sure that anyone even writes anything on these fields... I just want to know if it is possible.people's experiences. – William Hilsum – 2011-02-28T00:30:22.023

@Moab - I am thinking of doing that (In a VM) it is just annoying to have to... Winrar could extract (if I remember correctly), It is bad that 7-zip can't.... Also, looking at Orca tool now - heard about it but never actually looked at it. – William Hilsum – 2011-02-28T00:31:56.777

Bugger... looks like I have to download the entire platform SDK to get this one tiny thing!... Oh well :( – William Hilsum – 2011-02-28T00:32:59.380

May have got it wrong with Winrar... can't see it on the supported list :S Memory plays tricks sometimes... need to run memtest86 on my head. – William Hilsum – 2011-02-28T01:02:40.310

I can upload Orca somewhere for you. Not sure if there are 32 and 64 bit versions of Orca, I have one from a 32bit install if you want it. – Moab – 2011-02-28T02:32:20.737

Answers

3

As with all Microsoft products, everything is possible and nothing is easy. Admin install sequences can indeed change the system, all it takes is to insert a few custom actions and you can basically do anything you like. I wouldn't worry too much though, few people bother to do anything to this sequence. Run the admin install on a virtual machine if you are really in the mood to be careful, or look through the admin sequences for any custom actions before running it.

Most of the time you don't run the administrative install with administrator rights, so the process can only update HKCU and the user profile and locations accessible for regular users.

Stein Åsmul

Posted 2011-02-27T20:11:38.673

Reputation: 969

Thank you. It is an annoying additional step to take, but it looks like I will be doing this in a VM from now on! – William Hilsum – 2011-08-22T22:32:25.007

Note that custom actions in the admin sequence also can be designed to prepare a network installation point with extracted files for company wide distribution by setting trivial settings in configuration files, preparing license files etc... This is the reason why admin installs can have custom actions in them, but I have yet to see any packages that make use of this. For most packages the admin sequence is standard and will extract all files, modify the Media table to use extracted files and perform other standardized operations. – Stein Åsmul – 2014-01-29T22:03:00.957

1

They typically don't, but they certainly can.

After all, they're already changing the system by dumping files and shortcuts on it, so doing more is a piece of cake.

user541686

Posted 2011-02-27T20:11:38.673

Reputation: 21 330

0

I have found this tool to be usefulll in the past to extract the content of exe's and msi's. http://legroom.net/software/uniextract

jamason1983

Posted 2011-02-27T20:11:38.673

Reputation: 301