SlideShare ist ein Scribd-Unternehmen logo
Die hohe Kunst Tretminen in Ihrer
Software zu verstecken
Rüdiger Kügler | VP Sales
ruediger.kuegler@wibu.com
Wolfgang Völker | Leiter Support & Produktmanagement
wolfgang.voelker@wibu.com
Sicherer Software Schutz
19.10.2016 © WIBU-SYSTEMS AG 2016 - Die hohe Kunst Tretminen in Ihrer Software zu verstecken 1
Agenda
19.10.2016 © WIBU-SYSTEMS AG 2016 - Die hohe Kunst Tretminen in Ihrer Software zu verstecken 2
 Angriffsmethoden der Hacker
 Dynamische Codeanalyse
 Statische Codeanalyse
 Integration in .NET-Anwendungen
 Komplett automatisch mit
AxProtector .NET
 Manuell im eigenen Sourcecode
 Das Konzept von Fallen
 Was sind Fallen
 Geheime Botschaften an den Dongle
 Wie werden Fallen ausgelöst
 Integration in native
Windows-Anwendungen
 Manuell im eigenen Sourcecode
 Simuliertes Auslösen einer Sperre
Angriffsmethoden
der Hacker
19.10.2016 © WIBU-SYSTEMS AG 2016 - Die hohe Kunst Tretminen in Ihrer Software zu verstecken 3
Methoden und Tools der Hacker
 Dynamische Codeanalyse
 Debuggen der Anwendung während der Ausführung
 Olly-Debug, MGD, ImpRec, …
 Breakpoints, Patchen von Code, Memory Dumps, …
 Statische Codeanalyse
 Disassemblieren einer Anwendung ohne sie auszuführen
 IDA Pro, Reflector, Just Decompile, …
 Patchen von Code, Analyse des Programmablaufs, Manuelle Entschlüsselung und
Rekonstruktion …
19.10.2016 © WIBU-SYSTEMS AG 2016 - Die hohe Kunst Tretminen in Ihrer Software zu verstecken 4
 DEMO hier
 Just Decompile + Reflexil für Patchen einer Abfrage
 MSG für Memory Dump + ImpRec zum Fixen der IAT
 Zeigen: Verschlüsselt unverschlüsselt
 Message: Verschlüsseln alleine reicht nicht
19.10.2016 © WIBU-SYSTEMS AG 2016 - Die hohe Kunst Tretminen in Ihrer Software zu verstecken 5
Das Konzept von Fallen
19.10.2016 © WIBU-SYSTEMS AG 2016 - Die hohe Kunst Tretminen in Ihrer Software zu verstecken 6
AxProtector
19.10.2016 © WIBU-SYSTEMS AG 2016 - Die hohe Kunst Tretminen in Ihrer Software zu verstecken 7
Geschützte AnwendungKompilierte Anwendung
Header
AxEngine
(Security Engine)
AxProtector
Verschlüsselte
Code Section
Verschlüsselte
Data Section
Verschlüsselte
Resource Section
Header
Data Section
Resource Section
Code Section
AxProtector - Sicherheit
 Die Anwendung wird komplett beim Start entschlüsselt
 Verhinderung von Memory Dumps durch
 Erkennung von Tools für Memory Dumps
 Modifikation der IAT (Import Address Table)
 Modifikation des Codes der Anwendung
 AxProtector bietet hohe Sicherheit mit wenig Aufwand
 IxProtector bietet die Möglichkeit die Sicherheit noch weiter zu erhöhen
19.10.2016 © WIBU-SYSTEMS AG 2016 - Die hohe Kunst Tretminen in Ihrer Software zu verstecken 8
AxProtector und IxProtector
19.10.2016 © WIBU-SYSTEMS AG 2016 - Die hohe Kunst Tretminen in Ihrer Software zu verstecken 9
Geschützte AnwendungKompilierte Anwendung
Header
Data Section
Resource Section
AxProtector
IxProtector
Header
Verschlüsselte
Funktion
Verschlüsselte
Funktion
Verschlüsselte
Data Section
Verschlüsselte
Resource Section
AxEngine
(Security Engine)
Verschlüsselte
Code Section
Funktion Funktion
Code Section
AxProtector und IxProtector - Sicherheit
 IxProtector geschützte Stellen nach dem Start noch verschlüsselt
 Entschlüsselung erfolgt per API-Call zur Laufzeit
 Schutz gegen Memory Dumps
 Code ist nie komplett entschlüsselt im Speicher
 Entschlüsselter Code wird per Code Moving an einer anderen Stelle im Speicher
