Zum Hauptinhalt springen

Den Bericht verfassen — Beginn des Praxisprojekts 3

Sie greifen nicht mehr an. Sie liefern. Das Praxisprojekt 3 beginnt hier und wird in Woche 14 abgegeben: ein PDF von 20 bis 30 Seiten, mindestens sechs Feststellungen, ein Plan über 3, 6 und 12 Monate. Diese Lektion gibt Ihnen den simulierten Auftrag, das auszufüllende Grundgerüst und das Raster, das der Korrektor verwenden wird — nutzen Sie es, bevor Sie abgeben.

Einplanen. 8 bis 12 Stunden Schreibarbeit, verteilt auf zwei Wochen. Die erste Sitzung (heute) legt den Plan, die sechs Titel und die Prioritäten fest. Die zweite verfasst den Text. Die dritte liest die Zusammenfassung laut vor.

Liefergegenstand. rapport-nordik-commerce.pdf, 20 bis 30 Seiten, plus ein Ordner preuves/ mit Benennung nach Cxx-AAAA-MM-JJ-….

Kein neuer Angriff

Der simulierte Auftrag unten und Ihre Labor-Notizen genügen. Sie senden kein einziges Paket an ein Drittziel. Sie öffnen keinen Scope, „um den Bericht anzureichern". Ein erfundenes P1 zu verfassen oder außerhalb des Labs erneut auszunutzen, ist eine Null — und außerhalb des Labs eine Straftat.

Was Sie nach diesem Workshop können​

  • Einen Bericht zusammenstellen, der von der Geschäftsleitung und vom technischen Team gelesen wird.
  • Sechs kohärente Prioritäten (2 P1, 2 P2, 2 P3 oder mehr) aus Rohnotizen festlegen.
  • Die Feststellungsvorlage ausfüllen, ohne ein Feld zu vergessen.
  • Einen glaubwürdigen Behebungsplan mit drei Horizonten vorschlagen.
  • Sich selbst mit dem Raster des Praxisprojekts 3 vor der Abgabe bewerten.

1. Was Sie brauchen​

  • Die Lektionen 12.1 und 12.2 gelesen. Die Fiche C-01 aus der Demonstration ist das Niveau, keine Feststellung zum unveränderten Abschreiben (außer Sie machen sie zu einer der sechs, angepasst an den Kunden Nordik).
  • Ihre Notizen aus den Modulen 3 bis 11, wenn Sie einen Nachweis in einem Lab verankern wollen, das Sie tatsächlich durchgespielt haben (Juice Shop 10.10.10.50:3000, DVWA, AD aus Modul 9–10).
  • Eine Textverarbeitung oder Markdown → PDF (Pandoc, Typora, Word, LibreOffice). Lesbare Schrift, nummerierte Überschriften, Inhaltsverzeichnis.
  • Das Notizbuch aus Abschnitt 3. Das ist der Stoff des simulierten Auftrags.

2. Simulierter Auftrag — Nordik Commerce inc.​

Sie schreiben, als hätten Sie den Auftrag durchgeführt. Die folgenden Fakten gelten als wahr. Sie fügen keine weiteren hinzu, außer einem Nachweis aus Ihrem Lab, klar gekennzeichnet als „Laborillustration, gleiche Defektklasse".

Kunde         : Nordik Commerce inc. (Online-Shop, Montreal)
Auftraggeber : IT-Leitung, Marie Tremblay
Typ : Grey-Box, Anwendung + Identitätsperipherie
Termine : 14.–18. April 2026, 09:00–18:00 America/Toronto
Ziel enthalten: shop.nordik.example (Lab: 10.10.10.50:3000)
vpn.nordik.example (Port 443)
Mail (Google Workspace, Domäne nordik.example)
Ziel ausgeschlossen: Anbieter Stripe, Atlassian Cloud, DoS, Phishing
Konten : ein Kundenkonto `acheteur@nordik.example`
Extraktion : höchstens 5 Zeilen pro Tabelle, keine echten personenbezogenen Daten außerhalb des Labs
Methode : OWASP Testing Guide v4.2 + Identitätskontrollen (M05, M06)

2.1. Einsatznotizbuch — acht Rohnotizen​

