Bij PE denk ik meteen aan Bart. Maar uit die koker is dit programma dus niet afkomstig. Bij sommige tools duurt het even voor ze hun nut bewijzen en ze een plek hier op de site verdienen. Bij PE Explorer was van begin af aan duidelijk dat het programma de aandacht waard was. Dit programma is behoorlijk spannend te noemen. De vraag is alleen voor wie de tool bedoeld is en of je er ook echt iets mee kunt.

Portable Executable

De ‘PE’ in PE Explorer is de afkorting van Portable Executable en dat is een bestandsformaat voor programmacode in zowel 32- als 64-bit versies van Windows. Portable wil daarbij niet zeggen dat het applicaties zijn die via een usb-stick moeten worden geïnstalleerd of die zelfs helemaal geen installatie nodig hebben. Portable staat hier voor de compatibiliteit van de soorten programma’s met de instructieset van verschillende architecturen van besturingssystemen. In het geval van PE zijn dat ondermeer de x86 architectuur IA-32, maar ook Intel’s IA-64, x86-64 (AMD64/Intel64) en verschillende instruction set architectures zoals van Windows NT op MIPS, Alpha en PowerPC maar ook Windows CE.

Bestanden in het PE-formaat zijn zeker niet uniek maar komen juist heel veel voor op het Windows-platform zoals .exe, .dll, .sys en .acm (drivers), .ocx van ActiveX controls, taalpakketten (.mui), onderdelen van het Configuratiescherm (.cpl), screensavers (.scr) en nog veel meer. PE Explorer kan deze bestanden openen zoals Word een document opent. Het gaat zelfs op dezelfde manier. Via File, Open en daarna een bestand van een van de genoemde bestandstypes selecteren.

PE Explorer neemt een kijkje in de Adobe Reader 9.0 (AcroRD32.exe).

Headers Info

Wordt een bestand geopend, dan toont PE Explorer de ‘Headers Info’ zoals de compatibele architectuur, de time en date stamp, informatie over pointers en symbols en nog veel meer. Het is op deze manier mogelijk al heel veel informatie over een uitvoerbaar bestand te vergaren zonder het bestand te hoeven starten. Dat is handig, maar om de gegevens die PE Explorer uit het programma haalt te begrijpen is een flinke dosis programmeerkennis noodzakelijk. Zeker wanneer, heel handig, direct vanuit een relevant veld bijvoorbeeld de Characteristics Editor wordt gestart. Hier kunnen kenmerken van de executable in worden aangepast, zoals het wel of niet ondersteunen van adresruimten groter dan 2GB, of het eerst naar het wisselbestand kopiëren van de code alvorens deze uit te voeren (wanneer het bestand vanaf een verwisselbaar medium wordt gestart). Door deze opties in of uit te schakelen, wordt de informatie aangepast die het besturingssysteem over een applicatie krijgt wanneer deze wordt gestart.

Met de Characteristics Editor wordt de informatie over een applicatie bestemd voor het OS, aangepast.

Via het menu View kunnen weer andere delen van informatie worden uitgelezen en getoond. Mooi om te zien is bijvoorbeeld het onderdeel Authenticode Signature, die de digitale certificaten waarmee het programma ondertekend is laat zien. PE Explorer kan daarbij ook een controle uitvoeren door de public key uit te lezen waarmee de executable is ondertekend en daarmee de message digest ontsleutelen. Door deze hash vervolgens te vergelijken met de oorspronkelijke hash wordt direct duidelijk of er aan het bestand is geknutseld sinds het is ondertekend, wat het bewijs kan zijn van illegale activiteiten.

Controleren of er sinds de ondertekening van een bestand nog iets aan veranderd is door de Real File Hash en de Signed File Hash te vergelijken.

Hulp

De Help-functie van PE Explorer is een prima steun bij het ontdekken van de mogelijkheden van het programma. De uitleg is uitgebreid, helder en bovendien ruim voorzien van screenshots. Dit maakt het mogelijk wat men zelf ziet te vergelijken met wat volgens de Help-functie te zien zou moeten zijn. Zo is onder meer te leren hoe het met de Resource Editor mogelijk is vooral grafische onderdelen in een programma zichtbaar te maken en ook te exporteren of te vervangen door eigen media. De mogelijkheden van PE Explorer zijn nog veel groter dan hier kunnen worden besproken. De makers van het product hebben een online ‘feature tour’ die in tekst en afbeeldingen laat zien wat het programma allemaal kan.

Alle media-content in een executable kan door PE Explorer geëxporteerd worden (werkt niet in de trial-versie)

Voor de beheerder? Voor welke beheerder?

Om de volledige kracht van PE Explorer te benutten heeft een beheerder een behoorlijke dosis programmeerkennis nodig. Wie echter over voldoende daarvan beschikt zal de tool gericht kunnen inzetten om bijvoorbeeld de identiteit van de maker van een executable vast te stellen (en daarmee betrouwbaarheid van het programma). Verder zal hij het kunnen gebruiken om system errors bij het laden van modules of het uitvoeren van het programma op te sporen, of hij zal via de Application Manifest Wizard TrustInfo aan een programma toe kunnen voegen om het altijd als Administrator uit te voeren, en hij zal zelfs een executable kunnen repareren.

Hoewel PE Explorer zelf prima te gebruiken is op 64-bit versies van Windows en Windows Server en het PE-bestandsformaat zoals gezien ook verschillende 64-bit architecturen ondersteunt, doet PE Explorer dat nog niet. Wordt een 64-bit EXE of DLL geopend, dan verschijnt er de melding dat hiermee niks kan worden aangevangen. Volgens Yuri Rai van Heaventools Software zal ondersteuning voor 64-bit code in de 2.0 versie van PE Explorer worden geïntroduceerd. Men hoopt die nieuwe versie ‘niet later dan Q1 2011 en mogelijk al eerder’ gereed te hebben.

De huidige versie van PE Explorer ondersteunt nog geen 64-bit executables.

Kosten

PE Explorer is geen gratis programma maar voor de kennismaking is voorzien in een 30 dagen trialversie. Voor persoonlijk gebruik kost het programma 99 Euro plus BTW, voor inzet binnen een bedrijf of andere commerciële toepassing kost het 169 Euro plus BTW. Een licentie geeft recht op de huidige versie plus 18 maanden updates en support.

Conclusie

PE Explorer is geen allemansvriend. Toch zullen ontwikkelaars en ook systeembeheerders de kracht van het programma weten te waarderen wanneer ze de unieke mogelijkheden die het biedt een keer nodig hebben. Om het dan ook echt gericht en goed te kunnen inzetten moeten zij echter wel eerst een flinke basis leggen aan kennis van wat dit programma kan en wat het voor de werking van programma’s betekent. Veel oefenen dus. En de fantastische helptekst van PE Explorer kan daarbij helpen.

Bron: Techworld