ausgeführt
 IxProtector bietet höchste Sicherheit gegen dynamische Codeanalyse
 Fallen bieten die Möglichkeit die Sicherheit speziell gegen statische
Codeanalyse noch weiter zu erhöhen
19.10.2016 © WIBU-SYSTEMS AG 2016 - Die hohe Kunst Tretminen in Ihrer Software zu verstecken 10
Geschützte Anwendung
AxProtector und IxProtector und Fallen
19.10.2016 © WIBU-SYSTEMS AG 2016 - Die hohe Kunst Tretminen in Ihrer Software zu verstecken 11
Header
Verschlüsselte
Funktion
Verschlüsselte Data Section
Verschlüsselte Resource Section
AxEngine
(Security Engine)
Verschlüsselte
Funktion
Verschlüsselte
Funktion
Verschlüsselte
Falle
Verschlüsselte
Funktion
Verschlüsselte
Falle
Verschlüsselte Code Section
AxProtector und IxProtector und Fallen - Sicherheit
 Fallen sind verschlüsselte Funktionen die einen Sperr-Code enthalten
 Fallen sind von verschlüsselten Funktionen nicht zu unterscheiden
 Fallen werden im normalen Betrieb der Software nie aufgerufen
 Nicht referenziert, aber z.B. als public deklariert
 if (false) {call trap(x);}
 if (Lohnsteuer > 100%) {call trap(x);}
 Höchster Schutz gegen statische Codeanalyse
 Auslösen einer Falle sperrt den Schlüssel im CmDongle
 Hacker benötigt Fachwissen über die Anwendung und die Thematik
19.10.2016 © WIBU-SYSTEMS AG 2016 - Die hohe Kunst Tretminen in Ihrer Software zu verstecken 12
AxProtector .NET
19.10.2016 © WIBU-SYSTEMS AG 2016 - Die hohe Kunst Tretminen in Ihrer Software zu verstecken 13
Geschützte AnwendungKompilierte Anwendung
Header
Code
Header
Ressourcen AxProtector .NET
Stub Code
(ohne geistiges Eigentum)
AxEngine
(Security Engine)
Verschlüsselter
Code
Verschlüsselte
Ressourcen
AxProtector .NET - Sicherheit
 AxProtector .NET ist ein automatischer IxProtector für alle Methoden in
einem .NET Assembly
 Fallen können auch erzeugt werden (-trap1)
 Höchster Schutz gegen dynamische und statische Codeanalyse
19.10.2016 © WIBU-SYSTEMS AG 2016 - Die hohe Kunst Tretminen in Ihrer Software zu verstecken 14
Integration in
.NET Anwendungen
19.10.2016 © WIBU-SYSTEMS AG 2016 - Die hohe Kunst Tretminen in Ihrer Software zu verstecken 15
 DEMO hier
 Verschlüsselung mit TRAP1
 Anschauen des Assemblies mit Just Decompile
 Erklärung überladene Methoden
 Manuelle Erzeugung einer trap Methode
 Verschlüsselung der Anwendung
 Anschauen mit Just Decompile
19.10.2016 © WIBU-SYSTEMS AG 2016 - Die hohe Kunst Tretminen in Ihrer Software zu verstecken 16
Integration in native
Windows-Anwendungen
19.10.2016 © WIBU-SYSTEMS AG 2016 - Die hohe Kunst Tretminen in Ihrer Software zu verstecken 17
 DEMO hier
 Manuelle Erzeugung einer trap Methode
 Verschlüsselung der Anwendung
 Simulation der Sperre durch Ausführen (Entschlüsseln) der Methode (erklären, dass
die Entschlüsselung und nicht die Ausführung das wesentliche Element ist)
19.10.2016 © WIBU-SYSTEMS AG 2016 - Die hohe Kunst Tretminen in Ihrer Software zu verstecken 18
Deutschland: +49-721-931720
USA: +1-425-7756900
China: +86-21-55661790
http://www.wibu.com
info@wibu.com
Deutschland: +49-721-931720
USA: +1-425-7756900
China: +86-21-55661790
http://www.wibu.com
info@wibu.com
Vielen Dank für Ihre Aufmerksamkeit!
19.10.2016 © WIBU-SYSTEMS AG 2016 - Die hohe Kunst Tretminen in Ihrer Software zu verstecken 19

Weitere ähnliche Inhalte

Ähnlich wie Die hohe Kunst Tretminen in Ihrer Software zu verstecken

Internet of (Every)Thing
Internet of (Every)ThingInternet of (Every)Thing
Internet of (Every)Thing
Fraunhofer AISEC
 