Sie müssen sechs Feststellungen erstellen. Das Notizbuch enthält acht. Zwei Notizen sind Fallen: zu schwach, Duplikat, oder außerhalb des Umfangs. An Ihnen, sie auszuschließen oder im Gesamtüberblick auf P4 herabzustufen, ohne daraus ein Füll-P1 zu machen.

Notiz A — Katalogsuche

shop GET /rest/products/search?q=
q=apple' -> 500 SQLITE_ERROR
UNION -> Tabelle Users (3 Zeilen, RoE)
admin@juice-sh.op Hash MD5 0192023a7bbd73250516f069df18b500 -> admin123
siehe Demonstration 12.2 / Modul 7 Schritt 3

Notiz B — Direkte Objektreferenz (IDOR)

GET /rest/basket/1  mit dem Cookie von acheteur@...
GET /rest/basket/2 gleiches Cookie -> 200, Warenkorb eines anderen Kunden
Bestellzeilen, E-Mail, Adresse
Modul 7, A01

Notiz C — Gespeicherte XSS, Produktbewertung

Produktkommentar: <img src=x onerror="…">
der Admin, der Moderation öffnet, führt das JS aus
Admin-Sitzungscookie sichtbar (HttpOnly fehlt beim Lab-Cookie)
Modul 7 Schritt 4

Notiz D — DMARC-Richtlinie

_dmarc.nordik.example  TXT  v=DMARC1; p=none; rua=mailto:dmarc@nordik.example
SPF vorhanden include:_spf.google.com
Phishing durch die RoE nicht autorisiert: es wurde KEINE E-Mail versendet
Modul 3 / Modul 6

Notiz E — Listing /assets/backups

GET /assets/backups/  -> 200  index of
dump-2023-11.sql (NICHT heruntergeladen, RoE-Extraktion)
letzte Änderung 2023-11-02

Notiz F — Server-Banner

Server: nginx/1.18.0
X-Powered-By: Express
kein Exploit ausgeführt

Notiz G — VPN: Zertifikat und Portal

vpn.nordik.example  TLS 1.2 OK
Forti-ähnliches Portal, keine MFA beim bereitgestellten Testkonto
Password Spraying NICHT durchgeführt (außerhalb des Zeitfensters)
Testkonto `vpn-invite` / `Nordik2024!` am 18. April noch gültig

Notiz H — In einem HTML-Kommentar erwähntes Jira-Ticket

<!-- fix NORDIK-1842 voir jira.nordik.example -->
jira.nordik.example -> Atlassian Cloud AUSSERHALB DES UMFANGS
es wurde nicht authentifiziert

2.2. Welche Verteilung der Korrektor erwartet​

PrioritätQuoteNotizen, die infrage kommenNotizen, die nicht hierhin gehören
P12A (SQLi Admin), B (IDOR Warenkörbe) oder C, falls Diebstahl der Admin-Sitzung nachgewiesenF, H
P22C (falls nicht bereits P1), G (schwaches VPN-Konto ohne MFA), gegebenenfalls E, falls der Dump begründet istF
P3+2D (DMARC p=none ohne echtes Phishing), E (Listing), G, falls Sie bereits zwei stärkere P2 habenA herabgestuft „weil es ein Lab ist"

