De uitdaging van vandaag: AutoCAD Civil 3D 2012 (deel 2)

In het eerste deel kwam een probleem aan het licht met AutoCAD Civil 3D 2012. Na installatie draait er bij het inloggen van elke gebruiker een setup, die echter wordt geblokkeerd door AppGuard.

Vanuit de eventviewer weten we dat het deze setup/repair in ieder geval door het ontbreken van een registrykey wordt veroorzaakt. Na wat zoekwerk blijkt dat AutoCAD dit de Secundairy Installer noemt. Je kunt niet direct vinden wat deze doet, maar er is wel een KB artikel dat beschrijft hoe je bij een gebruiker met problemen, deze opnieuw kan laten starten. Daarin staat wat je uit het profiel van de gebruiker moet verwijderen. Dit principe draaien we om. Om te voorkomen dat deze Secundairy Installer gaat draaien, gaan we RES Workspace Manager al deze zaken voor ons in het profiel plaatsen.

autocad4Hiervoor starten we eenmalig AutoCAD op onder een administrator account. Na het afsluiten van AutoCAD mag je een export van de registry key HKCU\Software\Autodesk\AutoCAD\R18.2\ACAD-A000:409. In deze export moeten we enkel zaken veranderen. Er staan immers paden in die naar het account verwijzen van het administrator account.

