Meteen naar de inhoud

webinar: Meld je aan voor ons aankomende webinar.

Aanmelden

Hoe u een Excel-macroproject ondertekent met SignTool

Onderteken Excel-macroproject met SignTool

Codeondertekening is een beveiligingsmechanisme dat wordt gebruikt om de authenticiteit en integriteit van digitale code te verifiëren. Het omvat het toevoegen van een digitale handtekening aan code, waarmee gebruikers kunnen vaststellen wie de code heeft gemaakt en of ermee is geknoeid. Codeondertekening wordt vaak gebruikt om uitvoerbare bestanden, bibliotheken en scripts te ondertekenen, maar kan ook worden gebruikt om Excel-macrobestanden te ondertekenen.

Wat is codeondertekening?

Codeondertekening is een beveiligingspraktijk waarbij software digitaal wordt ondertekend met een certificaat om de authenticiteit en integriteit ervan te verifiëren. Codeondertekeningscertificaten worden uitgegeven door vertrouwde certificeringsinstanties (CA) en eindgebruikers de mogelijkheid bieden om te controleren of de software die ze downloaden of uitvoeren, niet is gemanipuleerd of gewijzigd sinds de ondertekening door de uitgever van de software.

Dit helpt voorkomen dat malware en andere schadelijke software op de systemen van gebruikers worden verspreid en geïnstalleerd. Om vertrouwen in een digitale handtekening te creëren en te garanderen dat er niet met de code is geknoeid, vereisen populaire codeondertekeningstools zoals Microsoft Authenticode en Java Code Signing meestal een digitaal certificaat uitgegeven door een vertrouwde externe certificeringsinstantie.

Excel-bestanden ondertekenen

Excel-macrobestanden worden gebruikt om taken in Microsoft Excel te automatiseren. Ze kunnen macro's bevatten: kleine programma's die repetitieve taken automatiseren, zoals het opmaken van gegevens of het genereren van rapporten. Macrobestanden kunnen worden gemaakt met de programmeertaal VBA (Visual Basic for Applications) en kunnen worden opgeslagen met de bestandsextensie .xlsm.

Bedreigingen van macro-economische factoren

Hoewel Office-macro's de beste optie blijven voor bedrijfskritische processen, vormen ze ook een groot beveiligingsrisico. Macro's worden binnen Office-documenten uitgevoerd met dezelfde rechten als de persoon die ze heeft geopend. Macro's verhogen hun rechten nog verder door gebruik te maken van extra exploits, waardoor macro's een krachtig hulpmiddel zijn voor hackers om een ​​organisatie te infiltreren.

Maar wat maakt Macro zo vreselijk? In tegenstelling tot andere programma's gebruiken mensen Office-documenten zonder aarzelen. Vervolgens is er slechts één klik nodig om de macro-uitvoering in te schakelen, wat bijzonder eenvoudig te realiseren is met behulp van social engineering door instructies in een e-mail of zelfs in het document zelf te integreren.

Beheerders komen vaak in de knel als het om macro's gaat, voornamelijk om de volgende redenen:

  • Het is bijna onmogelijk om beleidsinstellingen te bieden die kan definiëren welke macro's mogen worden uitgevoerd.
  • Beleidskaders zoals toepassingsbeheer/whitelisting werkt niet voor macro's.
  • Sommige kwaadaardige macro's kunnen malware-detectoren omzeilen.

Nu rijst de vraag: wat kunnen we doen om onszelf te beschermen tegen macro-dreigingen? Het antwoord is simpel., implementeer Macro Signing om veilige eindgebruikersbeleidsregels te creëren.

Door een Excel-macrobestand te ondertekenen, kunt u ervoor zorgen dat gebruikers de code in het bestand kunnen vertrouwen en dat er niet mee is geknoeid. Het digitaal ondertekenen van de macro's van uw organisatie vormt de basis voor de beleidsmogelijkheden van MS Office. Dit stelt u in staat om

  • Gebruik groepsbeleid om alleen uitvoering toe te staan ​​voor macro's die zijn ondertekend met vertrouwde certificaten, en
  • Wijs vertrouwde certificaten toe aan gebruikers en groepen.

Met CodeSign Secure kunnen we het ondertekenings- en verificatieproces vereenvoudigen. Ons proces omvat: client-side hashing om de serversnelheid te verhogen en HSM's te gebruiken om persoonlijke sleutels op te slaan. Zo wordt het aanvalsoppervlak geminimaliseerd en kunnen bestanden snel en veilig worden ondertekend.

Beperkingen in huidige benaderingen

Uit deze tabel blijkt dat gemakkelijk toegankelijke beleidsregels ofwel onvoldoende beveiligd zijn ofwel een onaanvaardbaar negatieve impact op de bedrijfsvoering hebben:

Methode Beveiligings niveau Implementatie Business Impact Opmerkingen
Laat gebruikers beslissen of ze de uitvoering van macro's willen inschakelen Medium Hoge Hoge Je kunt er niet altijd op vertrouwen dat gebruikers de beste keuzes maken
Macro-uitvoering inschakelen Laag Hoge Hoge Het is nooit gepast om dit in te schakelen.
Schakel de uitvoering van macro's uit, behalve voor digitaal ondertekende macro's Gemiddeld hoog Medium Hoge Het proces van digitale ondertekening in Office is arbeidsintensief en vereist dat macroschrijvers toegang hebben tot de persoonlijke sleutels van hun ontwikkel-pc.
Schakel de uitvoering van macro's uit, behalve voor gebruikers die ze nodig hebben Gemiddeld hoog Laag Medium Elk van deze gebruikers is nog steeds gevaarlijk, en hun aantal neemt vaak toe.
Macro-uitvoering uitschakelen, behalve voor bepaalde opslaglocaties Gemiddeld hoog Gemiddeld hoog Gemiddeld hoog Hoewel hierdoor het aantal directe online- en e-mailaanvallen afneemt, kan iedereen nog steeds een schadelijk document op een betrouwbare plek achterlaten.
Macro-uitvoering voor iedereen uitschakelen Hoge Hoge Laag Zeer veilig, maar vaak onrealistisch
CodeSign Secure gebruiken Schakel de uitvoering van macro's uit, behalve voor digitaal ondertekende macro's Hoge Hoge Hoge Zorg voor een veiligere procedure die voldoet aan het macro-uitvoeringsbeleid voor het ondertekenen, autoriseren en goedkeuren van beleid.

Oplossing voor codeondertekening voor bedrijven

Ontvang één oplossing voor al uw cryptografische behoeften op het gebied van softwarecodeondertekening met onze codeondertekeningsoplossing.

Stapsgewijs ondertekeningsproces

Hier zijn de stappen om een ​​Excel-macrobestand te ondertekenen. Eerst moeten we de vereiste tools installeren.

Stap 1

Wij moeten installeren Windows SDK, die bibliotheken en tools biedt voor het bouwen van Windows-apps. Deze development kit installeert een tool genaamd signtool, die deel uitmaakt van de Windows SDK. Klik op Download the Installer en voer het uit zodra het downloaden is voltooid.

U kunt ervoor kiezen om alleen de Windows SDK Signing Tools voor desktop-apps te installeren. 

Let op: Onthoud het standaardpad dat wordt weergegeven bij installatie. Dit is handig als u deze opdrachten uitvoert vanaf de opdrachtprompt. 

Windows SDK-ondertekeningstools voor desktop-apps

Op de pagina Windows Kits Privacy is elke optie om Microsoft toestemming te geven om inzichten te verzamelen in orde. Klik op Volgende. 

Windows Kits Privacypagina

Accepteer de licentieovereenkomst

Licentievoorwaarden voor Windows-software

Deselecteer alle functies behalve Windows SDK-ondertekeningshulpmiddelen voor desktop-apps, Selecteer vervolgens 'Installeren'. We hebben niet alle functies nodig om het ondertekeningsproces te laten werken.

ondertekeningsproces om te werken

Wanneer u wordt gevraagd of u wilt toestaan ​​dat deze app wijzigingen aanbrengt, selecteert u Ja. 

systeemomgevingsvariabelen

Selecteer ten slotte Sluiten en voeg een pad toe aan de systeemomgevingsvariabelen om opdrachten via de opdrachtprompt effectief uit te kunnen voeren.

Windows Software-ontwikkelingskit

Klik op de Windows-zoekbalk op de taakbalk en typ 'Bewerk de systeemomgevingsvariabelen'. Selecteer vervolgens de gelijknamige optie in het Configuratiescherm. 

Windows-configuratiescherm

Klik omgevingsvariabelen

Windows Signtool-applicatie

Voordat u de variabelenlijst bewerkt, navigeert u met behulp van de bestandsverkenner naar de locatie waar de Windows SDK is geïnstalleerd. U moet het pad kopiëren van de map waarin de SignTool-toepassing zich bevindt. Het standaardpad is C:\Program Files (x86)\Windows Kits\10\bin\10.0.22621.0\x64, Zie de onderstaande schermafbeelding. Klik met de rechtermuisknop en kopieer het pad zoals weergegeven. U kunt ook de SignTool-applicatie onderaan de bestandslijst zien; dit is de opdracht die u gaat uitvoeren. 

signtool-applicatie

Klik in de lijst Systeemvariabelen op Nieuw. Typ vervolgens Pad als variabelenaam en kopieer en plak het bovengenoemde pad. Klik vervolgens op OK aan de omgeving houden variabelen venster en system vastgoed venster. 

omgevingsvariabelen

Om de installatie te testen, opent u de opdrachtprompt en typt u tekengereedschap, en de uitvoer zou er dan als volgt uit moeten zien. 

standaard signtool installatie

De standaard installatielocatie voor signtool is bijvoorbeeld: C:\Program Files (x86)\Windows Kits\10\bin\10.0.22621.0\x64 

