Wanneer een programma, script of macro wordt gedownload, verschijnt er tijdens de installatie of uitvoering een pop-upvenster met de vraag: "Weet u zeker dat u dit wilt uitvoeren?" of "Wilt u dat het volgende programma deze computer beïnvloedt?" In deze pop-up wordt codeondertekening gebruikt. Codeondertekeningstools zijn cruciaal omdat ze onderscheid maken tussen legitieme software en schadelijke of frauduleuze code.
Codeondertekening is een procedure die de legitimiteit van de auteur en de originaliteit en authenticiteit van digitale informatie, met name softwarecode, verifieert. Het zorgt er ook voor dat de informatie geen kwaadaardige code bevat. Bovendien garandeert het dat deze informatie na digitale ondertekening niet is gewijzigd, vervalst of verwijderd.
Uw projecten die in Visual Studio met Visual Basics en Visual C# zijn ontwikkeld, kunnen worden gepubliceerd en bijgewerkt met ClickOnce. ClickOnce is een Microsoft-technologie die wordt gebruikt om Windows-desktopapplicaties via internet te implementeren en bij te werken. Hiermee kunnen ontwikkelaars hun applicaties publiceren op een webserver of netwerkbestandsshare en deze met één klik beschikbaar stellen aan gebruikers, zonder ingewikkelde installatie- of configuratieprocessen.
Wanneer je je project publiceert met ClickOnce, kun je ClickOnce-manifesten ondertekenen met een certificaat. Dit helpt de legitimiteit van je applicatie te bewijzen en dit proces wordt codeondertekening genoemd . Codeondertekening met ClickOnce biedt verschillende beveiligingsfuncties om ervoor te zorgen dat de applicatie en de updates ervan worden gedownload van een vertrouwde bron en dat gebruikers worden beschermd tegen potentiële beveiligingsrisico's. Het voegt een extra beveiligingslaag toe aan je applicatie en kan het vertrouwen van gebruikers vergroten.
Wanneer u uw project publiceert met ClickOnce zonder dat u zelf heeft meegedacht, verschijnt er vaak een dialoogvenster met een beveiligingswaarschuwing wanneer de toepassing door de gebruiker wordt uitgevoerd.

Maar dergelijke waarschuwingen worden niet weergegeven wanneer u ClickOnce-manifesten ondertekent met een codeondertekeningscertificaat.
Encryption Consulting biedt een codeondertekeningsoplossing, " CodeSign Secure ", waarmee u de sleutels fraudebestendig kunt opslaan en volledige zichtbaarheid en controle over de codeondertekeningsactiviteiten krijgt. De privésleutels van het codeondertekeningscertificaat kunnen worden opgeslagen in een HSM om de risico's van gestolen, beschadigde of misbruikte sleutels te elimineren.
Deze oplossing biedt een tool en certificaat voor het ondertekenen van ClickOnce-manifesten. U moet de tool installeren en configureren en de onderstaande stappen volgen om verder te gaan.
- Installeer en configureer de tool (SigningKSP)
-
Ga via de opdrachtprompt naar de map waar ECGetCert.exe zich bevindt.

-
Voer de opdracht uit: ECGetCert.exe evcodesigning Hierbij is evcodesigning de certificaatnaam die we gebruiken voor het codesigning-doel.
Met deze opdracht wordt het bestand evcodesigning.pem (certificatename.pem) in dezelfde map opgeslagen

-
Open certmgr.msc en ga naar Persoonlijk -> Certificaten. Als er geen certificaatmap is, klik dan met de rechtermuisknop op Persoonlijk -> Alle taken -> Importeren.

-
Er wordt een wizard voor het importeren van certificaten geopend. Klik op Volgende; de opslaglocatie hier is standaard de huidige gebruiker.

-
Zoek op de volgende pagina naar het certificaat. Het zou opgeslagen moeten zijn in dezelfde map als waar EGGetCert.Exe zich bevindt. Selecteer daar evcodesigning.pem (certificatennaam.pem). Als u het bestand niet kunt vinden, selecteer dan alle bestanden onderaan in plaats van het X.509-certificaat. Zodra het certificaat is geselecteerd, klikt u op Volgende.


-
Zorg er op de andere pagina voor dat 'Alle certificaten in het volgende archief plaatsen' is geselecteerd. Daaronder staat het certificaatarchief ingesteld op Persoonlijk. Klik op Volgende en vervolgens op Voltooien. Er verschijnt een dialoogvenster met de melding dat de import is geslaagd.


-
Zodra het certificaat is geïmporteerd, hebt u de vingerafdrukwaarde van uw certificaat nodig. Klik op Persoonlijk -> Certificaten -> en vervolgens op het geïmporteerde certificaat. Navigeer naar 'Details' en scroll naar beneden naar vingerafdruk. U kunt de waarde kopiëren.

Ga terug naar de opdrachtprompt. Voer de volgende opdracht uit. Zorg ervoor dat u de vingerafdruk van uw certificaat in de opdracht plaatst.
certutil -f -repairstore -csp “Encryptie Consulting Sleutelopslag Provider” -user “Mijn” 79656a9ce126fd0d1bb33f4dc73dba308f58b3ac


-
Zodra de opdracht is uitgevoerd, navigeert u naar het project in Visual Studio dat u met ClickOnce wilt publiceren.
-
Klik in de Solution Explorer met de rechtermuisknop op uw project en navigeer naar Publiceren. Klik erop.

-
Er opent een nieuw dialoogvenster. Selecteer 'ClickOnce' en klik op 'Next'.

-
Kies op de volgende pagina een publicatielocatie of laat de standaardlocatie staan (bin\publish) en klik op Volgende.

-
U kunt de installatielocatie naar eigen wens kiezen of de standaardlocatie behouden. Klik op Volgende.

-
Selecteer in het volgende tabblad uw gewenste instellingen en klik op Volgende

-
In Manifesten ondertekenen vinkt u het vakje 'ClickOnce-manifesten ondertekenen' aan en klikt u op 'Selecteer een certificaat uit de winkel'.

Er wordt een dialoogvenster geopend met een certificaat dat oorspronkelijk is geïmporteerd. Klik op OK om verder te gaan.

U kunt nu de certificaatgegevens zien in Sign-manifesten

-
Klik op 'Volgende' om uw configuratie te kiezen en klik op 'Voltooien'.
-
U ziet de voortgang van het aanmaken van het publicatieprofiel en een groen vinkje als het is gelukt

-
U kunt het aangemaakte publicatieprofiel zien.

We hebben ClickOnce-manifesten succesvol ondertekend met Visual Studio. Klik op Publiceren om uw project te publiceren.
Conclusie
Met de digitale handtekening en andere beveiligingsfuncties stelt Signing ClickOnce-manifesten ontwikkelaars in staat om het vertrouwensniveau vast te stellen dat gebruikers in een applicatie moeten hebben. Dit kan de kans verkleinen dat schadelijke software op de computer van een gebruiker wordt uitgevoerd. Met de snelle toename van virussen en malware in online applicaties is het noodzakelijk om dergelijke maatregelen te nemen om schade te voorkomen. Voorkomen is beter dan genezen.
Samenvattend is het integreren van codeondertekening in softwarebeveiliging cruciaal om software te beschermen tegen malwareaanvallen en manipulatie. Code Sign Secure van Encryption Consulting biedt diverse voordelen, waaronder naadloze integratie met ontwikkelworkflows, robuuste authenticatie en encryptie, en aanpasbare prijsopties. Ga voor meer informatie over het gebruik van Code Sign Secure naar: www.encryptionconsulting.com/code-signing-solution/ of neem contact met ons op via: [email protected]