INSCAN - unkompliziert scannen, exportieren, berichten
INSCAN - unkompliziert scannen, exportieren, berichtenINSCAN - unkompliziert scannen, exportieren, berichten
INSCAN - unkompliziert scannen, exportieren, berichten
pmuebermittlung
 
CIO-Briefing 09-2017
CIO-Briefing 09-2017CIO-Briefing 09-2017
CIO-Briefing 09-2017
Vogel IT-Medien
 
Schutz von Java-Anwendungen
Schutz von Java-AnwendungenSchutz von Java-Anwendungen
Schutz von Java-Anwendungen
team-WIBU
 
AKCP sensorProbe8-X60 Alarm Server mit 60 potentialfreien Kontakten
AKCP sensorProbe8-X60 Alarm Server mit 60 potentialfreien KontaktenAKCP sensorProbe8-X60 Alarm Server mit 60 potentialfreien Kontakten
AKCP sensorProbe8-X60 Alarm Server mit 60 potentialfreien Kontakten
Didactum
 
Holistische Sicherheit für Microservice Architekturen
Holistische Sicherheit für Microservice ArchitekturenHolistische Sicherheit für Microservice Architekturen
Holistische Sicherheit für Microservice Architekturen
QAware GmbH
 
Die Top 5 Mythen der SAP Sicherheit
Die Top 5 Mythen der SAP SicherheitDie Top 5 Mythen der SAP Sicherheit
Die Top 5 Mythen der SAP Sicherheit
Virtual Forge
 
IT-Sicherheit und agile Entwicklung – geht das? Sicher!
IT-Sicherheit und agile Entwicklung – geht das? Sicher!IT-Sicherheit und agile Entwicklung – geht das? Sicher!
IT-Sicherheit und agile Entwicklung – geht das? Sicher!
Carsten Cordes
 
Zukunftsfähig durch Retrofitting mit Embedded Hard- und Software
Zukunftsfähig durch Retrofitting mit Embedded Hard- und SoftwareZukunftsfähig durch Retrofitting mit Embedded Hard- und Software
Zukunftsfähig durch Retrofitting mit Embedded Hard- und Software
iesy GmbH & Co. KG
 
Embedded Rust
Embedded RustEmbedded Rust
Embedded Rust
Jens Siebert
 
iDTRONICs RFID Desktop Reader EVO HF 2.0: HID oder VCP – Einstellbare Datenau...
iDTRONICs RFID Desktop Reader EVO HF 2.0: HID oder VCP – Einstellbare Datenau...iDTRONICs RFID Desktop Reader EVO HF 2.0: HID oder VCP – Einstellbare Datenau...
iDTRONICs RFID Desktop Reader EVO HF 2.0: HID oder VCP – Einstellbare Datenau...
iDTRONIC Marketing
 
SAP Infotag: Security / Erlebe-Software 07-2014
SAP Infotag: Security / Erlebe-Software 07-2014SAP Infotag: Security / Erlebe-Software 07-2014
SAP Infotag: Security / Erlebe-Software 07-2014
Erlebe Software
 
Integration von Schutz und Lizenzierung einfach gemacht
Integration von Schutz und Lizenzierung einfach gemachtIntegration von Schutz und Lizenzierung einfach gemacht
Integration von Schutz und Lizenzierung einfach gemacht
team-WIBU
 
Schutz und Lizenzierung für Embedded-Geräte
Schutz und Lizenzierung für Embedded-GeräteSchutz und Lizenzierung für Embedded-Geräte
Schutz und Lizenzierung für Embedded-Geräte
team-WIBU
 
Splunk und das Triage Tool THOR
Splunk und das Triage Tool THORSplunk und das Triage Tool THOR
Splunk und das Triage Tool THOR
Georg Knon
 
DACHNUG50 Volt MX & AppScan_20230615.pdf
DACHNUG50 Volt MX & AppScan_20230615.pdfDACHNUG50 Volt MX & AppScan_20230615.pdf
DACHNUG50 Volt MX & AppScan_20230615.pdf
DNUG e.V.
 
Einstieg in Xamarin und Xamarin.Forms, DDC 2018
Einstieg in Xamarin und Xamarin.Forms, DDC 2018Einstieg in Xamarin und Xamarin.Forms, DDC 2018
Einstieg in Xamarin und Xamarin.Forms, DDC 2018
André Krämer
 
German: Softwareprodukte aus einem Source Code mit Javascript
German: Softwareprodukte aus einem Source Code mit JavascriptGerman: Softwareprodukte aus einem Source Code mit Javascript
German: Softwareprodukte aus einem Source Code mit Javascript
Ralf Schwoebel
 
