Das Zertifikat der Lernplattform
AFB I–IIDie Schülerinnen und Schüler eines Gymnasiums melden sich über das Schul-WLAN bei der Lernplattform https://lernen.bildungsportal-nds.example an. Lea klickt im Browser auf das Schloss-Symbol und lässt sich das Zertifikat anzeigen (Material M1). Heute ist der 25.09.2026.
| Feld | Serverzertifikat | Zwischenzertifikat |
|---|---|---|
| Inhaber | CN = lernen.bildungsportal-nds.example | CN = Weserland TLS CA 3 |
| Aussteller | CN = Weserland TLS CA 3 | CN = Weserland Root CA |
| gültig von | 04.08.2026 | 15.01.2024 |
| gültig bis | 02.11.2026 | 14.01.2030 |
| öffentlicher Schlüssel | RSA, 2048 Bit: 30 82 01 0a 02 82 … | RSA, 4096 Bit: 30 82 02 0a 02 82 … |
| Signaturalgorithmus | SHA-256 mit RSA | SHA-384 mit RSA |
| Signatur | 5f 3a 9c 07 … (256 Byte) | a1 04 e8 72 … (512 Byte) |
- Geben Sie an, wem das Serverzertifikat gehört, wer es ausgestellt hat und in welchem Zeitraum es gültig ist.
- Erstellen Sie für den Aufruf der Lernplattform eine Prüftabelle, aus der hervorgeht, welche Signatur mit welchem öffentlichen Schlüssel geprüft wird und welche weiteren Prüfungen der Browser vornimmt. Tragen Sie für heute jeweils das Ergebnis ein.
- Erläutern Sie am Beispiel eines Angreifers im Schul-WLAN, der sich als Lernplattform ausgibt, wie das Zertifikat verhindert, dass er Lea seinen eigenen öffentlichen Schlüssel unterschiebt.
Hinweise
Hinweis zu Aufgabe a)
Hinweis zu Aufgabe b)
Hinweis zu Aufgabe c)
Erwartungshorizont
Erwartungshorizont zu Aufgabe a)
- Inhaber: lernen.bildungsportal-nds.example (die Lernplattform)
- Aussteller: Weserland TLS CA 3 (eine Zwischen-CA)
- Gültigkeit: 04.08.2026 bis 02.11.2026
Erwartungshorizont zu Aufgabe b)
| Prüfung | womit? | Ergebnis |
|---|---|---|
| Signatur des Serverzertifikats | öffentlicher Schlüssel der Weserland TLS CA 3 (aus dem Zwischenzertifikat) | korrekt, sofern Hashwerte übereinstimmen |
| Signatur des Zwischenzertifikats | öffentlicher Schlüssel der Weserland Root CA (vorinstalliert) | korrekt, sofern Hashwerte übereinstimmen |
| Vertrauensanker | Liste der vorinstallierten Wurzelzertifikate | Weserland Root CA ist enthalten ✓ |
| Zeitraum Server | Datum 25.09.2026 | liegt in 04.08.–02.11.2026 ✓ |
| Zeitraum Zwischen-CA | Datum 25.09.2026 | liegt in 15.01.2024–14.01.2030 ✓ |
| Domainname | aufgerufene Adresse | stimmt mit dem Inhaber überein ✓ |
| Widerruf | Sperrinformation der CA (Sperrliste bzw. Online-Abfrage) | nicht gesperrt (Annahme) ✓ |
Erst wenn alle Prüfungen bestanden sind, nutzt der Browser den öffentlichen Schlüssel aus dem Serverzertifikat beim Verbindungsaufbau.
Erwartungshorizont zu Aufgabe c)
Ohne Zertifikat könnte der Angreifer die Verbindung abfangen und Lea seinen eigenen öffentlichen Schlüssel schicken; Lea würde für ihn verschlüsseln bzw. ihm vertrauen (Man-in-the-Middle).
Mit Zertifikaten verlangt der Browser ein Zertifikat für lernen.bildungsportal-nds.example, das über eine Kette zu einer vorinstallierten Wurzel-CA führt. Der Angreifer hat zwei Möglichkeiten, die beide scheitern:
- Er legt das echte Zertifikat vor: Darin steht der Schlüssel der Lernplattform; den passenden privaten Schlüssel hat er nicht, er kann den Verbindungsaufbau also nicht korrekt signieren bzw. entschlüsseln.
- Er legt ein eigenes Zertifikat mit seinem Schlüssel vor: Ändert er ein echtes Zertifikat, passt die Signatur der CA nicht mehr; ein selbst erstelltes Zertifikat ist von keiner vertrauenswürdigen CA signiert. Eine seriöse CA stellt ihm keines für diese Domain aus, weil er deren Kontrolle nicht nachweisen kann.
Der Browser zeigt deshalb eine Warnung. Voraussetzung ist, dass Lea diese nicht wegklickt und die CAs sorgfältig arbeiten.
Zertifikatsketten automatisch prüfen
AFB II–IIIDie Informatik-AG des Gymnasiums „Am See“ betreibt mehrere Webdienste. Um zu verstehen, was ein Browser beim Verbindungsaufbau prüft, soll ein vereinfachter Prüfalgorithmus für Zertifikatsketten in Python entstehen (Material M2). Getestet wird mit vier Verbindungen (Material M3).
# Ein Zertifikat als Dictionary, Datumsangaben als Zahl JJJJMMTT, z. B.
# {"inhaber": "cloud.schule-am-see.example", "aussteller": "Seeblick TLS CA",
# "von": 20260715, "bis": 20261013, "seriennr": 4714, "schluessel": ...}
#
# kette Liste: kette[0] = Serverzertifikat, danach die Zwischenzertifikate
# wurzeln Dictionary: Name der Wurzel-CA -> öffentlicher Schlüssel (vorinstalliert)
# sperrliste Liste der Seriennummern gesperrter Zertifikate
#
# vorhanden: signatur_ok(zert, oeff_schluessel) liefert True, wenn die
# Signatur von zert mit oeff_schluessel erfolgreich geprüft wurde| aufgerufene Domain | Serverzertifikat: Inhaber / Aussteller | gültig | Seriennr. |
|---|---|---|---|
| portal.schule-am-see.example | portal.schule-am-see.example / Seeblick TLS CA | 01.08.2026–30.10.2026 | 4711 |
| mensa.schule-am-see.example | mensa.schule-am-see.example / Seeblick TLS CA 2 | 01.08.2026–30.10.2026 | 4712 |
| bibliothek.schule-am-see.example | bibliothek.schule-am-see.example / Seeblick TLS CA | 01.10.2026–29.12.2026 | 4713 |
| cloud.schule-am-see.example | cloud.schule-am-see.example / Seeblick TLS CA | 15.07.2026–13.10.2026 | 4714 |
- Ermitteln Sie für jede Verbindung in M3, ob der Browser das Serverzertifikat akzeptiert, und nennen Sie gegebenenfalls die fehlgeschlagene Prüfung.
- Implementieren Sie eine Funktion
kette_pruefen(kette, wurzeln, domain, heute, sperrliste), die genau dannTrueliefert, wenn die Kette alle Prüfungen besteht. Nutzen Sie das Datenmodell aus M2. - Bewerten Sie den Vorschlag der Schul-IT, auf allen Geräten der Schülerinnen und Schüler ein eigenes Wurzelzertifikat „Schule am See Root CA“ zu installieren, damit der Webfilter auch HTTPS-Verbindungen öffnen und prüfen kann.
Hinweise
Hinweis zu Aufgabe a)
Hinweis zu Aufgabe b)
wurzeln.Hinweis zu Aufgabe c)
Erwartungshorizont
Erwartungshorizont zu Aufgabe a)
| Domain | akzeptiert? | Grund |
|---|---|---|
| portal | nein | Seriennummer 4711 steht auf der Sperrliste (widerrufen). |
| mensa | nein | Aussteller „Seeblick TLS CA 2“ ≠ Inhaber des mitgeschickten Zwischenzertifikats „Seeblick TLS CA“: Kette unterbrochen, die Signatur kann nicht mit einem vertrauenswürdigen Schlüssel geprüft werden. |
| bibliothek | nein | noch nicht gültig (erst ab 01.10.2026). |
| cloud | ja | Name, Zeitraum, Sperrstatus, Verkettung und Wurzel stimmen. |
Erwartungshorizont zu Aufgabe b)
def kette_pruefen(kette, wurzeln, domain, heute, sperrliste):
if kette[0]["inhaber"] != domain:
return False
for i in range(len(kette)):
z = kette[i]
if not (z["von"] <= heute <= z["bis"]):
return False
if z["seriennr"] in sperrliste:
return False
if i + 1 < len(kette):
# es gibt eine höhere Stufe in der Kette
oben = kette[i + 1]
if z["aussteller"] != oben["inhaber"]:
return False # Kette unterbrochen
schluessel = oben["schluessel"]
else:
# oberstes Zertifikat der Kette
if z["aussteller"] not in wurzeln:
return False # unbekannte Wurzel
schluessel = wurzeln[z["aussteller"]]
if not signatur_ok(z, schluessel):
return False
return True
Für die Daten aus M3 liefert die Funktion False, False, False, True. Gleichwertige Lösungen (z. B. mit while oder Hilfsfunktionen) sind zu akzeptieren; wesentlich sind alle fünf Prüfungen und die richtige Schlüsselwahl je Stufe.
Erwartungshorizont zu Aufgabe c)
Für den Vorschlag: Der Filter kann auch verschlüsselte Seiten auf Schadsoftware und jugendgefährdende Inhalte prüfen; das dient dem Schutz der Lernenden und erfüllt ggf. Aufsichtspflichten.
Gegen den Vorschlag:
- Wer den privaten Schlüssel dieser Root CA besitzt, kann für jede Domain (auch Bank, E-Mail, Messenger) Zertifikate ausstellen, die die Geräte akzeptieren – der Filter ist technisch ein erlaubter Man-in-the-Middle und kann alles mitlesen.
- Wird der Schlüssel gestohlen, können Angreifer sich gegenüber allen Schülergeräten als beliebige Webseite ausgeben – auch außerhalb der Schule, solange das Wurzelzertifikat installiert bleibt.
- Die Privatsphäre (Online-Banking, private Nachrichten) wird verletzt; bei privaten Geräten ist das rechtlich und ethisch besonders heikel.
- Die Ende-zu-Ende-Idee von HTTPS wird aufgehoben; Nutzer sehen weiterhin ein Schloss.
Alternativen: Filtern über DNS bzw. Domainlisten ohne Entschlüsseln, Einsatz nur auf schuleigenen, verwalteten Geräten, Ausnahmen für sensible Kategorien (Banken), strenger Schutz des CA-Schlüssels (Hardware-Sicherheitsmodul), Entfernen des Zertifikats beim Verlassen der Schule, Transparenz gegenüber Eltern und Lernenden.
Urteil (Beispiel): Für private Geräte ist der Vorschlag abzulehnen, weil das Risiko für alle Verbindungen den Nutzen deutlich übersteigt. Für schuleigene Geräte ist er nur mit strengen Auflagen vertretbar. Andere begründete Urteile sind möglich.