autocad2Zoek in de .reg-file naar de waarde c:\users\[administrator account]\AppData\Local en verander dit in %localappdata%. Zoek daarna naar c:\users\[administrator account\AppData\Roaming en verander dit in %appdata%. Importeer vervolgens het registry-bestand in de RES WM Console.

autocad7Vervolgens hebben we nog een aantal bestanden nodig die in het profiel worden opgeslagen. Ga hiervoor binnen de RESS WM Console naar Compositie>Acties per type>Bestanden en Mappen>Profielmap gebruiker. Maak daar een map AppData aan met twee submappen: Local en Roaming. Voeg daarna de mappen AutoDesk toe met alle inhoud en submappen die er onder vallen. Eerst importeer je hem van c:\users\[administrator account]\AppData\Local\AutoDesk en vervolgens c:\users\[administrator account\AppData\Roaming\AutoDesk.

autocad6AutoCad plaats ruim 30mb aan bestanden in het profiel van de gebruiker en deze heeft vervolgens nog niets gedaan (AutoCAD nog nooit opgestart). Daarom raad ik aan voor AutoCad een silo te maken met mandatory profielen of aparte roaming profielen en een eigen Workspace. Bij uitloggen kan de AutoDesk mappen verwijderd worden, zolang je maar de instellingen opslaat uit het register en van de AppData Roaming map (de Local Appdata kan genegeerd worden). Gebruik je roaming profielen, verwijder dan de mappen uit AppData bij het uitloggen van een gebruiker (bij een mandatory profiel worden ze vanzelf verwijderd). Bovenstaande registry en profielmappen laat je voor iedereen op deze silo/workspace plaatsen bij inloggen en opslaan bij uitloggen. Daarmee voorkom je dat profielen van alle gebruikers te groot worden door de overbodige AutoCad data.

Bij het inloggen gebeurd nu het volgende: RES Workspace Manager staat als Shell ingesteld. Deze start bij het inloggen van een gebruiker op. Verwerkt de registersleutels van AutoCAD in het profiel van de gebruiker en vult de mappen binnen AppData. Daarna wordt pas explorer.exe gestart en controleert Windows/AutoCad het profiel van de gebruiker. Aangezien alle informatie in het profiel aanwezig is, wordt geen repair/setup gestart en logt de gebruiker verder normaal in.

Ik heb bij AutoCad supportdesk een vraag uit staan wat de secundairy setup precies triggered bij het inloggen. Mocht ik daar antwoord op krijgen, dan wordt dat bij dit artikel geplaatst, zodat je mogelijk geen silo meer nodig hebt en bovenstaande niet bij alle gebruikers hoeft uit te voeren, maar de registrykey en AppData bestanden op een gebruikersgroep kan plaatsen.

De uitdaging van vandaag: AutoCAD Civil 3D 2012 (deel 1)

autocad1Vandaag voor een klant AutoCAD Civil 3D 2012 geautomatiseerd uitgerold via RES Automation Manager in een beheerde XenApp omgeving met RES Workspace Manager en AppGuard aktief.

Wat beloofde een eenvoudig dagje te worden, heeft toch redelijk wat uitdagingen en een lange dag opgeleverd.

De automatische installatie

De automatische installatie is vrij simpel. Als je de setup van AutoCAD Civil 3D 2012 start heb je de optie om een stille netwerkinstallatie te maken. Je geeft de opties aan en zelfs de laatste servicepacks worden geintegreerd in een netwerk installatie. Zo zouden installatie-programma’s van applicaties vaker gemaakt moeten worden. Wat dat betreft op dit punt een pluim voor Autodesk.

De uitrol was een klein ander verhaal. De setup maakt een shortcut. Die had ik 1-op-1 overgenomen in RES AM via een unattended installation task. Helaas werkte dit niet helemaal. De setup start en na een minuut of 11 was de installatie klaar op de server (taskmanager toonde geen setup*32.exe meer). Echter RES AM liep maar door… en door… en na 45 minuten heb ik hem maar gestopt. RES AM had niet door dat de installatie gestopt was. Via een commandline task werkte het ook al niet. Op die manier kreeg ik binnen 3 sec. een ‘ik ben klaar’ melding, maar setup.exe draaide nog. Dit probleem had ik eerder gezien bij de Oracle Client. Deze had echter een WAIT parameter om de setup te laten wachten met een ‘ok’ teruggeven tot hij daadwerkelijk klaar was. Uiteindelijk voor AutoCAD de parameter /W gevonden. Volgens documentatie bedoelt voor SCCM deployment, maar werkt ook goed met RES AM. Lijkt erop dat die dus ook een soort ‘waçht tot installatie daadwerkelijk klaar is met doorgeven van ‘ok’. Via een unattended commandline loopt het nu perfect (setup.exe /W /qb /I [path naar ini]).

De beheeromgeving

autocad3De eerste keer dat een normale gebruiker (dus met restricties) inlogt op de server krijgen we een interessant fenomeen. Nadat het RES Workspace Manager splashscreen is gestart en halverwege is, zien we een popup van AutoCAD met direct erna een foutmelding dat de Windows Installer niet kan draaien. Mogelijk is AppGuard de boosdoener, maar in de RES WM console is geen melding te vinden van een blokkade. Dit komt vermoedelijk omdat de RES Workspace Manager omgeving van de gebruiker nog niet helemaal gestart is!.

De eventviewer van Windows geeft echter wel een melding:

“De detectie van product {5783F2D7-A000-0409-0102-0060B0CE6BBA}, functie P, onderdeel {705EFC43-67E2-4278-9281-7B6B54D0EB75} is mislukt. De bron HKEY_CURRENT_USER(64)\Software\Autodesk\AutoCAD\R18.2\ACAD-A000:409\Profiles\AutoCAD\Menus\Group2 bestaat niet.”

Wat triggered echter deze repair functie van een MSI? Blijkbaar heeft AutoCAD Civil 3D 2012 een directe verbinding met de Windows Verkenner (explorer.exe) en daarmee de Windows Shell. Want bij een test waarbij we AutoCAD de-installeren van de server, krijgen we een popup dat explorer.exe moet worden afgesloten. Echter, alle schermen zijn al weggeklikt en de melding blijft. Forceren van afsluiten zien we de shell gekilled worden (geen taakbalk meer) en gaat de de-installatie beginnen.

De oplossing van dit probleem bespreek ik verder in deel 2 van deze blog.

Was de verspreiding van xDocCrypt te voorkomen?

malwareNederland (en de rest van de wereld) is op dit moment in de ban van een virus dat zicht razendsnel verspreidt en redelijke schade aanricht aan office documenten, genaamd xDocCrypt/Dorifel. Virusscanners kenden de handtekening van het virus nog niet en grepen daardoor te laat in.

Het virus wordt niet op gebruikelijke manieren op een computer geïnstalleerd. Normaal komt een virus het systeem binnen via besmette USB sticks of via bestanden die worden gedownload van internet of binnenkomen via mail. In dit geval wordt het virus gedownload en geïnstalleerd door bestaande malware (Citadel / Zeus genoemd) die al op de computer staat. Deze software is eerder op de machine terecht gekomen en bouwt een verbinding op met zijn ontwerper. Het doet niets en slaapt totdat het van zijn ontwerper een opdracht krijgt. In dit geval het downloaden van een virus, dat daarna gestart wordt en documenten gaat besmetten. Ondertussen blijkt dat de malware een nieuw virus (Hermes) downloadt dat nog meer kwaad kan aanrichten en zich vooral bezighoudt met het onderscheppen van bankgegevens.

Maar als virusscanners te langzaam zijn met het herkennen van het virus, is er dan toch een mogelijkheid om het virus te voorkomen? Mijn antwoord hierop is dat het nooit helemaal is te voorkomen, maar je kunt het wel moeilijker maken door middel van een goede Workspace Management oplossing.

Kijken we naar Microsoft Windows zelf, dan vinden we daar al een mogelijkheid om het opstarten van het virus te blokkeren. Via de AppLocker functie is een pc met Windows Vista / Windows 2008 of hoger te beveiligen tegen het starten van onbekende executables. RES Workspace Manager 2012 LogoRES Workspace Manager kent een soortgelijke functie en blokkeert het starten van executables waar de gebruiker geen rechten op heeft of die onbekend zijn in het systeem. Het instellen hiervan kost echter wel tijd. Je geeft immers een whitelist op van executables die mogen starten op het systeem. Gelukkig is RES WM zo ontwikkeld dat het al veel van dit soort instellingen automatisch regelt aan de hand van de applicaties die de gebruiker in het startmenu krijgt. Bijkomend voordeel van RES WM is, is dat een gebruiker ook geen applicaties kan starten waar hij geen rechten op heeft, maar andere gebruikers wel. Deze functie kent zowel binnen Windows als binnen RES Workspace Manager de mogelijkheid tot het loggen van applicaties die geblokkeerd worden. Daarbij word je als systeem beheerder snel getriggerd dat er wat aan de hand is binnen de omgeving, zo gauw meerdere gebruikers dezelfde onbekende executable proberen te starten. Overigens had deze functie ook het starten van de Citadel/Zeus malware kunnen voorkomen, waardoor het virus niet eens gedownload had kunnen worden.

Naast Applicatie Security kent RES Workspace Manager ook een Netwerk Security functie. Hierin is het mogelijk om een whitelist of blacklist op te maken van applicaties die het netwerk op bepaalde poorten mogen benaderen. Mocht je hier kiezen voor een whitelist, dan had het virus geen verbinding naar buiten kunnen openen, omdat dit geblokkeerd wordt door de Workspace Manager. Bij gebruik van Blacklists was het virus wel actief geworden, maar had een grotere verspreiding sneller kunnen worden voorkomen, door de gebruikte ip-adressen waar het virus wordt gedownload, te blokkeren op alle machines.

Als laatste biedt de Data Security (Read-Only Blanketing) binnen RES Workspace Manager een goede beveiliging tegen het schrijven naar de systeemdisk. Deze zorgt ervoor dat applicaties niet zomaar op de systeemdisk van een systeem data kan wegschrijven. Je moet daarvoor expliciet toestemming geven per locatie/bestand. In dit geval had dit echter niet geholpen, omdat de malware het virus in het gebruikersprofiel opslaat (c:\users\[username]\application data\roaming). Juist deze locatie is standaard open voor gebruikers, omdat hier alle gebruikersinformatie wordt opgeslagen.

Aangezien het virus wordt opgeslagen in het gebruikersprofiel, hadden hybride profielen (vaste profielen waarbij de Workspace Manager er voor zorgt dat alleen goedgekeurde instellingen worden opgeslagen bij het uitloggen) een extra wapen tegen het virus geweest. Bij het uitloggen van een gebruiker wordt het virus dan weer uit zijn profiel verwijderd. Dit in tegenstelling tot het gebruik van roaming profielen, waarbij het virus zich kan verspreiden naar andere systemen, als de gebruiker van werkplek wisselt.

De bovengenoemde functies van Workspace Managers (en specifiek RES Workspace Manager) worden deels als advies gegeven door het Nationaal Cyber Security Centrum van het Ministerie van Veiligheid en Justitie. Het inregelen van een Workspace Manager oplossing is echter niet in een paar minuten gedaan. Voor meer informatie hierover kunt u onder andere contact opnemen met mijn werkgever, www.centric.eu . Daar kunt u tevens terecht met vragen over het virus en over het oplossen van de aangerichte schade door het virus.

Bronnen: