Technische beveiliging van software ICT-Office 15 februari 2012
Marcel Hartgerink Wibu-Systems BV
[email protected] Technische beveiliging van software, ICT-Office 15 februari 2012
Agenda
Wibu-Systems, waarom licentiëren en beveiligen Oplossingen voor licentiëring van software Beveiliging tegen illegaal gebruik en namaak Automatisch aanmaken van licenties Praktijkvoorbeelden
Technische beveiliging van software, ICT-Office 15 februari 2012
2
WIBU-SYSTEMS
Opgericht in 1989 door Oliver Winzenried en Marcellus Buchheit Sinds 1995 distributie in Nederland
Hoofdkantoor in Karlsruhe, Duitsland 50 werknemers in Duitsland, 20 in de rest van de wereld
Technische beveiliging van software, ICT-Office 15 februari 2012
WIBU-SYSTEMS Excellente reputatie 23 jaar ervaring Microsoft Gold Certified Partner
Top 3 leverancier wereldwijd (IDC 2005) De beste beveiliging, technologie leider ISO 9001:2000 gecertificeerd
Lid van ICT-Office
Technische beveiliging van software, ICT-Office 15 februari 2012
Slogans
The secure way to profit
Technische beveiliging van software, ICT-Office 15 februari 2012
Onze technologieën
CodeMeter CmDongle op USB | PC-Card | Express-Card | ASIC | SD-Card | microSD-Card | CF-Card CmActLicense (activatie / koppeling aan PC)
CodeMeter License Central Voor uitgifte en beheer van licenties Via SOAP/XML connector aan back-office Met gateway voor uw applicatie
Technische beveiliging van software, ICT-Office 15 februari 2012
6
6.000 Klanten – Miljoenen eindgebruikers AGFA, Alcatel Lucent, Ardis, Aveva, Robert-Bosch, Buhl Data, CA Computer Associates, Captaris, China Unicom, Ergosoft, eSim Games, Graphisoft, Iris Group, ITM Software, Jenoptik, Leica Microsystems, LVD, Mensch und Maschine, MAGIX, Motorola, OCE, PTV, Pytha Lab, RIB, Philips Research, PvO, Shanghai GM, SIEMENS,
SOFiSTiK, Steganos, Toyota Motorsport, WEB.de, Weblications, WSCAD, ZSK Stickmaschinen, ZTE, …
Technische beveiliging van software, ICT-Office 15 februari 2012
De softwaresector in Nederland
24.370 bedrijven 25.000.000.000 euro omzet 17.300.000.000 euro bruto toegevoegde waarde 2,8% van het BNP
Bron: Onderzoek Dialogic 2010 Technische beveiliging van software, ICT-Office 15 februari 2012
Geen software licentiëring zonder beveiliging Verlies door piraterij in 2010
$ 58.754.000.000 (42%)
Nederland:
$
591.000.000 (28%)
België:
$
233.000.000 (25%)
Verenigd Koninkrijk:
$ 1.846.000.000 (27%)
Duitsland:
$ 2.096.000.000 (27%)
Frankrijk:
$ 2.579.000.000 (39%)
China:
$ 7.779.000.000 (78%)
Verenigde Staten:
$ 9.515.000.000 (20%)
Slechts beperkte groei door toepassing van DRM Bron: BSA/IDC, Piracy Study May 2011 Technische beveiliging van software, ICT-Office 15 februari 2012
9
Marcel Hartgerink
Agenda
Wibu-Systems, waarom licentiëren en beveiligen Oplossingen voor licentiëring van software Beveiliging tegen illegaal gebruik en namaak Automatisch aanmaken van licenties Praktijkvoorbeelden
Technische beveiliging van software, ICT-Office 15 februari 2012
11
DE OPLOSINGEN VAN DE MARKTLEIDERS
De belangrijkste aanbieders: SafeNet/Aladdin Flexera Wibu-Systems Totaaloplossing voor ISV’s:
Software Licentiëring Software Beveiliging
Koppeling met webshop, backoffice, CRM of ERP Technische beveiliging van software, ICT-Office 15 februari 2012
De verschillende licentiemodellen
Onbeperkt voor 1 gebruiker Voor een aantal unieke gebruikers Voor een aantal gelijktijdige gebruikers Tijdsgelimiteerd Bepaalde gebruiksperiode
Modulair Pay-per-use
Pay-per-feature Technische beveiliging van software, ICT-Office 15 februari 2012
Voordelen variabele software licentiëring
Alle opties beschikbaar Flexibele inzet mogelijkheden Meer toegevoegde waarde Meer rendament (terugkomende verkoop) Tevreden klanten in meerdere
markt segmenten
Technische beveiliging van software, ICT-Office 15 februari 2012
Eén Licentie Server voor uw programma!
CmDongle = DRM met sleutel CmActLicense = Geactiveerde licentie, op basis van systeem eigenschappen
Software
CodeMeter Licentie Server
Activatie
Sleutel
CodeMeter License Server verzorgt alle licentie verzoeken Eén executable Technische beveiliging van software, ICT-Office 15 februari 2012
15
CodeMeter – De basis
Basis: Firm Code + Product Code Wibu-Systems verstrekt de unieke Firm Code Product Code vrij te kiezen Onbeperkt aantal (6.000) licentie containers
Verschillende optionele PIOs (Product Item Options) Alleen te beschrijven met de juiste Firm Security Box Technische beveiliging van software, ICT-Office 15 februari 2012
Firm Code: 10 Product Code: 201.000 PIOs
Product Code: 201.001 PIOs
… 16
Product Item opties 1
Text (beschrijft de licentie, niet relevant voor de beveiliging, aan te passen zonder FSB) License Quantity (concurrent users / floating licenses in het netwerk en voor lokaal gebruik) Unit Counter (aantal starts, clicks of registratie van de gebruikstijd, verlaagd tijdens runtime zonder FSB) Feature Map (tot 32 verschillende modules of versies kunnen elk afzonderlijk geactiveerd worden) Technische beveiliging van software, ICT-Office 15 februari 2012
17
Product Item opties 2
(Extended) Protected Data (vrij leesbaar, 128 x 256 Byte, bijv. de naam van de gebruiker) Customer Owned License Information (zoals Protected Data, 256 Byte) Hidden Data (leesbaar met wachtwoord, hierin bijv. de sleutel voor ECC, AES of RSA encryptie)
Secret Data (niet leesbaar, ook hierin bijv. de sleutel voor ECC, AES of RSA encryptie) User Data (vrij lees- en schrijfbaar, 256 Byte) Technische beveiliging van software, ICT-Office 15 februari 2012
18
Een centrale licentieserver in het netwerk
Technische beveiliging van software, ICT-Office 15 februari 2012
19
Architectuur
Technische beveiliging van software, ICT-Office 15 februari 2012
Hoe wordt de sleutel samengesteld?
Firm Code
Black Key
Product Code
Feature Code
Release Date
Feature Map
Maintenance Period
SHA 256
AES 128 bit
Firm Key
Encryption Code
Technische beveiliging van software, ICT-Office 15 februari 2012
Enc. Code Options
“Key-Facts”
Symmetrische versleuteling 128-Bit AES (Advanced Encryption Standard) Te gebruiken voor software beveiliging Individuele versleuteling van data
Asymmetrische versleuteling
224-Bit ECC (Elliptic Curve Cryptography) 1024-Bit RSA (Rivest Shamir Adleman) Te gebruiken voor handtekeningen Voor authentificatie Beveiliging van Software as a Service (SaaS)
Technische beveiliging van software, ICT-Office 15 februari 2012
Hoe veilig is 128 bit AES I
128 bit AES Kans van 1 op …… 340282366920938000000000000000000000000 99.999999999999999999999999999999% veilig!
Technische beveiliging van software, ICT-Office 15 februari 2012
Hoe veilig is 128 bit AES II
Capaciteit hackers: 6.000.000.000 mensen op de wereld met een PC Een PC met 1.000.000.000 berekeningen / seconde 6 x 10exp18 berekeningen / seconde 1.9 x 10exp26 berekeningen / jaar 2.6 x 10exp36 berekeningen / tijd sinds oerknal Nodig voor 1 hack: 128 bit = 3.4 x 10exp38 berekeningen, d.w.z. dat het na 120 keer de leeftijd van ons universum is te kraken! Technische beveiliging van software, ICT-Office 15 februari 2012
Koppeling aan de PC-hardware
Automatisch Bindings Schema (SmartBind) Zelf gedefinieerd, mogelijkheden:
N: Netwerk adapter (Mac-adres) D: Disk (het “echte” serienummer van de harddisk) B: Bios (serienummer) C: CPU-type (type processor)
Combinatie van alle kenmerken is mogelijk (3 van 4) of (2 van 3) is mogelijk Voorbeelden: DCBN:4 | DCBN:3 | N:1 | D:1 | DCB:2 Technische beveiliging van software, ICT-Office 15 februari 2012
25
Koppeling aan PC-configuratie
IP-Address Machine-SID None Geen binding Levering van al geactiveerde licentiefile Slechts één keer per PC
Serial Koppeling aan een eigen serienummer
Random Technische beveiliging van software, ICT-Office 15 februari 2012
26
Verdere PC-bindings mogelijkheden
Uitbreiding CodeMeter Runtime met eigen .dll Bijvoorbeeld door binding aan Willekeurig welke systeem eigenschappen Vreemde dongles Serienummer-chips
Test of oorspronkelijk is tijdens laden Met Firm Key
Licentiedata moeten bij de dll passen Wordt aangegeven als apart bindingsschema Technische beveiliging van software, ICT-Office 15 februari 2012
27
Activering via internet
Installation License Request File License Activation File CodeMeter License Central
Technische beveiliging van software, ICT-Office 15 februari 2012
Activation
Licensee
Licensor
License Information File
28
Activering via telefoon
File Installation
Installation code Activation code CodeMeter License Central
Technische beveiliging van software, ICT-Office 15 februari 2012
Activation
Licensee
Licensor
License Information
29
Samenvatting – dongle of activatie?
CmDongle Token op USB, Interne USB, SD, microSD, CF, ExpressCard Mobiel Best mogelijke beveiliging
CmActLicense
Versleutelde licentiefile op harddisk Met SmartBind best mogelijk beveiliging Of: Mac-adres, Disk-SN, Bios-CN en/of CPU-type Of: IP-Adres, Unbound, Serial (bijv. van oude sleutel)
Technische beveiliging van software, ICT-Office 15 februari 2012
30
Agenda
Wibu-Systems, waarom licentiëren en beveiligen Oplossingen voor licentiëring van software Beveiliging tegen illegaal gebruik en namaak Automatisch aanmaken van licenties Praktijkvoorbeelden
Technische beveiliging van software, ICT-Office 15 februari 2012
31
Beveiliging tegen wijzigingen en namaak
Reverse engineering is gemakkelijk Reflector by Lutz Roeder IDA Pro ILDASM
.NET en Java code is helemaal een open boek Hackers en klanten hebben steeds betere tools
Nieuwe eisen aan licentiëring en beveiliging Enkele voorbeelden Technische beveiliging van software, ICT-Office 15 februari 2012
32
Schematische voorstelling
Technische beveiliging van software, ICT-Office 15 februari 2012
Is er nog wat te raden?
Technische beveiliging van software, ICT-Office 15 februari 2012
Ook nu nog erg gemakkelijk te verwijderen!
Technische beveiliging van software, ICT-Office 15 februari 2012
Conclusie
.NET betekent: U zendt uw source code samen met uw applicatie. Obfuscatie helpt niet echt, de code is nog steeds leesbaar. Gecompileerde native code is wat moeilijker te analyseren, maar ook zonder magie te kraken.
Een simpele check is niet voldoende om uw software te beveiligen tegen piraterij en namaak. == > gebruik versleuteling < == Technische beveiliging van software, ICT-Office 15 februari 2012
Oplossing Versleuteling van de executable code voor levering
onbeveiligde applicatie
versleuteling AxEngine
Ontsleuteling van de benodigde functies in het geheugen gedurende de runtime.
ontsleuteling AxEngine
Technische beveiliging van software, ICT-Office 15 februari 2012
AxProtector – Automatische versleuteling
AxProtector Windows 32/64 Mac OS X Linux
AxProtector voor .NET .NET 2.0, 3.0, 3.5 en 4.0
AxProtector voor Java Java applicaties Java servlets
AxProtector voor Linux Technische beveiliging van software, ICT-Office 15 februari 2012
38
AxProtector voor .NET – gedurende runtime
2 De AxProtector classes pakken de originele code uit en ontsleutelen deze 3 De originele code wordt gebruikt Technische beveiliging van software, ICT-Office 15 februari 2012
beveiligde applicatie class … methods … class … fields … methods … fields …
1
Data section (versleutelde originele code)
AxProtector classes
1 De nieuwe methods roepen de classes van AxProtector aan
.Net code na versleuteling
Technische beveiliging van software, ICT-Office 15 februari 2012
Who can read „The Matrix“?
Technische beveiliging van software, ICT-Office 15 februari 2012
42
Agenda
Wibu-Systems, waarom licentiëren en beveiligen Oplossingen voor licentiëring van software Beveiliging tegen illegaal gebruik en namaak Automatisch aanmaken van licenties Praktijkvoorbeelden
Technische beveiliging van software, ICT-Office 15 februari 2012
43
Distributie en beheer van licenties
Technische beveiliging van software, ICT-Office 15 februari 2012
CodeMeter License Central I
Technische beveiliging van software, ICT-Office 15 februari 2012
Page 45
CodeMeter License Central II
Technische beveiliging van software, ICT-Office 15 februari 2012
Page 46
CodeMeter License Central III
Technische beveiliging van software, ICT-Office 15 februari 2012
Page 47
CodeMeter License Central IV
Technische beveiliging van software, ICT-Office 15 februari 2012
Page 48
ERP Integratie
Alles wat u moet doen is: Een veld genaamd ticket nummer in order tabel zetten SOAP Requests (XML) aanroepen gedurende het verkoop proces (ERP Connector)
Minimale wijzigingen aan CRM / ERP systeem Geen overbodige data
„Look and Feel“ blijft hetzelfde voor de gebruiker Licentie configuratie binnen de CodeMeter License Central door de experts Technische beveiliging van software, ICT-Office 15 februari 2012
Page 49
Online Shop integratie
De meeste Online Shops bieden interfaces aan voor licentie generators Versturen van order gegevens Aanmaak van een licentie string
Individuele eCommerce Connector Zet order data om in SOAP (XML) Ontvangt antwoord van CodeMeter License Central Verstrekt een licentie string
Toon het ticket in de Online Shop Technische beveiliging van software, ICT-Office 15 februari 2012
Page 50
Conclusie
Technische beveiliging van software, ICT-Office 15 februari 2012
Page 51
Meer weten?
Secure Code & Software Licensing seminar op 11-04 Muiden, 15-05 Zwolle, 29-05 Eindhoven. Product Training op 23 en 24 april in ons kantoor in Bletchley Park (UK).
[email protected]
[email protected] 074-7501495
Technische beveiliging van software, ICT-Office 15 februari 2012
Agenda
Wibu-Systems, waarom licentiëren en beveiligen Oplossingen voor licentiëring van software Beveiliging tegen illegaal gebruik en namaak Automatisch aanmaken van licenties Praktijkvoorbeelden
Technische beveiliging van software, ICT-Office 15 februari 2012
53
Case Story 1: Plaxis CodeMeter klant sinds 2006 CodeMeter License Central klant sinds 2010 Plaxis:
Voor alle producten: 3D Foundation, 3D Tunnel, etc..
Maakten hiervoor gebruik van de Hasp Hardlock
Eén sleutel voor het hele netwerk
Remote programming
Sinds 2010 CodeMeter License Central gekoppeld aan SalesForce
Technische beveiliging van software, ICT-Office 15 februari 2012
54
Case Story 2: Easysign CodeMeter en CodeMeter License Central klant sinds 2009
Plaxis:
Voor alle producten, van EasySIGN starter tot EasySIGN Master
Maakten hiervoor gebruik van de Hasp-4 en Hasp-HL sleutels
Klant kiest tussen CodeMeterAct (PC-binding) of CodeMeter (USB)
Vele modules en tijdsgelimiteerde licenties
Technische beveiliging van software, ICT-Office 15 februari 2012
63
Dank voor uw aandacht!
Technische beveiliging van software, ICT-Office 15 februari 2012