Notiz F ist keine P2-Feststellung. Sie kann als P4 oder im Gesamtüberblick erscheinen („offengelegte Versionen"). Notiz H ist keine Feststellung zu einem Atlassian-Einbruch: außerhalb des Umfangs. Sie erwähnen sie als Grenze: Meldung an den Kunden, kein Test.

Sie können eine Notiz durch eine gleichwertige Feststellung aus Ihrem Lab ersetzen (EternalBlue aus Modul 5, Kerberoasting aus Modul 9), sofern Sie die Verteilung 2 / 2 / 2 und die Vorlage beibehalten.


3. Seitenbudget — 24 anstreben, nicht 19 und nicht 41​

TeilSeitenWas ausufern lässt
Deckblatt + Verteiler1Logos, NDA-Vermerke
Executive Summary1–2Fachjargon, Tag-für-Tag-Historie
Umfang und Methode2Copy-paste der gesamten RoE im Hauptteil
Gesamtüberblick2Sechsseitiger Angriffsroman
Sechs Feststellungen10–14Vollständiges JSON in jeder Fiche
Empfehlungen 3 / 6 / 12 Monate2–3Die Fiches Wort für Wort wiederholen
Anhänge3–640-seitiger Nmap-Export

Weniger als 20 Seiten: Es fehlt entweder eine Fiche, die Nachweise, oder der Plan. Mehr als 30: Sie haben Tool-Ausgaben eingefügt. Kürzen Sie die Anhänge, nicht die P1-Begründungen.


4. Berichtsgerüst — kopieren, dann ausfüllen​

Der äußere Rahmen verwendet vier Backticks: Das Gerüst enthält selbst Nachweis-Blöcke. Kopieren Sie es nach ~/mission/rapport-nordik.md und exportieren Sie es dann als PDF.

# Bericht zum Penetrationstest
## Nordik Commerce inc. — Shop `shop.nordik.example`

| Feld | Wert |
| --- | --- |
| Referenz | NORDIK-PT-2026-04 |
| Klassifizierung | Vertraulich — eingeschränkte Verteilung |
| Version | 1.0 |
| Testdaten | 14.–18. April 2026 |
| Berichtsdatum | 22. April 2026 |
| Verfasser | `Ihr-Name` |
| Empfänger | Marie Tremblay, IT-Leitung |

Verteiler: Auftraggeber, CISO, Anwendungsverantwortlicher.
Keine Weitergabe außerhalb des NDA.

---

## 1. Executive Summary

*(ZULETZT verfassen. 1 bis 2 Seiten. Fazit ab dem ersten Satz.)*

**Sicherheitslage.** `unzureichend | akzeptabel mit Vorbehalten | beherrscht` —
`ein Satz, der die Anzahl der P1 nennt`.

**Umfang in einem Satz.** Grey-Box, Shop und VPN-Portal, ohne Stripe
und Atlassian, ohne Denial-of-Service und ohne Phishing.

**Zählung.**

| P1 | P2 | P3 | P4 |
| --- | --- | --- | --- |
| 2 | 2 | 2 | `n` |

**Drei Risiken, die die Geschäftsleitung wiederholen kann.**

1. `geschäftlicher Satz` (C-0x)
2. `geschäftlicher Satz` (C-0x)
3. `geschäftlicher Satz` (C-0x)

**Entscheidungen der Woche.**

1. `Rotation, Schließung, Abschaltung`
2. `…`
3. `…`

Kein Werkzeug, keine CVE, kein Screenshot hier.

---

## 2. Umfang und Methodik

### 2.1. Eingeschlossen / ausgeschlossen

| Eingeschlossen | Ausgeschlossen |
| --- | --- |
| `shop.nordik.example` (Lab 10.10.10.50:3000) | Stripe, Jira Cloud |
| `vpn.nordik.example` | DoS, aktives Phishing |
| Bereitgestelltes Kundenkonto | Tochtergesellschaften, WLAN, physischer Zugang |

### 2.2. Rules of Engagement

Zeitfenster 09:00–18:00 America/Toronto. Extraktion ≤ 5 Zeilen.
Keine Änderung echter Bestellungen. Eskalation: Marie Tremblay.

### 2.3. Methode und Werkzeuge

OWASP Testing Guide v4.2. Burp Suite (Repeater), `curl`, `sqlmap`
(Bestätigung, `--stop=3`), `dig` (DMARC). Jedes Werkzeug hat eine Rolle;
kein Rohexport ist eine Feststellung.

### 2.4. Grenzen

`was nicht getestet wurde: Admin-API ohne Konto, Phishing, Atlassian.`
Diese Grenzen verringern die Aussagekraft: Das Fehlen eines P1 an
anderer Stelle ist kein Sicherheitsattest.

---

## 3. Gesamtüberblick

### 3.1. Heatmap

| Thema | P1 | P2 | P3 | P4 |
| --- | --- | --- | --- | --- |
| Anwendung | `n` | `n` | `n` | `n` |
| Identität | `n` | `n` | `n` | `n` |
| Netzwerk / VPN | `n` | `n` | `n` | `n` |
| Messaging | `n` | `n` | `n` | `n` |

### 3.2. Haltungsindikator

`Ein Satz. Beispiel: unzureichend — zwei P1 aus dem Internet ohne Privilegien.`

### 3.3. Angriffspfad (ein Absatz)

Die Fiches verbinden: öffentliche Suche → Admin-Konto → Sitzung;
oder IDOR-Warenkorb → Daten eines Dritten. Keinen AD-Pivot erfinden,
wenn Sie die Notizen dazu nicht haben.

---

## 4. Detaillierte Feststellungen

Jede Fiche: Titel, Schweregrad (P + CVSS + Begründung), Kontext,
Nachweis, geschäftliche Auswirkung, Behebung (Maßnahme, Test, Aufwand),
Referenzen.

### C-01 — `Titel Aktion + Angriffsfläche`

**Schweregrad.** P`x`. CVSS 3.1: `Score` — `Vektor`.
Geschäftliche Begründung: `ein Satz`.

**Kontext.** `ein funktionaler Satz`.

**Nachweis.** Datum, Ziel, Extraktionsgrenze.

```bash
curl -sS -G 'http://10.10.10.50:3000/rest/products/search' \
--data-urlencode "q=…"
```

```http
HTTP/1.1 200 OK
Content-Type: application/json
```

Screenshot: `C01-2026-04-16-….png` (Anhang A).

**Geschäftliche Auswirkung.** `bereits nachgewiesen, kein Szenario`.

**Behebung.**
1. Sofort:
2. Korrektur:
3. Kompensation:
4. Abschlusstest: `derselbe Nachweis, anderes erwartetes Ergebnis`.
Aufwand: `Personentage, Rolle`.

**Referenzen.** CWE-…, OWASP …, CVE, sofern vorhanden.

### C-02 — `…`

*(gleiche Vorlage)*

### C-03 — `…`

### C-04 — `…`

### C-05 — `…`

### C-06 — `…`

---

## 5. Priorisierte Empfehlungen

Nach Thema gruppieren, nicht nach Fiche-Nummer. Eine Maßnahme kann
zwei Feststellungen schließen (alle SQL-Abfragen parametrisiert = C-01
und ein eventuelles injizierbares Login).

### 5.1. Identität
### 5.2. Anwendung
### 5.3. Netzwerk und VPN
### 5.4. Messaging

### 5.5. Plan mit drei Horizonten

| Horizont | Ziel | Maßnahmen (Ref. Feststellungen) | Aufwand | Vorgeschlagener Verantwortlicher |
| --- | --- | --- | --- | --- |
| 0–3 Monate | Exposition kappen | P1 + Rotationen + VPN-MFA | `PT` | Dev + Ops + IAM |
| 3–6 Monate | Geschäftsprozesse härten | IDOR, XSS, Zugriffsüberprüfungen | `PT` | Dev + CISO |
| 6–12 Monate | Halten | Sicherheits-CI, DMARC reject, Inventar | `PT` | CISO + DevOps |

Narrative Details: ein Absatz pro Horizont — was sich für den Kunden
ändert, wenn er es nicht tut, keine Lektion über OWASP.

---

## 6. Anhänge

### A. Nachweise pro Feststellung
Index der Dateien `Cxx-AAAA-MM-JJ-*`.

### B. Vollständige Anfragen
Burp-Dateien / `curl` `-D`.

### C. Werkzeugprotokolle
Begrenztes `sqlmap`, `dig` DMARC. Kein vollständiger Scan.

### D. Screenshots
Sichtbarer Zeitstempel. Persönliche Bereiche maskiert.

5. Wie man ausfüllt, ohne die Demonstration abzuschreiben​

Die Fiche C-01 aus Lektion 12.2 ist ein Qualitätsmodell. Wenn Sie Notiz A verwenden, formulieren Sie für Nordik um: Der Titel kann zu SQL-Injection auf der Katalogsuche werden, die Zusammenfassung spricht von Nordik Commerce, nicht von Juice Shop. Die Befehle aus dem Lab bleiben 10.10.10.50:3000: Das sagen Sie im Umfang (Reproduktionsumgebung).

Für Notiz B (IDOR) sieht der minimale Nachweis so aus — anzupassen an Ihr Lab-Cookie, niemals ein Produktions-Cookie:

# zwei Warenkörbe, ein einziges Konto
curl -sS -H "Cookie: token=IHR_LAB_TOKEN" \
http://10.10.10.50:3000/rest/basket/1 | jq '{id,UserId}'
curl -sS -H "Cookie: token=IHR_LAB_TOKEN" \
http://10.10.10.50:3000/rest/basket/2 | jq '{id,UserId}'

Pädagogisch erwartet: Der zweite Aufruf liefert eine UserId, die nicht Ihre eigene ist. Auswirkung: Lesen fremder Bestellungen. Wahrscheinliche Priorität: P1, wenn Daten Dritter ohne Hindernis, P2, wenn das Lab nur Summen liefert.

Für Notiz D haben Sie keine E-Mail versendet. Die Auswirkung schreibt sich: Die Richtlinie hindert einen Dritten nicht daran, eine Nachricht im Namen der Domäne zu versenden; es wurde kein Versand durchgeführt (außerhalb der RoE). Das ist kein P1.

Für Notiz G wird das Demonstrationspasswort im Hauptteil maskiert (Nord***!) und in den Anhang gestellt.


6. Plan 3 / 6 / 12 Monate — was glaubwürdig ist​

Ein Plan ist nicht die dreimal kopierte Liste der Behebungen. Jeder Horizont hat eine Absicht.

0 bis 3 Monate — die Blutung stoppen. Alles, was P1 ist, plus die Kompensationen, die die Angriffsfläche verringern, während der Fix aussteht. Rotation der offengelegten Geheimnisse. MFA auf dem VPN. Schließung des Listings /assets/backups oder Entfernung der Datei. Ein wöchentliches Komitee bis zum Abschluss der P1. Typischer Aufwand für einen Shop dieser Größe: 15 bis 30 Personentage, hauptsächlich Anwendungsentwicklung.

3 bis 6 Monate — den Geschäftsprozess korrigieren. Systematische Zugriffskontrolle auf Ressourcen mit Kennung (nicht mehr ein IDOR nach dem anderen). Output-Encoding bei allen Bewertungen. Überprüfung der Einladungskonten. Umstellung von DMARC auf quarantine (noch nicht reject, solange die legitimen Flüsse nicht ausgerichtet sind). Abschlusstests, wiederholt von jemand anderem als dem Verfasser der Korrektur.

6 bis 12 Monate — es haltbar machen. reject für DMARC, sobald SPF/DKIM sauber sind. CI-Pipeline: Injection-Test und IDOR-Test für neue Endpunkte. Inventar der Portale (VPN, Admin, alte Backups). Trockenübung zur Loi-25-Meldung. Das P4 (nginx-Banner) wird hier behandelt, nicht in Woche 1.

Einen Horizont ohne Verantwortlichen gibt es nicht

„Das Team" ist kein Verantwortlicher. Nennen Sie eine Rolle: Anwendungsverantwortlicher, Ops, Identität, CISO. Der Kunde wird den Namen korrigieren; er kann keine leere Zeile korrigieren.


7. Selbstbewertungsraster — 100 Punkte, identisch mit dem Praxisprojekt 3​

Haken Sie ab, bevor Sie als PDF exportieren. Jedes nicht abgehakte Kästchen bedeutet zurück ans Schreiben, keine gedankliche Notiz.

7.1. Executive Summary — 15 Punkte​

  • Der erste Satz nennt die Sicherheitslage und die Anzahl der P1.
  • Eine Führungskraft versteht ihn ohne Glossar.
  • Drei geschäftliche Risiken, jedes mit einem C-0x verknüpft.
  • Entscheidungen der Woche, keine Werkzeugliste.
  • Die Zusammenfassung steht für sich, ohne die Feststellungen zu lesen.

7.2. Sechs Feststellungen nach Vorlage — 30 Punkte​

  • Mindestens sechs Fiches, je sieben Felder (Titel, Schweregrad, Kontext, Nachweis, Auswirkung, Behebung, Referenzen).
  • Titel = Aktion + Angriffsfläche, als Ticket verwendbar.
  • Ein wiederholbarer Nachweis (curl oder HTTP) pro Fiche, datiert.
  • Eine testbare Behebung pro Fiche (der Abschlusstest ist ausformuliert).
  • Keine Feststellung = eingefügter Tool-Export.
  • Geheimnisse im Hauptteil maskiert, vollständig nur im Anhang.

7.3. Verteilung und Kohärenz — 10 Punkte​

  • Mindestens 2 P1, 2 P2, 2 P3 oder mehr.
  • Keine Notiz F oder H zu P1/P2 befördert.
  • Jede Abweichung CVSS → Priorität wird in einem Satz begründet.
  • Zwei Angriffsflächen = zwei Fiches (keine „globale SQLi").

7.4. Behebungsplan mit drei Horizonten — 20 Punkte​

  • Tabelle 3 / 6 / 12 Monate ausgefüllt (Maßnahmen, Aufwand, Verantwortlicher).
  • Die P1 leben in den 3 Monaten, nicht in den 12 Monaten.
  • Mindestens eine strukturelle Maßnahme (SQL-Parametrisierung überall, generische Zugriffskontrolle).
  • Ein Absatz pro Horizont, Konsequenzen bei Verschiebung.

7.5. Nachweise in den Anhängen — 10 Punkte​

  • Index Cxx-AAAA-MM-JJ-….
  • Datierte Screenshots, maskierte Bereiche.
  • Kein 40-seitiger Nmap-Export.
  • Extraktions-RoE sichtbar (z. B. --stop=3).

7.6. Vertretbare Priorisierung — 10 Punkte​

  • Sie können jedes P1 in fünfzehn Sekunden laut vortragen.
  • Keine Film-Drohung („eine Gruppe wird…").
  • Die Grenzen des Umfangs sind erkennbar (was nicht getestet wurde).

7.7. Klarheit und Darstellung — 5 Punkte​

  • 20 bis 30 Seiten.
  • Inhaltsverzeichnis, stabile Fiche-Nummern.
  • Eine einheitliche Stimme, korrektes Deutsch, kein „!!!".
  • Deckblatt, Klassifizierung, Verteiler.

Abgabeschwelle. 80 / 100 bei der Selbstbewertung, sonst exportieren Sie nicht. Der Korrektor verwendet dasselbe Raster.


8. Drei Sitzungen, dann Abgabe​

  1. Entscheidung (2 Std.). Sechs Titel, sechs Prioritäten. Wenn die P1 „nginx" und „Jira-Kommentar" sind, fangen Sie noch einmal an.
  2. Verfassen (5 Std.). Reihenfolge: Feststellungen → Überblick → Plan → Umfang → Zusammenfassung. Anhänge zeitgleich mit jeder Fiche.
  3. Korrekturlesen (2 Std.). Zusammenfassung jemandem außerhalb des Kurses vorlesen. P1-Begründungen zeitgemessen. PDF 20–30 Seiten.

Fallen. Ein PDF mit 18 Seiten ohne Fiches; sechs P1, um „seriös zu wirken"; zuerst geschriebene Zusammenfassung; Screenshot ohne curl; Plan, der „die Schwachstellen korrigieren" wiederholt; Notizen aus einem echten Bug-Bounty.

PDF-Export

pandoc rapport-nordik.md -o rapport-nordik-commerce.pdf --toc. Eine curl-Zeile, die mitten in einem Anführungszeichen abgeschnitten wird, wird zu einem falschen Nachweis.

[ ] PDF 20–30 Seiten, Benennung rapport-nordik-commerce.pdf
[ ] Ordner preuves/ (eine Datei pro Feststellung)
[ ] Selbstbewertung ≥ 80
[ ] Kein Ziel außerhalb des Labs / außerhalb des simulierten Auftrags
[ ] Kein Klartext-Geheimnis in der Abgabe-E-Mail

Das Praxisprojekt 3 in Woche 14 bewertet dieses Liefergut. Was Sie heute beginnen, ist bereits Gegenstand der Bewertung.


Was Sie aus diesem Workshop mitnehmen​

Ein Gerüst, das Sie in einem echten Auftrag wiederverwenden — die sechs Teile ändern sich nicht, nur die Fakten ändern sich. Eine Priorisierungsdisziplin: zwei vertretbare P1, keine Sirene. Ein Plan, den jemand ein Jahr lang durchhalten kann. Das Raster des Korrektors, früh genug verwendet, damit das PDF keine Überraschung ist. Der Bericht ist das Produkt; Sie haben ihn gerade hergestellt.