AKCP securityProbe 5ES-X20 / X60 Alarm Server - Überwachung wichtiger Räume u...
AKCP securityProbe 5ES-X20 / X60 Alarm Server - Überwachung wichtiger Räume u...AKCP securityProbe 5ES-X20 / X60 Alarm Server - Überwachung wichtiger Räume u...
AKCP securityProbe 5ES-X20 / X60 Alarm Server - Überwachung wichtiger Räume u...
Didactum
 
Sicherheitsbetrachtung der Cloudifizierung von Smart- Devices
Sicherheitsbetrachtung der Cloudifizierung von Smart- DevicesSicherheitsbetrachtung der Cloudifizierung von Smart- Devices
Sicherheitsbetrachtung der Cloudifizierung von Smart- Devices
Connected-Blog
 

Ähnlich wie Die hohe Kunst Tretminen in Ihrer Software zu verstecken (20)

Internet of (Every)Thing
Internet of (Every)ThingInternet of (Every)Thing
Internet of (Every)Thing
 
INSCAN - unkompliziert scannen, exportieren, berichten
INSCAN - unkompliziert scannen, exportieren, berichtenINSCAN - unkompliziert scannen, exportieren, berichten
INSCAN - unkompliziert scannen, exportieren, berichten
 
CIO-Briefing 09-2017
CIO-Briefing 09-2017CIO-Briefing 09-2017
CIO-Briefing 09-2017
 
Schutz von Java-Anwendungen
Schutz von Java-AnwendungenSchutz von Java-Anwendungen
Schutz von Java-Anwendungen
 
AKCP sensorProbe8-X60 Alarm Server mit 60 potentialfreien Kontakten
AKCP sensorProbe8-X60 Alarm Server mit 60 potentialfreien KontaktenAKCP sensorProbe8-X60 Alarm Server mit 60 potentialfreien Kontakten
AKCP sensorProbe8-X60 Alarm Server mit 60 potentialfreien Kontakten
 
Holistische Sicherheit für Microservice Architekturen
Holistische Sicherheit für Microservice ArchitekturenHolistische Sicherheit für Microservice Architekturen
Holistische Sicherheit für Microservice Architekturen
 
Die Top 5 Mythen der SAP Sicherheit
Die Top 5 Mythen der SAP SicherheitDie Top 5 Mythen der SAP Sicherheit
Die Top 5 Mythen der SAP Sicherheit
 
IT-Sicherheit und agile Entwicklung – geht das? Sicher!
IT-Sicherheit und agile Entwicklung – geht das? Sicher!IT-Sicherheit und agile Entwicklung – geht das? Sicher!
IT-Sicherheit und agile Entwicklung – geht das? Sicher!
 
Zukunftsfähig durch Retrofitting mit Embedded Hard- und Software
Zukunftsfähig durch Retrofitting mit Embedded Hard- und SoftwareZukunftsfähig durch Retrofitting mit Embedded Hard- und Software
Zukunftsfähig durch Retrofitting mit Embedded Hard- und Software
 
Embedded Rust
Embedded RustEmbedded Rust
Embedded Rust
 
iDTRONICs RFID Desktop Reader EVO HF 2.0: HID oder VCP – Einstellbare Datenau...
iDTRONICs RFID Desktop Reader EVO HF 2.0: HID oder VCP – Einstellbare Datenau...iDTRONICs RFID Desktop Reader EVO HF 2.0: HID oder VCP – Einstellbare Datenau...
iDTRONICs RFID Desktop Reader EVO HF 2.0: HID oder VCP – Einstellbare Datenau...
 
SAP Infotag: Security / Erlebe-Software 07-2014
SAP Infotag: Security / Erlebe-Software 07-2014SAP Infotag: Security / Erlebe-Software 07-2014
SAP Infotag: Security / Erlebe-Software 07-2014
 
Integration von Schutz und Lizenzierung einfach gemacht
Integration von Schutz und Lizenzierung einfach gemachtIntegration von Schutz und Lizenzierung einfach gemacht
Integration von Schutz und Lizenzierung einfach gemacht
 
Schutz und Lizenzierung für Embedded-Geräte
Schutz und Lizenzierung für Embedded-GeräteSchutz und Lizenzierung für Embedded-Geräte
Schutz und Lizenzierung für Embedded-Geräte
 
Splunk und das Triage Tool THOR
Splunk und das Triage Tool THORSplunk und das Triage Tool THOR
Splunk und das Triage Tool THOR
 
DACHNUG50 Volt MX & AppScan_20230615.pdf
DACHNUG50 Volt MX & AppScan_20230615.pdfDACHNUG50 Volt MX & AppScan_20230615.pdf
DACHNUG50 Volt MX & AppScan_20230615.pdf
 
