Sicheres Programmieren und Codeschutz

 
Tutorial Day - 23. Mai
 
9:00
 
Raum Kraichgau
Tutorial
 
Basic

Der wichtigste Faktor bei der sicheren Softwareentwicklung ist die Erweiterung des eigenen Softwareentwicklungs¬prozesses um zusätzliche sicherheitsspezifische Aktivitäten. Solche zusätzlichen Aktivitäten gibt es in allen Phasen des Softwareentwicklungsprozesses. Sie sind unabhängig vom eingesetzten Entwicklungsmodell. So gibt es auch in der Coding- Phase einige Aktivitäten, die dazu beitragen, dass Softwareprodukte mit möglichst keinen Schwachstellen entwickelt werden, so dass das Produkt im Betrieb nicht angreifbar ist. Die Teilnehmer des Tutorials lernen typische Schwachstellen wie Cross-Site Scripting oder Injections bzw. Ursachen für diese Schwachstellen kennen und natürlich auch wie sie zu vermeiden sind. Es werden einige Best Practice Empfehlungen gegeben, was bei der sicheren Programmierung beachtet werden muss. Außerdem werden die Risiken erläutert, die durch Code-Manipulationen entstehen. Die Teilnehmer lernen grundlegende Code-Schutzmaßnahmen kennen, u.a. Code-Signaturen, die für Sicherheit in der Deployment-Phase sorgen.

In praktischen Übungen lernen die Teilnehmer die „Design by Contract“-Technik für Software¬engineering kennen. „Design by Contract“ geht auf Konzepte von Bertrand Meyer zurück, die schließlich auch in die von ihm entwickelte Programmiersprache Eiffel eingingen. Hierbei werden die Datentypen um Vor- und Nachbedingungen sowie Invarianten erweitert. Anhand eines vorgegeben Szenarios sollen die Teilnehmer selber Vor- und Nach¬bedingun¬gen sowie Invarianten formulieren, die bei allen Methodenaufrufen gelten müssen. Außerdem experimentieren die Teilnehmer mit Code-Signaturen und erstellen dabei auch eigene Code-Signaturen.

Das halbtägige Tutorial setzt sich zur Hälfte aus Vorträgen und zu anderen Hälfte aus Hands-on Workshops zusammen.

Die Hardware für die Übung ist von den Teilnehmern zu stellen. Die virtuelle Maschine wird als Image für VirtualBox oder VMware von Secorvo gestellt. Die Teilnehmerzahl ist auf 16 begrenzt.

Für das Tutorial sind grundlegende Kenntnisse zur Sicherheit bei den Teilnehmern ausreichend („basic“).

Dr. Safuat Hamdy

Secorvo Security Consulting GmbH
Dr. Safuat Hamdy erwarb seinen Abschluss als Diplom-Informatiker im Dezember 1998 an der Universität Hamburg. Im März 2002 promovierte er am Fachbereich Informatik der Technischen Universität Darmstadt (Sicherheit von kryptografischen Verfahren auf der Grundlage von Zahlkörpern). Von 2002 bis 2009 war er in Lehre und Forschung im Bereich Informationssicherheit im Ausland tätig (University of Calgary, Kanada und United Arab Emirates University) u. a mit den Schwerpunkten Kryptografie, Sicherer E-Commerce, Common Criteria, Sicherer Systementwurf und Netzwerkprotokolle. Seit August 2009 ist Safuat Hamdy Security Consultant bei der Secorvo Security Consulting GmbH. Seit 2012 ist er zertifizierter ISO 27001-Auditor. Seine Beratungsschwerpunkte liegen in den Bereichen Kryptografie, IT-Sicherheitsuntersuchungen und -Audits, ISO 27001-Audits, Sicherheit von Webanwendungen, Erstellung von Sicherheitskonzepten, IPv6-Sicherheit sowie VoIP- und Smartphone-Sicherheit.

Hans-Joachim Knobloch

Secorvo Security Consulting GmbH
Hans-Joachim Knobloch erwarb Ende 1989 sein Diplom in Informatik an der Universität Karlsruhe. Er arbeitete seit 1988 am Europäischen Institut für Systemsicherheit. Zu Beginn des Jahres 1996 wechselte er zur NTG Netzwerk und Telematik GmbH, nachmals Xlink und KPNQwest Germany. Dort war er am Aufbau des Bereichs Security-Services beteiligt. Seit Oktober 2000 ist er als Security Consultant bei der Secorvo Security Consulting GmbH tätig. Hans-Joachim Knobloch verfügt über langjährige Erfahrung in den Bereichen Kryptologie, Smartcard-Software, Netzwerk- und E-Mail-Sicherheit.und besitzt intensive Erfahrungen in allen Aspekten der Internet-Security. Er ist Autor/ Koautor zahlreicher Veröffentlichungen auf diesen Gebieten. Bei Secorvo waren Themenschwerpunkte u. a. Entwurf und Analyse von Sicherheitskonzepten für PKI, E-Mail-Sicherheit, Zwei-Faktor-Authentisierung sowie sichere Digital Rights Management Systems. Er ist Mitglied des Common PKI Beirats der Arbeitsgemeinschaft deutscher Trustcenterbetreiber (T7 e. V.) und war als Projektleiter für die Realisierung des Testbeds zum Common PKI Standard (vormals ISIS-MTT) verantwortlich.