IP Authentication Header
| IP Authentication Header (AH) bietet
| Authentifizierung für
Daten und IP-Header, |
| kann in IPv4 und IPv6 verwendet werden. |
| unterstützt
neben Transport- auch Tunnelmodus |
|
| AH-Header
| hinter IP-Header |
| vor Header der oberen
Transportschicht |
| im Tunnelmodus vor innerem IP-Header eingefügt (Datenblock) |
|
| AH bietet
| Integrität bei verbindungsloser Kommunikation |
| Schutz vor
Replay von Daten
|
|
Paketformat des IP Authentication Header
| AH-Pakete durch
| Wert 51 im Nextheader-Feld des vorhergehenden
Pakets |
| AH-Paket hat folgenden Aufbau |
|
| Next Header
| Gibt Typ der Payload-Daten an,
| z.B. Transportprotokoll |
|
Erweiterungsheader in IPv6. |
|
| Dieser Wert kommt in jedem ESP-Header vor |
|
| Payload-Length
| Länge des AH in 32 Bit-Worten minus 2. |
|
| RESERVED
| Hat Wert null. |
|
| Security Parameters Index (SPI)
| 32 Bit-Wert, |
| identifiziert
eindeutig die SA für dieses Datagramm
| in Kombination mit Zieladresse und |
| Protokoll AH |
|
| Gewisse Werte (1..255) nur lokal (0) verwendet |
| Wert des SPI vom Zielrechner beim Aufbau der SA festgelegt |
| kommt in jedem AH-Paket vor |
|
| Sequenznummer
| 32 Bit-Wert |
| Antireplay-Wert |
| Sender
|
muss Wert einfügen |
| beginnend bei 1 inkrementieren |
|
|
Empfänger
| kann Wert auswerten |
| muss aber nicht |
| Wert darf
nicht über Höchstwert 232-1 inkrementiert werden |
| wenn
vom Empfänger ausgewertet |
| Wert kommt in jedem AH-Paket vor |
|
|
| Authentication Data
| Authentisierung des gesamten Pakets |
| Länge abhängig vom Authentifizierungsalgorithmus |
| Wert ist optional. |
|
Anordnung des IP-AH
| Transportmodus
| AH nach IP-Header |
| vor entsprechenden
Daten der oberen Schichten |
| z.B. TCP oder auch ICMP |
|
folgendes
Beispiel zeigt Einkapselung eines TCP-Pakets in IPv4-Feld
folgendes Beispiel zeigt Einkapselung eines TCP-Pakets in IPv6-Feld
| Tunnelmodus
| innerer Header der Zieladressen |
| äußerer IP-Header kann andere Adresse enthalten |
| z.B. Security-Gateways |
|
IPv4- und IPv6-Datagramme erhält man
folgende Anordnung
Funktionen beim Senden eines AH-Pakets
| Punkt-zu-Punkt-Kommunikation
| schlüsselbasierte Message
Authentication Codes
| DES |
| Hashfunktionen; MD5 oder SHA-1
| müssen implementiert sein |
|
|
|
| ausgehendes Paket
| als AH-Paket erkannt (Eintrag in
Security Policy Database) |
| konstruiere Paket mit eingefügten AH |
| Sequenznummer (nächster Wert) |
|
| Felder, die während Übertragung verändert werden
| veränderbare Felder erhalten Wert null! |
| IPv4
|
z.B. Time to Live, |
| Header Checksum oder |
| bestimmte Optionen |
|
| IPv6
| einige Felder beim Empfänger anders als beim Sender,
|
z.B. Feld Class, |
| Flow Label oder |
| Hop Limit. |
|
| Einige Felder bei
Sender und Empfänger vorhersehbar |
| wenngleich geändert |
| in der Regel ihren vorhersehbaren Wert |
|
|
| Gegebenenfalls Authentisierungsdaten auf geeignete Länge bringen
| z.B. ein Vielfaches von 32 Bits in IPv4 |
| durch
entsprechendes Paddingfeld |
|
| Integrity Check Value
mit jeweiligem Authentifizierungsverfahren
| Über gesamts vorbereitetes Paket |
| in Feld
Authentisierungsdaten eingefügt |
| gegebenenfalls Pakete fragmentieren |
| beim Empfänger vor Prüfung wieder
reassembliert |
|
Funktionen beim Empfangen eines AH-Pakets
| eingehendes Paket als AH-Paket erkannt
| aufgrund Eintrags in
Security Policy Database |
| zunächst
Sequenznummernfeld überprüfen
| wenn SA das vorschreibt |
|
|
Pakete können in beliebiger Reihenfolge eingehen
| Fensterverfahren vorgeschlagen |
| 32 bis 64 Sequenznummer |
| verifizieren und auf Duplikate überprüfen |
| dupliziertes Paket in
Logdatei protokollieren |
|
|
| Authentisierung durchführen
| Authentisierungsdaten aus AH-Paket speicheren |
| Feld Authentication
Data auf null setzen |
| einschließlich aller veränderbaren Felder |
| vorhersehbar geänderte Felder mit diesem
Wert belegt |
| Danach vereinbarten Algorithmus anwenden |
| Ergebnis
mit Authentisierungsdaten abgleichen |
| Fehler in
Logdatei protokollieren
| unter Angabe von SPI, |
| Empfangszeit, |
| Quell- und Zieladresse und |
|
Sequenznummer |
|
|
| zu protokollierende Fehler auditable events,
| in der Regel in Logdatei protokolliert |
| nicht verlangt wird
| jedes System protokolliert Fehler |
| wenn,
müssen Mechanismen zum Protokollieren von AH-Fehlern vorgesehen werden |
| Administrator muss dieses ein- bzw. ausschalten |
| bei Fehlern ist Empfänger nicht verpflichtet, an Absender melden |
| Gefahr von
Denial-of-Service-Angriffen verhindern |
|
|
|