Einstieg in Xamarin und Xamarin.Forms, DDC 2018
Einstieg in Xamarin und Xamarin.Forms, DDC 2018Einstieg in Xamarin und Xamarin.Forms, DDC 2018
Einstieg in Xamarin und Xamarin.Forms, DDC 2018
 
German: Softwareprodukte aus einem Source Code mit Javascript
German: Softwareprodukte aus einem Source Code mit JavascriptGerman: Softwareprodukte aus einem Source Code mit Javascript
German: Softwareprodukte aus einem Source Code mit Javascript
 
AKCP securityProbe 5ES-X20 / X60 Alarm Server - Überwachung wichtiger Räume u...
AKCP securityProbe 5ES-X20 / X60 Alarm Server - Überwachung wichtiger Räume u...AKCP securityProbe 5ES-X20 / X60 Alarm Server - Überwachung wichtiger Räume u...
AKCP securityProbe 5ES-X20 / X60 Alarm Server - Überwachung wichtiger Räume u...
 
Sicherheitsbetrachtung der Cloudifizierung von Smart- Devices
Sicherheitsbetrachtung der Cloudifizierung von Smart- DevicesSicherheitsbetrachtung der Cloudifizierung von Smart- Devices
Sicherheitsbetrachtung der Cloudifizierung von Smart- Devices
 

Mehr von team-WIBU

Post Quantum Cryptography – The Impact on Identity
Post Quantum Cryptography – The Impact on IdentityPost Quantum Cryptography – The Impact on Identity
Post Quantum Cryptography – The Impact on Identity
team-WIBU
 
Unlocking the Future: Empowering Industrial Security
Unlocking the Future: Empowering Industrial SecurityUnlocking the Future: Empowering Industrial Security
Unlocking the Future: Empowering Industrial Security
team-WIBU
 
The Power of Partnership: Enabling Success Together
The Power of Partnership: Enabling Success TogetherThe Power of Partnership: Enabling Success Together
The Power of Partnership: Enabling Success Together
team-WIBU
 
Unleash the Power of CodeMeter - CodeMeter Basics
Unleash the Power of CodeMeter - CodeMeter BasicsUnleash the Power of CodeMeter - CodeMeter Basics
Unleash the Power of CodeMeter - CodeMeter Basics
team-WIBU
 
Keine Zeit für Leerlauf – Lizenzverfügbarkeit für Geschäftskontinuität
Keine Zeit für Leerlauf – Lizenzverfügbarkeit für GeschäftskontinuitätKeine Zeit für Leerlauf – Lizenzverfügbarkeit für Geschäftskontinuität
Keine Zeit für Leerlauf – Lizenzverfügbarkeit für Geschäftskontinuität
team-WIBU
 
No Time to Idle – License availability for business continuity
No Time to Idle – License availability for business continuityNo Time to Idle – License availability for business continuity
No Time to Idle – License availability for business continuity
team-WIBU
 
Cloud-Based Licensing in Offline Scenarios
Cloud-Based Licensing in Offline ScenariosCloud-Based Licensing in Offline Scenarios
Cloud-Based Licensing in Offline Scenarios
team-WIBU
 
Optimizing Cloud Licensing: Strategies and Best Practices
Optimizing Cloud Licensing: Strategies and Best PracticesOptimizing Cloud Licensing: Strategies and Best Practices
Optimizing Cloud Licensing: Strategies and Best Practices
team-WIBU
 
For a Few Licenses More
For a Few Licenses MoreFor a Few Licenses More
For a Few Licenses More
team-WIBU
 
App Management on the Edge
App Management on the EdgeApp Management on the Edge
App Management on the Edge
team-WIBU
 
Protecting and Licensing .NET Applications
Protecting and Licensing .NET ApplicationsProtecting and Licensing .NET Applications
Protecting and Licensing .NET Applications
team-WIBU
 
A Bit of License Management Magic
A Bit of License Management MagicA Bit of License Management Magic
A Bit of License Management Magic
team-WIBU
 
The first step is always the most decisive
The first step is always the most decisiveThe first step is always the most decisive
The first step is always the most decisive
team-WIBU
 
Protection and monetization of 3D printed objects in the spare parts business...
Protection and monetization of 3D printed objects in the spare parts business...Protection and monetization of 3D printed objects in the spare parts business...
Protection and monetization of 3D printed objects in the spare parts business...
team-WIBU
 
Authenticate and authorize your IIoTdevices
Authenticate and authorize your IIoTdevicesAuthenticate and authorize your IIoTdevices
Authenticate and authorize your IIoTdevices
team-WIBU
 
