Universität Hamburg, MIN Fakultät, Department InformatikSVS – Sicherheit in Verteilten Systemen
Universität Hamburg
Die „Untiefen“ der XML-basierten Dokumentenformate
Lars Westphal & Henrich C. Pöhls
University of Hamburg, MIN Faculty, Dept. Informatics, SVS, Feb 18, 2008, Henrich C. Pöhls
2
Motivation
DokumentenformateDokumentenformate
proprietär offen
binär Format XML-basiert
Generelle Probleme:Generelle Probleme:
Komplexität vs. Verständnis des Anwenders
Transparenz vs. Durchblick
Frage: Frage:
Sind die „neuen“ Office Anwendungen und ihreXML-basierten Dokumentenformate transparent genug?
_
University of Hamburg, MIN Faculty, Dept. Informatics, SVS, Feb 18, 2008, Henrich C. Pöhls
3
Was wir nicht machen
„Untiefen“ sind nicht:
Verwundbarkeiten im klassischen Sinne
Die gezeigten „Untiefen“ sind dennoch:
sicherheitsrelevant unerwünscht vermeidbar !!!vermeidbar !!!
Keine Bewertung der Dokumentenformate
University of Hamburg, MIN Faculty, Dept. Informatics, SVS, Feb 18, 2008, Henrich C. Pöhls
4
XML basierte Dokumenten Formate
Microsoft Office Dateien [ECMA 376] mit Macros
*.docx *.docm *.pptx *.pptm*.xlsx *.xlsm
…
OpenOffice Dateien [ISO/IEC DIS 26300]
*.odt*.odp*.ods
…
XML basiertes Dokumenten Format
Spezifikation „offen“
University of Hamburg, MIN Faculty, Dept. Informatics, SVS, Feb 18, 2008, Henrich C. Pöhls
5
Container FormateFo
to: H
apag
Lloyd
Foto
: Hap
ag Llo
yd
University of Hamburg, MIN Faculty, Dept. Informatics, SVS, Feb 18, 2008, Henrich C. Pöhls
6
Vergleich Containerstruktur
Office Open XML OpenDocumentFormat
Dokumentinhalt /word/document.xml content.xml
Dokumentoptionen /docProps/core.xml settings.xml
Verknüpfungen /_rels/.rels /META/manifest.xml
Universität Hamburg, MIN Fakultät, Department InformatikSVS – Sicherheit in Verteilten Systemen
Universität Hamburg
Problem
Versteckte Inhalte
University of Hamburg, MIN Faculty, Dept. Informatics, SVS, Feb 18, 2008, Henrich C. Pöhls
8
Szenario: Versteckte Inhalte
Firma A Firma B
Autor Supervisor Empfänger
Co
nta
iner
Prä
sen
tati
on
University of Hamburg, MIN Faculty, Dept. Informatics, SVS, Feb 18, 2008, Henrich C. Pöhls
9
vorlegen
Szenario: Versteckte Inhalte
Co
nta
iner
Prä
sen
tati
on
Firma A Firma B
Autor Supervisor Empfänger
Co
nta
iner
Prä
sen
tati
on
University of Hamburg, MIN Faculty, Dept. Informatics, SVS, Feb 18, 2008, Henrich C. Pöhls
10
vorlegen
Szenario: Versteckte Inhalte
Co
nta
iner
Prä
sen
tati
on
versenden
Firma A Firma B
Autor Supervisor Empfänger
Co
nta
iner
Prä
sen
tati
on
Co
nta
iner
Prä
sen
tati
on
University of Hamburg, MIN Faculty, Dept. Informatics, SVS, Feb 18, 2008, Henrich C. Pöhls
11
Versteckte Inhalte im Container
Beliebige Dateien im ZIP Container ablegen
OpenOffice: An beliebiger Stelle im Container
MS Office: Content-Type (DateiEndung) + Ort
Beliebige Dateien an den ZIP Container anhängen
copy /b cover.odf + hidden.stuff new.odf
University of Hamburg, MIN Faculty, Dept. Informatics, SVS, Feb 18, 2008, Henrich C. Pöhls
12
Beispiel Versteckte Inhalte im Container
Beispiel eMail-Filter:
Ausführbarer Content
in ZIP Dateien geblockt
in ODF Dateien nicht
University of Hamburg, MIN Faculty, Dept. Informatics, SVS, Feb 18, 2008, Henrich C. Pöhls
13
Versteckte Inhalte in XML
Leerzeichen vor schließender Klammer:
<tag>
<tag >
Varianten von Single-Element-Tags:
<single-element-tag />
<single-element-tag></single-element-tag>
Reihenfolge von Attributen:
<tag attri=� 1� but=� 2� >
<tag but=� 2� attri=� 1� >
University of Hamburg, MIN Faculty, Dept. Informatics, SVS, Feb 18, 2008, Henrich C. Pöhls
14
Beispiel für Versteckte Inhalte in XML
<text:h text:style-name="Heading_20_1" text:outline-level="1">
Lorem ipsum
</text:h>
<text:p text:style-name="Standard">
Lorem ipsum dolor sit amet, consetetur sadipscing elitr.
</text:p>
University of Hamburg, MIN Faculty, Dept. Informatics, SVS, Feb 18, 2008, Henrich C. Pöhls
15
Ergebnis
University of Hamburg, MIN Faculty, Dept. Informatics, SVS, Feb 18, 2008, Henrich C. Pöhls
16
Rohdaten eingebetteter Objekte
Objekte liegen als Dateien im Container
Zuschneiden ändert nur sichtbaren Ausschnitt
Auch Tabellen können Ausschnittsweise angezeigt werden
University of Hamburg, MIN Faculty, Dept. Informatics, SVS, Feb 18, 2008, Henrich C. Pöhls
17
Rohdaten eingebetteter Objekte
Objekte liegen als Dateien im Container
Zuschneiden ändert nur sichtbaren Ausschnitt
Auch Tabellen können Ausschnittsweise angezeigt werden
University of Hamburg, MIN Faculty, Dept. Informatics, SVS, Feb 18, 2008, Henrich C. Pöhls
18
GUI: Kompression macht Beschneiden endgültig
University of Hamburg, MIN Faculty, Dept. Informatics, SVS, Feb 18, 2008, Henrich C. Pöhls
19
GUI: Kompression macht Beschneiden endgültig
University of Hamburg, MIN Faculty, Dept. Informatics, SVS, Feb 18, 2008, Henrich C. Pöhls
20
Verbesserungsvorschläge
5 verschiedene Seitenansichten in Microsoft Office vorhanden
VorschlägeVorschläge
6. Ansicht zeigt alle Inhalte des Dokuments
Steuerzeichen-Ansicht zeigt leere Verschachtelungen
Vergleich: Anzeige aller Anhänge in E-Mails
University of Hamburg, MIN Faculty, Dept. Informatics, SVS, Feb 18, 2008, Henrich C. Pöhls
21
Mock-up
University of Hamburg, MIN Faculty, Dept. Informatics, SVS, Feb 18, 2008, Henrich C. Pöhls
22
Workarounds
EinbettungEinbettung GegenmaßnahmeGegenmaßnahme
Datei in Container • Container wie ZIP behandeln• XML “Inhaltsverzeichnisse” abgleichen
Datei anhängen Archivende prüfen
In XML-Tags verbergen
Datei neu speichern
Universität Hamburg, MIN Fakultät, Department InformatikSVS – Sicherheit in Verteilten Systemen
Universität Hamburg
Anwendungs(un)fall
Digital signierteDokumente
University of Hamburg, MIN Faculty, Dept. Informatics, SVS, Feb 18, 2008, Henrich C. Pöhls
24
Digitale Signatur
Gut verstandener Sicherheitsmechanismus
Schützt die Integrität der signierten Daten (Integrity)
Ermöglicht Prüfung des Signaturerstellers (Origin Authentification)
Algorithmen operieren auf Bit-Ebene
University of Hamburg, MIN Faculty, Dept. Informatics, SVS, Feb 18, 2008, Henrich C. Pöhls
25
Problemfeld: WYSIWYS
What you see is what you sign (WYSIWYS) Digitale Signatur ist technische Lösung Nutzer sieht nienie die signierten „Bits“ Nutzer sieht „visuelle
Darstellung“ (Präsentation) des Dokumentes
Ziel von WYSIWYS:Ziel von WYSIWYS:
Semantisch gleiche Präsentation eines signierten Dokumentes bei Signatur-Ersteller und allen Signatur-Prüfern.
University of Hamburg, MIN Faculty, Dept. Informatics, SVS, Feb 18, 2008, Henrich C. Pöhls
26
Digitale Signatur eines XML Dokumentes
present(XML1) = present(XML2)
aber möglicherweise
hash(XML1) ≠ hash(XML2)
Digitale Signatur erst sinnvoll nach Normalisierung: Canonicalization(c14n)
c14n(XML1) = c14n(XML2)
hash(c14n(XML1)) = hash(c14n(XML2))
Standardisierte Normalisierungen
Zusätzlich Transforms (z.B. durch XPATH)
University of Hamburg, MIN Faculty, Dept. Informatics, SVS, Feb 18, 2008, Henrich C. Pöhls
27
WYSIWYS vs. XML DSIG
Mehrere transparente Ebenen:
1. Office Anwendung
2. XML Repräsentation im ZIP Container
3. XML Transforms
4. XML Canonicalization
5. Digitale Signatur
Transparenz + Komplexität
Erhöhte Gefahr von Sicherheitsproblemen Erhöhte Gefahr von Sicherheitsproblemen
University of Hamburg, MIN Faculty, Dept. Informatics, SVS, Feb 18, 2008, Henrich C. Pöhls
28
LIVE DEMO
Universität Hamburg, MIN Fakultät, Department InformatikSVS – Sicherheit in Verteilten Systemen
Universität Hamburg
Zusammenfassung &Fazit
Die „Untiefen“ XML-basierter
Dokumentenformate
University of Hamburg, MIN Faculty, Dept. Informatics, SVS, Feb 18, 2008, Henrich C. Pöhls
30
Gefundene „Untiefen“
Manipulation von Hyperlink-Targets trotz Signatur
Metainformation werden nicht signiert
Manipulation von Informationen zum Signaturersteller trotz Signatur
Mangelnde Unterstützung durch GUI
Containerformate erlauben Transport von Daten
Objekte liegen in Gänze im Container
Meta-Informationen über Betriebssystem
University of Hamburg, MIN Faculty, Dept. Informatics, SVS, Feb 18, 2008, Henrich C. Pöhls
31
Fazit
Hohe Komplexität & Hohe informatische Transparenz
Erhöhte Gefahr von Sicherheitsproblemen
Aktuelle Office Anwendungen & XML-basierte Formate
Leider keine Ausnahme
Zum Teil bekannte Probleme
Lösungsvorschläge:
Nicht-Technische: Anwender Schulung, Awareness, …
Technische: Gateway-Filter, Dokument-Analyse, PlugIns, …