Stap 2

Download en installeer de Onderwerpinterfacepakket voor het digitaal ondertekenen van Microsoft Office-bestanden

Deze link gaat naar de downloadpagina van Microsoft voor een Interface Package. Deze download bevat twee Subject Interface Package (SIP)-bibliotheken die de digitale ondertekening en handtekeningverificatie van Visual Basic for Applications-projecten ondersteunen in de meeste Office-bestandsindelingen die VBA-macro's ondersteunen. Deze zijn vereist om SignTool .xls- en .xlsm-bestanden te laten herkennen. Volg na het downloaden van het installatieprogramma de onderstaande stappen.

Interfacepakketten

Nadat het .exe-bestand is gedownload, opent u het en kiest u een installatiemap, of maakt u een nieuwe map zoals hieronder weergegeven:

Excel-macro's ondertekenen

Er wordt aangegeven dat de bestanden succesvol zijn uitgepakt en dat uw installatiemap een aantal bestanden bevat. Dit zijn de bibliotheken die essentieel zijn voor het inschakelen van Excel-macro's. We moeten een paar opdrachten uitvoeren om deze .dll-bestanden in het register te installeren.

Open een beheerdersopdrachtprompt en typ het volgende. Het pad is waar u zojuist de bestanden hebt geïnstalleerd:

regsvr32.exe

regsvr32.exe  

Ga voor meer informatie over het registreren van OLE-besturingselementen naar Microsoft's website.

Als dit lukt, ziet u een bericht: “DIIRegister Server in geslaagd." 

Oplossing voor codeondertekening voor bedrijven

Ontvang één oplossing voor al uw cryptografische behoeften op het gebied van softwarecodeondertekening met onze codeondertekeningsoplossing.

Stap 3

Vervolgens moeten we de Microsoft Visual C++ Redistributable Installer downloaden. Deze bibliotheken zijn vereist voor veel applicaties die gebouwd zijn met Microsoft C- en C++-tools. Omdat de tools die we gebruiken deze bibliotheken nodig hebben, is het noodzakelijk om ze te installeren. Zie voor meer informatie Microsoft's documentatie.

Downloadlink voor Microsoft Visual C++ Redistributable Installer:

Downloaden

Voer het installatieprogramma uit, accepteer de algemene voorwaarden en klik installeren.

Microsoft Visual C++ Redistributable-installatieprogramma
Microsoft Visual C++ 2010-installatie voltooid

Stap 4

Nu kunnen we de opdrachtprompt gebruiken om onze bestanden te ondertekenen. Het ondertekenen van Windows Excel-macrobestanden is mogelijk met de opdracht signtool. /kc zal de naam van uw certificaat zijn, /f zal het pad naar het certificaat.pem-bestand zijn, /fd en /td zijn de gewenste algoritmen, /csp is de naam van de crypto-opslagprovider (in dit geval Encryption Consulting Key Storage Provider), /tr is het adres van de tijdstempelserver, daarna de /td SHA256 is het pad tussen aanhalingstekens van het te ondertekenen bestand.

Met dit geval van macro-ondertekening kunt u gebruiken .xls of .xlsm bestandsextensies en voer de ondertekeningsopdracht uit.  

signtool sign /csp “Encryptie Consulting Sleutelopslagprovider” /kc evcodesigning /f C:\Gebruikers\Beheerder\Bureaublad\VoorTesten\evcodesigning.pem /fd SHA256 /tr http://timestamp.digicert.com /td SHA256 “C:\Gebruikers\Beheerder\Bureaublad\VoorTesten\MacroTest.xlm”

macro-ondertekening

Stap 5

Nadat u het bestand heeft ondertekend, kunt u het verifiëren en de informatie erover bekijken. Om het ondertekende bestand te verifiëren, gebruikt u eenvoudig de opdracht verify: 

signtool.exe verifiëren /pa C:\Users\Administrator\Desktop\ForTesting\MacroTest.xlsm 

het ondertekenen van het bestand

Conclusie

Zodra het Excel-macrobestand is ondertekend, zien gebruikers die het openen een waarschuwing dat het bestand macro's bevat. Ze zien ook de digitale handtekening en kunnen controleren of deze geldig is. Als de digitale handtekening niet geldig is, krijgen gebruikers een waarschuwing dat het bestand mogelijk schadelijke code bevat en mogelijk niet veilig is om te openen.

Kortom, het integreren van code signing in softwarebeveiliging is cruciaal om deze te beschermen tegen malware-aanvallen en manipulatie. Code Sign Secure van Encryption Consulting biedt verschillende voordelen, waaronder naadloze integratie met ontwikkelworkflows, robuuste authenticatie en encryptie, en aanpasbare prijsopties. Ga voor meer informatie over hoe u Code Sign Secure kunt gebruiken naar: Code Sign-oplossing of neem contact met ons op via: info@encryptionconsulting.com