How and Why to Create and Sell Consumption-Based Licenses
How and Why to Create and Sell Consumption-Based LicensesHow and Why to Create and Sell Consumption-Based Licenses
How and Why to Create and Sell Consumption-Based Licenses
team-WIBU
 
Serving Up Features-on-Demand for Every Appetite
Serving Up Features-on-Demand for Every AppetiteServing Up Features-on-Demand for Every Appetite
Serving Up Features-on-Demand for Every Appetite
team-WIBU
 
Security and Protection for Machine Learning.pptx
Security and Protection for Machine Learning.pptxSecurity and Protection for Machine Learning.pptx
Security and Protection for Machine Learning.pptx
team-WIBU
 
License Portal - The DIY Solution
License Portal - The DIY SolutionLicense Portal - The DIY Solution
License Portal - The DIY Solution
team-WIBU
 
Running code in secure hardware or cloud environments
Running code in secure hardware or cloud environmentsRunning code in secure hardware or cloud environments
Running code in secure hardware or cloud environments
team-WIBU
 

Mehr von team-WIBU (20)

Post Quantum Cryptography – The Impact on Identity
Post Quantum Cryptography – The Impact on IdentityPost Quantum Cryptography – The Impact on Identity
Post Quantum Cryptography – The Impact on Identity
 
Unlocking the Future: Empowering Industrial Security
Unlocking the Future: Empowering Industrial SecurityUnlocking the Future: Empowering Industrial Security
Unlocking the Future: Empowering Industrial Security
 
The Power of Partnership: Enabling Success Together
The Power of Partnership: Enabling Success TogetherThe Power of Partnership: Enabling Success Together
The Power of Partnership: Enabling Success Together
 
Unleash the Power of CodeMeter - CodeMeter Basics
Unleash the Power of CodeMeter - CodeMeter BasicsUnleash the Power of CodeMeter - CodeMeter Basics
Unleash the Power of CodeMeter - CodeMeter Basics
 
Keine Zeit für Leerlauf – Lizenzverfügbarkeit für Geschäftskontinuität
Keine Zeit für Leerlauf – Lizenzverfügbarkeit für GeschäftskontinuitätKeine Zeit für Leerlauf – Lizenzverfügbarkeit für Geschäftskontinuität
Keine Zeit für Leerlauf – Lizenzverfügbarkeit für Geschäftskontinuität
 
No Time to Idle – License availability for business continuity
No Time to Idle – License availability for business continuityNo Time to Idle – License availability for business continuity
No Time to Idle – License availability for business continuity
 
Cloud-Based Licensing in Offline Scenarios
Cloud-Based Licensing in Offline ScenariosCloud-Based Licensing in Offline Scenarios
Cloud-Based Licensing in Offline Scenarios
 
Optimizing Cloud Licensing: Strategies and Best Practices
Optimizing Cloud Licensing: Strategies and Best PracticesOptimizing Cloud Licensing: Strategies and Best Practices
Optimizing Cloud Licensing: Strategies and Best Practices
 
For a Few Licenses More
For a Few Licenses MoreFor a Few Licenses More
For a Few Licenses More
 
App Management on the Edge
App Management on the EdgeApp Management on the Edge
App Management on the Edge
 
Protecting and Licensing .NET Applications
Protecting and Licensing .NET ApplicationsProtecting and Licensing .NET Applications
Protecting and Licensing .NET Applications
 
A Bit of License Management Magic
A Bit of License Management MagicA Bit of License Management Magic
A Bit of License Management Magic
 
The first step is always the most decisive
The first step is always the most decisiveThe first step is always the most decisive
The first step is always the most decisive
 
Protection and monetization of 3D printed objects in the spare parts business...
Protection and monetization of 3D printed objects in the spare parts business...Protection and monetization of 3D printed objects in the spare parts business...
Protection and monetization of 3D printed objects in the spare parts business...
 
Authenticate and authorize your IIoTdevices
Authenticate and authorize your IIoTdevicesAuthenticate and authorize your IIoTdevices
Authenticate and authorize your IIoTdevices
 
How and Why to Create and Sell Consumption-Based Licenses
How and Why to Create and Sell Consumption-Based LicensesHow and Why to Create and Sell Consumption-Based Licenses
How and Why to Create and Sell Consumption-Based Licenses
 
Serving Up Features-on-Demand for Every Appetite
Serving Up Features-on-Demand for Every AppetiteServing Up Features-on-Demand for Every Appetite
Serving Up Features-on-Demand for Every Appetite
 
