W2015-ITS
Themenvorschläge für IT-Security Workshop 28. September bis 9. Oktober 2015
BSI TR-03108 Sicherer E-Mail-Transport
Die Technische Richtlinie "Sicherer E-Mail-Transport" (BSI TR-03108) definiert konkrete Anforderungen an einen E-Mail-Diensteanbieter (EMDA). Ziel der Technischen Richtlinie ist die Erhöhung der Vergleichbarkeit und Verbreitung sicherer E-Mail-Kommunikation. Ziel bei diesem Thema ist es zu schauen, welche Schutzmaßnahmen für unseren Informatik-Mail-Server umgesetzt werden können. Hierbei geht es vor allem um technische Maßnahmen zur Absicherung eines authentischen und vertraulichen E-Mail-Transports.
Die im RFC 6698 beschriebene "DNS-Based Authentication of Named Entities (DANE)" scheint ein gutes Mittel zu sein, um jenseits von bestehenden PKI-Mechanismen eine starke Authentisierung eines Servers und spätere Absicherung der Verbindung über SSL/TLS ausgehend von dessen DNS-Namen zu erreichen. Versuchen Sie dieses Konzept für unseren Institutsmailserver umzusetzen. Bezüglich DANE gibt es bereits Vorarbeiten aus dem letzten Jahr DANE für unseren Mail-Server.
Hinsichtlich der umsetzbaren organisatorischen und physischen Sicherheitsmaßnahmen wird es sicherlich Unterschiede zu gewerblichen E-Mail-Dienste-Anbietern geben, jedoch ist es sicherlich interessant, was sich an technischen Schutzmechanismen am Institut umsetzen lässt oder schon so in Betrieb ist.
Links:
- TR-03108
- C't 11/14 Geleitschutz: DANE verbessert sicheren Transport zwischen Mailservern
- RFC 6698 DANE
- RFC 4033 DNSsec
Mentor: Jan-Peter Bell, Wolf Müller
Email-Push-Notifikation
Zunehmend wird Email auch von unterwegs auf mobilen Geräten gelesen. Dabei ist es sicherlich interessant, wie ein Smartphone mitbekommt, dass es für seinen Besitzer eine oder mehrere neue Emails gibt. Die naive Lösung ist das über einen "pull"-Zugriff zu lösen. Das Smartphone würde also in regelmäßigen Abständen sich über SSL/TLS bei unserem Institutsserver mit dem Nutzeraccount einloggen und schauen, ob es für den Nutzer neue Email gibt. Möchte ein Nutzer schnell erfahren, dass neue Email da sind, wir das Verfahren recht schnell aufwendig und nimmt die Batterie recht in Anspruch. Etwas moderner ist sicherlich die Verwendung von imap-idle. Jedoch muss auch hier die Mail-App auf dem Telefon laufen und die TCP-Verbindung offen halten. Allerdings können mehrfache SSL/TLS-Handshakes vermieden werden. Schöner wäre es, wenn der Mailserver die Benachrichtigung via push-Nachricht über ein Gateway (Apple|Google) dem Betriebssystem des Smartphones mitteilt, dass neue Email da ist, also den für das jeweilige Mobile-OS gedachten Standardweg nutzt.
Untersuchen sie die Möglichkeiten für die Umsetzung mit IMAP (dovecot) für iOS oder ggf. auch Android.
Links:
Mentor: Jan-Peter Bell, Wolf Müller
Mirage OS
MirageOS ist eine Bibliothek, mit welcher Unikernels für sichere, hochleistungsfähige Anwendungen für viele von Cloud-Computing und mobile Plattformen gebaut werden können. Code kann auf einem normalen Betriebssystem wie Linux oder MacOS X entwickelt werden, und dann in einen komplett eigenständigen, speziellen Unikernel, der unter dem Xen-Hypervisor läuft, kompiliert werden. Die zur Erstellung von monolithischen Anwendungen verwendete Spache ist OCaml. Die reduzierung der Funktionalität durch die Verwendung eines speziellen Unikernels sollte zumindest eine reduzierte Angriffsfläche bieten
Versuchen sie als Beispiel für eine monolithische Applikation einen Webserver auf Xen-Laufzeitumgebung laufen zu lassen und untersuchen sie, welchen Funktionalität (insbesondere Chipersuites und SSL/TLS-Versionen) er bietet.
Mentor: Frank Morgner, Bundesdruckerei, Wolf Müller
Smart Home
(Son, Leo, Lijuan, Arthur) Immer mehr Geräte in unserem Zuhause oder in der Umgebung sind vernetzt und interagieren miteinander. Das bietet erhöhten Komfort, aber öffnet auch neue Angriffsvektoren. Wer ist berechtigt, auf ein Geräte im Heimnetzwerk zuzugreifen, sind Meldungen oder Befehle authentisch, wo endet das Netzwerk, was ist bei der Verwendung von externen Komponenten zu beachten. Exemplarisch wollen wir hier EIB oder KNX-Haustechnik betrachten, die wir in unserem Labor zur Verfügung haben.
Web-Interface
Das Projekt OpenHAB stellt ein Webinterface und auch eine App für die Hausautomatisierung bereit. Versuchen Sie die Software auf einem energiesparenden System (Raspberry Pi 2 Model B ist bestellt) zum laufen zu bringen und untersuchen Sie die Sicherheitseigenschaften dieses Webservices. Was kann noch zur Absicherung getan werden?
KNX-IDS
Aus IP-Netzwerken sind Intrusion-Detection-Systeme bekannt. Versuchen Sie dieses Konzept auf KNX zu übertragen. In einer ersten Zeitphase könnte so "normales" Verhalten gelernt werden. (Welche KNX-Adressen sind vorgekommen, welche Art von Telegrammen sendet wer an wen, wieviele Telegramme werden typischerweise pro Zeitintervall geschickt). Nach der Lernphase schließt sich eine operative Phase an, in welcher das IDS Alarm schlagen sollte, wenn es ungewöhnliches Verhalten detektiert.
KNX-Firewall
Das IDS hat ja vorwiegend eine erkennende Funktionalität, gestattet aber nicht unmittelbar das Senden von Angriffstelegrammen. Denkbar wäre auch eine KNX-Firewall zu entwerfen. Diese könnte dann verschiedene Sicherheitsdomänen voneinander trennen. So könnte ein Angreifer an der externen Klingel nicht die Heizung steuern. Kann man Konzepte die von IP-Netzen bekannt sind auf KNX übertragen?
Links:
Mentor: Wolf Müller
U2F (reloaded)
Im letzen Jahr haben wir uns bereits mit der 2-Faktorauthentisierung gemäß U2F FIDO beschäftigt. Diese ist aus unserer Sicht eine sehr interessante Authentisierungstechnik, die ein hohes Maß an Anonymität, Sicherheit und Komfort miteinander verbinden kann. Der ursprüngliche Fokus von U2F lag in der Authentisierung gegenüber Webdiensten. Aber natürlich ist es auch denkbar U2F-Token zur Authentisierung in anderen Kontexten (PAM, SSH, ...) zu nutzen. Versuchen Sie einen Überblick zu gewinnen, für welche Protokolle oder Szenarien U2F genutzt werden können sollte und versuchen sie dies auch als "proof of concept" auch auszuprobieren.
Links:
Mentor: Wolf Müller
Sicherheit von Elliptischen Kurven
RSA-Schlüssel werden immer länger, elliptische Kurven könnten eine effektive Alternative für die am häufigsten verwendete asymmetrische Kryptografie werden. Aber gibt es da Probleme?
Links:
Mentor: Wolf Müller
Absicherung NFS
Bei NFS-Freigaben sind hohe Anforderungen an die Integrität des NFS-Clienten gestellt, da allein dieser über die Einhaltung der im exportierten Dateisystem gesetzten Rechte entscheidet. Daher ist es es essenziell, dass sich bei dem mountenden Clienten wirklich um den beabsichtigten legitimen Rechner handelt. Der Normalfall ist eine simple Überprüfung der IP-Addresse, die in der /etc/exports angegeben ist.
Untersuchen Sie, welche Verbesserungen hier möglich sind und welchen Aufwand, welche Komplexität die von Ihnen erarbeitenden Lösungen haben. Die verlässlichere Prüfung könnte auf verschiedenen Schichten angesetzt werden.
Links:
Mentor: Jan-Peter Bell
Smartcards@SUNray
Wie Sie ja vielleicht schon bemerkt haben, kann man gewisse Smartcards zur Identifizierung einer bestehenden Session auf einem SUNray nutzen und diese dann später wieder an einem anderen Terminal (oder auch dem gleichen) auf den Schirm holen (keine Sorge, Nutzername/Passwort werden noch zum Login benötigt). Dies funktioniert mit gewissen Kartentypen (Siehe condor:/etc/opt/SUNWut/smartcard). Versuchen Sie zusätzliche Konfigurationsfiles zu schreiben, die in Deutschland verbreitete kontaktbehaftete Smartcards (eGK, EC-Card) zu diesem Zweck nutzen.
Mentor: Jan-Peter Bell, Wolf Müller
Selbstauskunft "in-the-middle"
Nach der reinen Lehre über die Nutzung des neuen Personalausweises muss jeder (Dienstanbieter) der Datengruppen bzw. Funktionen aus dem nPA mit Hilfe der eID-Funktion nutzen will, ein gültiges Berechtigungszertifikat von der Vergabestelle vorweisen und einen eID-Server betreiben (oder den entsprechenden eID-Service anmieten). Das ist sicher etwas aufwendig. Geht es nicht etwas einfacher? Wenn man sich an der Lösung Sofortüberweisung orientiert, so könnte man auf die Idee kommen, einem Nutzer mittels "man-in-the-middle" quasi dabei über die Schulter zu schauen, wie er eine Onlineauthentisierung gegenüber einem Dienstanbieter mit Berechtigungszertifikat durchführt. Schreiben Sie eine App, die eine Piggyback-Authentisierung via den vom Bürgerportal der Stadt Würzburg angebotenen Dienst zur Selbstauskunft nutzt. Das Lesegerät für den nPA soll über Bluetooth mit dem nPA verbunden werden und der Leser soll eine eigenen PIN-Eingabe und Anzeige der Transaktion ermöglichen.
Links:
RSA-PSK Unterstützung für mod_ssl
Das Verschränken von kryptografisch mit SSL/TLS gesicherten Kanälen ist in vielen Webanwendungen wünschenswert. Bislang ist ein Handshake der einen "pre shared key" in Kombination mit RSA gemäß RFC 4279 bereitstellt, für openSSL nur als Patch (http://www.internet-sicherheit.de/service/tools/patches/) (auch für eine nicht ganz aktuelle Version) verfügbar. In dem Apachemodul mod_ssl ist diese Methode jedoch noch gar nicht vorgesehen. Hier wäre es sinnvoll, Ideen zu entwickeln, wie RSA-PSK hier Unterstützung finden kann.
Mentor:
Fuzzer
Mit Fuzzing wurden in letzter Zeit viele Schwachstellen entdeckt und dienten als Startpunkt zum entwickeln von Exploits. Doch wie funktioniert dies Technik genau und was in der Praxis zum Einsatz nötig?
Links:
Mentor:
Sichere Wiki-Konfiguration / Migration
Ein Wiki ist seiner Natur nach ein offenes System, in welchem der "Mitmachgedanke" weit vorne steht. Leider gibt es dann doch häufig automatisierte Angriffe, die diese Eigenschaft ausnutzen. So fand sich auch in unserm Wiki viel SPAM.
Versuchen Sie eine Kopie unseres Wikis auf eine aktuelle Codebasis zu heben. Dokumentieren Sie Ihre einzelnen Schritte. Treffen Sie eine begründete Auswahl an Zusatzpaketen zur Integration von Formeln, Bildern, ... und versuchen Sie eine möglichst sichere Konfiguration zu erreichen. Ansatzpunkte könnten die Verwendung von Captchas, sowie Beschränkungen zum anlegen von Nutzeraccounts sein.
Mentor: Wolf Müller, Wolfgang Gandre
UEFI Secure Boot
Setzen sie eine virtuelle Maschine auf, welche UEFI Secure Boot verwendet.
- OpenSUSE mit UEFI Secure boot in KVM: http://en.opensuse.org/openSUSE:UEFI_Secure_boot_using_qemu-kvm
- Secure Boot in Fedora: http://mjg59.dreamwidth.org/12368.html (allgemein gibt es in dem Blog viele Informationen zu Secure Boot)
Alternativ/zusätzlich sind auch (U)EFI Rootkits dieses Jahr ein heißes Thema:
- https://program.sigint.ccc.de/fahrplan/system/attachments/24/original/efi_rootkits.pdf
- http://ho.ax/De_Mysteriis_Dom_Jobsivs_-_Syscan.pdf
Mentor:
AeroFS überwachen
Der "nicht-Cloud-Speicher" AeroFS speichert im Gegensatz zu Diensten wie Dropbox oder Wuala die Daten ausschließlich auf den eigenen Rechnern und synchronisiert zwischen diesen via LAN oder Internet verschlüsselt. Jedenfalls wird das behauptet. Man könnte sich anschauen, inwiefern es möglich ist, dieses Versprechen zu überprüfen.
Pentesting
(Hagen, Dominik, Paul, Carsten)
OWASP-Projekt, Strategien, Installation, Ideen ...
Stunnel & Keypinning
SSL/TLS Terminierung, Loadbalancing, Proxing, SNI, Skalierung, ...
TAME=
Berechigungen für Prozesse(gruppen) im Vergleich SE-Linux, app-amor
Grenzen von cgroups, acls
Flexispy
TOR-Proxy für Desktop
DNS? DNSSec?
Zertifikate
Was steht drin, Fehler? EFF als Quelle. Policies.
- Weitere kreative Vorschläge sind willkommen!
- Viel Erfolg!
- Kontakt: Wolf Müller