Security and Protection for Machine Learning.pptx
Security and Protection for Machine Learning.pptxSecurity and Protection for Machine Learning.pptx
Security and Protection for Machine Learning.pptx
 
License Portal - The DIY Solution
License Portal - The DIY SolutionLicense Portal - The DIY Solution
License Portal - The DIY Solution
 
Running code in secure hardware or cloud environments
Running code in secure hardware or cloud environmentsRunning code in secure hardware or cloud environments
Running code in secure hardware or cloud environments
 

Die hohe Kunst Tretminen in Ihrer Software zu verstecken

  • 1. Die hohe Kunst Tretminen in Ihrer Software zu verstecken Rüdiger Kügler | VP Sales ruediger.kuegler@wibu.com Wolfgang Völker | Leiter Support & Produktmanagement wolfgang.voelker@wibu.com Sicherer Software Schutz 19.10.2016 © WIBU-SYSTEMS AG 2016 - Die hohe Kunst Tretminen in Ihrer Software zu verstecken 1
  • 2. Agenda 19.10.2016 © WIBU-SYSTEMS AG 2016 - Die hohe Kunst Tretminen in Ihrer Software zu verstecken 2  Angriffsmethoden der Hacker  Dynamische Codeanalyse  Statische Codeanalyse  Integration in .NET-Anwendungen  Komplett automatisch mit AxProtector .NET  Manuell im eigenen Sourcecode  Das Konzept von Fallen  Was sind Fallen  Geheime Botschaften an den Dongle  Wie werden Fallen ausgelöst  Integration in native Windows-Anwendungen  Manuell im eigenen Sourcecode  Simuliertes Auslösen einer Sperre
  • 3. Angriffsmethoden der Hacker 19.10.2016 © WIBU-SYSTEMS AG 2016 - Die hohe Kunst Tretminen in Ihrer Software zu verstecken 3
  • 4. Methoden und Tools der Hacker  Dynamische Codeanalyse  Debuggen der Anwendung während der Ausführung  Olly-Debug, MGD, ImpRec, …  Breakpoints, Patchen von Code, Memory Dumps, …  Statische Codeanalyse  Disassemblieren einer Anwendung ohne sie auszuführen  IDA Pro, Reflector, Just Decompile, …  Patchen von Code, Analyse des Programmablaufs, Manuelle Entschlüsselung und Rekonstruktion … 19.10.2016 © WIBU-SYSTEMS AG 2016 - Die hohe Kunst Tretminen in Ihrer Software zu verstecken 4
  • 5.  DEMO hier  Just Decompile + Reflexil für Patchen einer Abfrage  MSG für Memory Dump + ImpRec zum Fixen der IAT  Zeigen: Verschlüsselt unverschlüsselt  Message: Verschlüsseln alleine reicht nicht 19.10.2016 © WIBU-SYSTEMS AG 2016 - Die hohe Kunst Tretminen in Ihrer Software zu verstecken 5
  • 6. Das Konzept von Fallen 19.10.2016 © WIBU-SYSTEMS AG 2016 - Die hohe Kunst Tretminen in Ihrer Software zu verstecken 6
  • 7. AxProtector 19.10.2016 © WIBU-SYSTEMS AG 2016 - Die hohe Kunst Tretminen in Ihrer Software zu verstecken 7 Geschützte AnwendungKompilierte Anwendung Header AxEngine (Security Engine) AxProtector Verschlüsselte Code Section Verschlüsselte Data Section Verschlüsselte Resource Section Header Data Section Resource Section Code Section
  • 8. AxProtector - Sicherheit  Die Anwendung wird komplett beim Start entschlüsselt  Verhinderung von Memory Dumps durch  Erkennung von Tools für Memory Dumps  Modifikation der IAT (Import Address Table)  Modifikation des Codes der Anwendung  AxProtector bietet hohe Sicherheit mit wenig Aufwand  IxProtector bietet die Möglichkeit die Sicherheit noch weiter zu erhöhen 19.10.2016 © WIBU-SYSTEMS AG 2016 - Die hohe Kunst Tretminen in Ihrer Software zu verstecken 8
  • 9. AxProtector und IxProtector 19.10.2016 © WIBU-SYSTEMS AG 2016 - Die hohe Kunst Tretminen in Ihrer Software zu verstecken 9 Geschützte AnwendungKompilierte Anwendung Header Data Section Resource Section AxProtector IxProtector Header Verschlüsselte Funktion Verschlüsselte Funktion Verschlüsselte Data Section Verschlüsselte Resource Section AxEngine (Security Engine) Verschlüsselte Code Section Funktion Funktion Code Section
  • 10. AxProtector und IxProtector - Sicherheit  IxProtector geschützte Stellen nach dem Start noch verschlüsselt  Entschlüsselung erfolgt per API-Call zur Laufzeit  Schutz gegen Memory Dumps  Code ist nie komplett entschlüsselt im Speicher  Entschlüsselter Code wird per Code Moving an einer anderen Stelle im Speicher ausgeführt  IxProtector bietet höchste Sicherheit gegen dynamische Codeanalyse  Fallen bieten die Möglichkeit die Sicherheit speziell gegen statische Codeanalyse noch weiter zu erhöhen 19.10.2016 © WIBU-SYSTEMS AG 2016 - Die hohe Kunst Tretminen in Ihrer Software zu verstecken 10
  • 11. Geschützte Anwendung AxProtector und IxProtector und Fallen 19.10.2016 © WIBU-SYSTEMS AG 2016 - Die hohe Kunst Tretminen in Ihrer Software zu verstecken 11 Header Verschlüsselte Funktion Verschlüsselte Data Section Verschlüsselte Resource Section AxEngine (Security Engine) Verschlüsselte Funktion Verschlüsselte Funktion Verschlüsselte Falle Verschlüsselte Funktion Verschlüsselte Falle Verschlüsselte Code Section
  • 12. AxProtector und IxProtector und Fallen - Sicherheit  Fallen sind verschlüsselte Funktionen die einen Sperr-Code enthalten  Fallen sind von verschlüsselten Funktionen nicht zu unterscheiden  Fallen werden im normalen Betrieb der Software nie aufgerufen  Nicht referenziert, aber z.B. als public deklariert  if (false) {call trap(x);}  if (Lohnsteuer > 100%) {call trap(x);}  Höchster Schutz gegen statische Codeanalyse  Auslösen einer Falle sperrt den Schlüssel im CmDongle  Hacker benötigt Fachwissen über die Anwendung und die Thematik 19.10.2016 © WIBU-SYSTEMS AG 2016 - Die hohe Kunst Tretminen in Ihrer Software zu verstecken 12
  • 13. AxProtector .NET 19.10.2016 © WIBU-SYSTEMS AG 2016 - Die hohe Kunst Tretminen in Ihrer Software zu verstecken 13 Geschützte AnwendungKompilierte Anwendung Header Code Header Ressourcen AxProtector .NET Stub Code (ohne geistiges Eigentum) AxEngine (Security Engine) Verschlüsselter Code Verschlüsselte Ressourcen
  • 14. AxProtector .NET - Sicherheit  AxProtector .NET ist ein automatischer IxProtector für alle Methoden in einem .NET Assembly  Fallen können auch erzeugt werden (-trap1)  Höchster Schutz gegen dynamische und statische Codeanalyse 19.10.2016 © WIBU-SYSTEMS AG 2016 - Die hohe Kunst Tretminen in Ihrer Software zu verstecken 14
  • 15. Integration in .NET Anwendungen 19.10.2016 © WIBU-SYSTEMS AG 2016 - Die hohe Kunst Tretminen in Ihrer Software zu verstecken 15
  • 16.  DEMO hier  Verschlüsselung mit TRAP1  Anschauen des Assemblies mit Just Decompile  Erklärung überladene Methoden  Manuelle Erzeugung einer trap Methode  Verschlüsselung der Anwendung  Anschauen mit Just Decompile 19.10.2016 © WIBU-SYSTEMS AG 2016 - Die hohe Kunst Tretminen in Ihrer Software zu verstecken 16
  • 17. Integration in native Windows-Anwendungen 19.10.2016 © WIBU-SYSTEMS AG 2016 - Die hohe Kunst Tretminen in Ihrer Software zu verstecken 17
  • 18.  DEMO hier  Manuelle Erzeugung einer trap Methode  Verschlüsselung der Anwendung  Simulation der Sperre durch Ausführen (Entschlüsseln) der Methode (erklären, dass die Entschlüsselung und nicht die Ausführung das wesentliche Element ist) 19.10.2016 © WIBU-SYSTEMS AG 2016 - Die hohe Kunst Tretminen in Ihrer Software zu verstecken 18
  • 19. Deutschland: +49-721-931720 USA: +1-425-7756900 China: +86-21-55661790 http://www.wibu.com info@wibu.com Deutschland: +49-721-931720 USA: +1-425-7756900 China: +86-21-55661790 http://www.wibu.com info@wibu.com Vielen Dank für Ihre Aufmerksamkeit! 19.10.2016 © WIBU-SYSTEMS AG 2016 - Die hohe Kunst Tretminen in Ihrer Software zu verstecken 19