Einführung und Kali — Konzepte
Bevor Sie auch nur ein Werkzeug starten, müssen zwei Dinge geklärt sein: die Denkweise des Angreifers und der Rahmen. Ohne den Rahmen (ein isoliertes Labor) nützt die Denkweise nichts: Man landet vor Gericht. Ohne die Denkweise nützt der Rahmen ebenfalls nichts: Man tippt Befehle aufs Geratewohl und nichts fällt.
Alles, was hier vermittelt wird, gilt ausschließlich für Maschinen, die Ihnen gehören, oder für die Sie eine schriftliche Genehmigung haben (RoE, Vertrag, Bug Bounty). Eine Website zu scannen, für die Sie keine Erlaubnis haben, ist in den meisten Rechtsordnungen bereits eine Straftat. Der Kurs bringt Ihnen das Angreifen bei. Das Gesetz sagt Ihnen, wo.
Was Sie nach dieser Lektion können werden
- Mit eigenen Worten erklären, was ein Penetrationstest ist, und warum es kein Audit ist.
- Schwachstelle, Exploit und Impact unterscheiden — die drei Wörter, die jeder durcheinanderbringt.
- Eine Angreiferhaltung einnehmen: vom Ziel ausgehen, nicht vom Werkzeug.
- Die großen Phasen eines Angriffs benennen (die berühmte Kill Chain), um jederzeit zu wissen, wo man steht.
- Verstehen, warum es Kali Linux gibt und was es Ihnen konkret bringt.
1. Warum es diesen Beruf gibt
Ein Unternehmen hat eine Anwendung, ein Netzwerk, eine Cloud-Infrastruktur aufgebaut. Es glaubt, dass diese sicher ist, weil niemand versucht hat, sie zu knacken. Genau deshalb bezahlt man Sie: um zu versuchen, sie zu knacken, bevor es ein echter Angreifer tut.
Der Penetrationstester ist der legale Einbrecher. Der Kunde gibt Ihnen den Schlüssel, bittet Sie, durchs Fenster, den Kamin, den Briefkasten, den Nachbarssohn, die Putzfrau einzudringen — und danach alles zu berichten, mit Beweisen, damit er die Lücken schließen kann.
Ein Pentest ist nicht wertvoll wegen der Anzahl gefundener Schwachstellen. Er ist wertvoll wegen:
- Der Beweise, die Sie mitbringen (Screenshots, Logs, extrahierte Dateien).
- Der Reproduzierbarkeit: Der Kunde muss den Schritt nach der Behebung wiederholen können.
- Der Empfehlungen: was am Montagmorgen getan wird, um die Lücke zu schließen.
Ein Bericht ohne Beweis ist Klatsch. Klatsch schließt kein Ticket.
Definition — eine Shell, ein Wort, das wir zehnmal pro Lektion verwenden werden
Eine Shell ist eine Schnittstelle, die Befehle entgegennimmt und vom System ausführen lässt. Wenn Sie auf Ihrem Rechner ein Terminal öffnen und ls eintippen, befinden Sie sich in einer Shell.
Für einen Angreifer bedeutet „eine Shell erlangen“ auf einer entfernten Maschine genau eines: Befehle auf dieser Maschine eingeben können, als säße man davor. Das ist der erste echte Meilenstein eines Angriffs. Solange man keine Shell hat, hat man nichts. Sobald man sie hat, ist alles Weitere denkbar: Dateien ansehen, versuchen, Rechte auszuweiten, zu einer anderen Maschine springen.
Zwei Formen kommen im gesamten Kurs immer wieder vor. Die Bind Shell, bei der das Ziel einen Port öffnet und auf eine Verbindung wartet: einfach, aber laut, eine Firewall sieht sie. Die Reverse Shell, bei der sich das Ziel zu Ihnen von innen verbindet: in der Praxis viel häufiger, weil die meisten Firewalls ausgehenden Verkehr ohne genaues Hinsehen durchlassen.
2. Die drei Vettern, die ständig verwechselt werden
| Beruf | Was man tut | Die Frage, die beantwortet wird |
|---|---|---|
| Audit | Man liest die Dokumentation, führt Interviews, prüft Konfigurationen. | Entspricht es der Richtlinie / der Norm? |
| Pentest | Man greift an, in einem begrenzten Umfang, in begrenzter Zeit. | Kann man eindringen, und wie weit? |
| Red Team | Man simuliert einen echten Angreifer, unauffällig, mit geschäftlichen Zielen. | Wie lange dauert es, bis wir entdeckt werden, und wären wir es geworden? |
Das Audit läuft über das Interview. Der Pentest läuft über den Exploit. Das Red Team läuft über die Umgehung von Abwehrmaßnahmen — und oft über Social Engineering.
Sie lernen den Pentest, mit regelmäßigen Ausblicken auf das Red Team in den fortgeschrittenen Modulen (8 bis 11).
Definition — das Purple Team, und warum das Wort überall auftaucht
Red Team und Blue Team bezeichnen seit Langem Angriff und Verteidigung. Das Purple Team ist kein drittes Team: Es ist der Moment, in dem beide zusammenarbeiten. Konkret führt der Angreifer eine Technik aus und informiert die Verteidigung; diese prüft, ob ihr SIEM sie erkannt hat. Falls nicht, werden die Regeln angepasst; man wiederholt den Vorgang. Man wiederholt ihn für jede Technik aus dem MITRE-ATT&CK-Katalog.
Der Nutzen ist zweifach. Die Verteidigung lernt, was sie heute durchdringt und wie sie es morgen erkennt. Der Angreifer lernt, welche Techniken laut sind und welche durchgehen — unverzichtbar für eine künftige verdeckte Mission. Ein echtes zweiwöchiges Purple Team ist mehr wert als ein jährlicher Pentest, dessen Bericht erst nach der Abreise der Berater erscheint.
Vertiefung — Audit und Pentest ergänzen sich, sie konkurrieren nicht
Ein ISO-27001-Audit prüft, ob die Passwortrichtlinie schriftlich festgelegt und anwendbar ist. Es sagt nichts über ihre tatsächliche Robustheit aus: Wenn das Dokument „mindestens 12 Zeichen“ vorschreibt, aber die Hälfte des Bestands noch acht toleriert, wird der Auditor das nicht bemerken.
Genau hier ergänzt der Pentest: Er versucht, diese Richtlinie mit echten Passwortangriffen zu brechen, und berichtet die Quote der geknackten Konten. Beide Vorgehensweisen stützen sich gegenseitig — ein Audit ohne Pentest kann eine Organisation zertifizieren, die trivial zu kompromittieren bleibt, und ein Pentest ohne Audit findet zehn Lücken, ohne zu erklären, warum sie existieren.
3. Schwachstelle, Exploit, Impact — hören Sie auf, sie zu verwechseln
Drei Wörter. Drei verschiedene Dinge. Die drei zu verwechseln bedeutet, einen Bericht zu schreiben, den der Kunde wegwirft.
Schwachstelle: eine Schwäche. Ein Stück Code, eine Konfiguration, ein Standardpasswort. An sich bewirkt sie nichts.
Exploit: die konkrete Handlung, die die Schwäche in Zugriff verwandelt. Der Code, der Befehl, der Klick, der die Sache beweist.
Impact: die geschäftliche Konsequenz des Exploits. Das ist niemals ein CVSS-Score. Das ist „damit habe ich die komplette Kundendatenbank gelesen“ oder „damit lege ich die Produktion drei Tage lahm“.
Ein Beispiel, um die Unterscheidung einzuprägen:
- Schwachstelle: Der Webserver läuft mit einer Version, die für
CVE-2021-41773(Apache Path Traversal) verwundbar ist. - Exploit: Ich starte
curlmit einem traversierenden Pfad, ich erhalte/etc/passwd. - Impact: Die Zugangsdaten eines Dienstkontos lagen in einer
.env-Datei desselben Verzeichnisses, ich habe die Verbindung zur Produktionsdatenbank erlangt.
Der Kunde interessiert sich nicht für die CVE. Er merkt sich die Datenbank. Das kommt an die Spitze des Berichts.
Definition — CVE, was diese Nummer ist und was nicht
CVE, Common Vulnerabilities and Exposures, ist ein öffentlicher Katalog, der vom MITRE in den USA geführt wird. Jede öffentlich gemachte Schwachstelle erhält einen Bezeichner der Form CVE-2021-41773: Der Jahrgang ist der der Vergabe, nicht der Entdeckung. Der Katalog benennt die Lücke, er behebt sie nicht.
Drei Fallen, die Anfänger etwas kosten. Eine CVE bedeutet nicht, dass ein öffentlicher Exploit existiert: Für etwa ein Drittel der CVEs wurde nie Exploit-Code veröffentlicht. Nicht alle CVEs sind schwerwiegend: Viele betreffen nur seltene Konfigurationen. Und vor allem: Eine CVE einer Komponente betrifft nicht zwangsläufig Ihre Installation — ist die fehlerhafte Funktion nicht aktiviert, ist die verwundbare Version harmlos. Das ist als Erstes zu zeigen, bevor man „kritisch“ in einen Bericht schreibt.
Definition — CVSS, der Schweregrad-Score und seine Grenzen
CVSS, Common Vulnerability Scoring System, vergibt an eine Schwachstelle einen Score von 0 bis 10. Er aggregiert den potenziellen Impact — Vertraulichkeit, Integrität, Verfügbarkeit — und die Ausnutzbarkeit — über das Netzwerk oder nur lokal zugänglich, mit oder ohne Authentifizierung, mit oder ohne Interaktion des Nutzers.
Dieser Score ist nützlich, um einen Stapel Tickets zu sortieren. Er ist nutzlos für einen Pentest-Bericht, und zwar aus folgendem Grund. CVSS ignoriert Ihren Kontext. Eine mit 9,8 bewertete Lücke auf einem isolierten Server ohne sensible Daten ist weniger dringend als eine mit 6,5 bewertete Lücke auf dem Gateway, das Ihre Produktion schützt. Der Bericht muss sagen „mit dieser Lücke erlangt ein Angreifer Zugriff auf diese Daten“, nicht „CVSS-Score 9,8“. Der Score hilft dem Kunden, zwischen zwei ähnlichen Lücken zu entscheiden; er ersetzt niemals Ihre Analyse.
4. Die Denkweise des Angreifers
Der Systemingenieur geht von der Maschine aus und fragt sich: „Was lasse ich laufen?“. Der Angreifer geht vom selben Punkt aus und fragt sich: „Was ragt heraus?“.
Die fünf Reflexe, die den Unterschied ausmachen:
- Immer betrachten, was lauscht. Ein offener Port ist eine Tür. Eine Tür ist ein Dienst. Ein Dienst ist eine Version. Eine Version ist eine Geschichte bekannter Fehler.
- Immer betrachten, was spricht. Banner, HTTP-Header, Fehlermeldungen — sie erzählen alles.
- Immer betrachten, was vergessen wurde. Eine
.git-Datei, einbackup.sql, einerobots.txt, ein Screenshot, der in einem öffentlichen Ordner liegen geblieben ist. Nachlässigkeit ist häufiger als eine Zero-Day-Schwachstelle. - Immer verketten. Eine einzelne Lücke ist selten kritisch. Zwei mittelschwere, verkettete Lücken sind eine Katastrophe. Suchen Sie die Kette, nicht die Lücke.
- Immer am Erfolg zweifeln. Wenn es beim ersten Versuch klappt, ist es vielleicht eine Falle (Honeypot). Prüfen Sie, ob die Maschine, die Sie in der Hand haben, wirklich die ist, für die Sie sie halten.
„Was der Entwickler zu prüfen vergessen hat, ist genau da, wo ich eindringe.“
Definition — die drei Zustände eines Ports, weil wir sie in jedem Bericht lesen werden
Ein Port ist nicht „offen oder geschlossen“: Er hat drei Zustände, und die letzten beiden zu verwechseln lässt Sie echte Ziele übersehen.
Open: Etwas lauscht und antwortet. Das ist es, wonach wir suchen.
Closed: Die Maschine existiert, sie hat geantwortet, aber kein Dienst wartet auf genau diesem Port. Das Ziel lebt, und der Port ist einfach ungenutzt.
Filtered: Die Maschine hat nicht geantwortet — oder nur mit einer Fehlermeldung —, weil eine Firewall das Paket vorher abgefangen hat. Sie wissen nicht, ob der Port offen oder geschlossen ist. Das ist wertvoll: Es zeigt, dass es eine Filterung gibt, der Dienst also vermutlich sensibel und absichtlich geschützt ist.
Nmap fügt zwei seltenere Nuancen hinzu. Unfiltered: Der Port antwortet, aber Nmap kann keine Schlussfolgerung ziehen; das kommt bei bestimmten Scan-Typen häufig vor. Open|filtered: Nmap ist unsicher, oft bei UDP, wo eine ausbleibende Antwort beides bedeuten kann. Sie werden lernen, diese Zustände in Modul 4 zu lesen.
Definition — root, Administrator, SYSTEM: was man am Ende will
Auf Unix-Systemen — Linux, macOS, BSD — heißt das allmächtige Konto root. Es hat die numerische Kennung null. Es liest und schreibt alle Dateien, beendet alle Prozesse, lädt und entlädt Kernel-Treiber.
Unter Windows ist die Hierarchie feiner. Administrator ist das historische Administratorkonto, das des Desktops. Darüber, für den Nutzer unsichtbar, thront SYSTEM — die Identität, unter der die Windows-Dienste selbst laufen, einschließlich derer, die Authentifizierung und Sicherheit verwalten. Ein Pentester bevorzugt SYSTEM gegenüber Administrator: SYSTEM kann die Passwortdatenbank (SAM) lesen, die selbst Administrator nicht ohne Umwege öffnen kann. Aus diesem Grund zielt die Demonstration des Moduls direkt auf eine SYSTEM-Shell.
Eine dritte Ebene existiert auf Rechnern, die einer Windows-Domäne angehören: Domain Admin. Domain Admin zu kompromittieren entspricht dem Besitz des gesamten Verzeichnisses — also im Allgemeinen des gesamten Maschinenparks.
5. Die Kill Chain — die Landkarte, um sich nie zu verlieren
Ein Angriff ist kein einzelner genialer Coup. Er ist eine Abfolge von Schritten. Die klassische Sequenz, in sieben Phasen:
- Reconnaissance — sich über das Ziel informieren, ohne es zu berühren (OSINT). Modul 3.
- Aktive Reconnaissance — Portscan, Aufzählung von Diensten. Modul 4.
- Suche nach Schwachstellen — die gesehenen Versionen mit bekannten CVEs abgleichen. Modul 5.
- Initiale Exploitation — die erste Shell erlangen. Module 7 und 8.
- Rechteausweitung — von einem beliebigen Konto zu
rootoderSYSTEMgelangen. Modul 9. - Laterale Bewegung — von Maschine zu Maschine springen, Daten exfiltrieren. Modul 10.
- Bericht — Beweise, Empfehlungen, Zeitachse übergeben. Modul 12.
Jedes Modul dieses Kurses beantwortet eine Phase. Wenn Sie sich während eines Einsatzes verloren fühlen, kehren Sie zu dieser Liste zurück: Sie sagt Ihnen, wo Sie stehen und was fehlt.
Vertiefung — woher die Kill Chain stammt, und warum MITRE ATT&CK sie abgelöst hat
Die Cyber Kill Chain wurde 2011 von Lockheed Martin formalisiert. Sie übertrug auf die digitale Welt das militärische Denken, das bereits auf die Zerstörung eines physischen Ziels angewandt wurde: Find, Fix, Track, Target, Engage, Assess. Ihre Stärke ist die Didaktik — sie ist linear, in einer Minute einprägsam —, aber ihre Schwäche zeigte sich in der Praxis: Ein echter Angriff ist nicht linear. Er läuft in Schleifen. Der Angreifer kehrt nach einem ersten Zugriff zur Reconnaissance zurück, wechselt die Achse, gibt eine Kette auf, um eine andere zu versuchen.
MITRE ATT&CK, erstmals 2013 veröffentlicht, ersetzt die Linie durch eine Matrix. Die Spalten sind die großen Kategorien — Initial Access, Execution, Persistence, Privilege Escalation, Defense Evasion, Credential Access, Discovery, Lateral Movement, Collection, Command and Control, Exfiltration, Impact. Jede Spalte enthält mehrere konkrete Techniken, jede mit einem eindeutigen Bezeichner der Form T1078. Diese Granularität erlaubt einem Verteidiger zu sagen: „Für diesen Bezeichner habe ich Regeln, für jenen keine.“
In diesem Kurs gehen wir von der Kill Chain aus, weil sie als roter Faden dient, aber ab Modul 4 taucht das ATT&CK-Vokabular auf. Ein guter Pentester beherrscht beide.
6. Warum Kali, und nicht Ubuntu
Kali Linux ist eine Debian-Distribution vollgepackt mit offensiven Werkzeugen. Man hätte sie alle von Hand auf einem Ubuntu installieren können. Wir tun das aus drei Gründen nicht:
- Alles ist da, sofort. Nmap, Metasploit, Burp Suite, John the Ripper, Hashcat, Wireshark, Bloodhound, Impacket — über 600 vorinstallierte und aktuelle Werkzeuge.
- Die Updates gehen in die richtige Richtung. Der Kanal
kali-rollingliefert die aktuellen offensiven Versionen. Auf einem Ubuntu LTS kann Nmap ein Jahr Rückstand bei den NSE-Skripten haben. - Die Community weiß, was Sie tun. Ein Problem? Sie suchen „kali nmap segfault“ und finden die Antwort in dreißig Sekunden. Auf einer generischen Distribution versteht niemand Ihr Problem.
Kali ist nicht „ein Betriebssystem für Hacker“. Es ist ein Werkzeugkasten mit einem Betriebssystem drumherum. Sie speichern dort nichts, öffnen es nicht dem öffentlichen Netzwerk, und Sie stellen es aus einem Snapshot wieder her, sobald es sich seltsam verhält.
Definition — eine Rolling-Distribution, und warum das das Leben des Testers verändert
Eine Rolling-Distribution, wörtlich „die rollt“, veröffentlicht Updates fortlaufend, ohne eine feste, nummerierte Version. Sie aktualisieren an einem Montag, die Pakete sind im Zustand dieses Montags; Sie aktualisieren zwei Monate später, sie haben sich weiterentwickelt. Es gibt kein Kali 2023.4, das man für zwei Jahre installiert, bevor man alles neu aufsetzt — es gibt einen permanenten Fluss.
Im Gegensatz dazu veröffentlicht Ubuntu LTS alle zwei Jahre eine Version und bewegt sich darauf kaum noch, außer für zurückportierte Sicherheitskorrekturen. Das ist eine sinnvolle Wahl für einen Produktionsserver, wo Stabilität Vorrang hat. Für einen Angreifer ist es ein Nachteil: Eine letzte Woche zu Metasploit hinzugefügte Exploit-Signatur erreicht Ihr Ubuntu erst nach einem Rückportierungszyklus, oft nie.
Der Gegenpart des Rolling-Modells ist real: Ein Update kann ein Werkzeug von einem Tag auf den anderen zerstören. Deshalb nimmt man nach jedem erfolgreichen Update einen VirtualBox-Snapshot auf und kehrt erst dorthin zurück, nachdem man die neue Version in einer Ausweichumgebung getestet hat.
Definition — ein Snapshot einer virtuellen Maschine
Ein Snapshot, oder Momentaufnahme, ist eine Aufzeichnung des vollständigen Zustands einer virtuellen Maschine zu einem bestimmten Zeitpunkt: Festplatteninhalt, Arbeitsspeicherinhalt, simulierte Hardwarekonfiguration. VirtualBox und VMware speichern diesen Zustand neben der virtuellen Hauptfestplatte, in Form einer differenziellen Datei — nur die seit der Aufnahme geänderten Blöcke werden kopiert, was den Vorgang selbst für eine VM mit mehreren Dutzend Gigabyte schnell macht.
Zwei Einsatzzwecke im Pentest. Der erste ist defensiv: Bevor man ein zweifelhaftes Werkzeug installiert oder eine verdächtige Binärdatei ausführt, nimmt man einen Snapshot auf; verhält sich die VM schlecht, stellt ein Klick den vorherigen Zustand wieder her. Der zweite ist experimentell: Auf der Zielmaschine des Labors nimmt man vor der ersten Exploitation einen base-vulnerable-Snapshot auf. Man kann dann denselben Angriff beliebig oft wiederholen, was unverzichtbar ist, um eine Behebung zu überprüfen oder jemand anderen auszubilden. Ohne Snapshot lässt sich ein zerstörtes Ziel nicht erneut spielen.
7. Die Verwechslungen, die Zeit kosten
Korrigieren Sie sie jetzt, bevor sie Sie in Woche 5 einholen.
| Man sagt oft… | Der richtige Begriff |
|---|---|
| „Ich habe eine CVE gefunden“ | Eine CVE ist ein Bezeichner. Man findet eine Schwachstelle, die vielleicht einer CVE entspricht. |
| „Ich habe es gehackt“ | Nein, Sie haben eine Schwachstelle ausgenutzt. Das Wort hacken sagt nichts Präzises aus. |
| „Das ist Schadcode“ | Ein Exploit ist keine Malware. Ein Exploit löst eine Lücke aus. Eine Malware tut einmal, nachdem sie installiert ist, etwas Schädliches. |
| „Nmap hat mir eine Lücke gefunden“ | Nein, Nmap sieht Ports und Versionen. Sie stellen die Verbindung zur Schwachstelle her. |
| „Der Port ist geschlossen“ | Ein Port kann closed (der Dienst sagt nein), filtered (eine Firewall fängt ab) oder open (jemand lauscht) sein. Drei Zustände, drei Geschichten. |
| „Metasploit hat die Maschine gehackt“ | Metasploit liefert einen Exploit und verwaltet die Sitzung. Es denkt nicht für Sie. |
8. Was Sie sich merken sollten
- Ein Pentest ist abgesteckt, autorisiert, gemessen. Ohne diesen Rahmen ist es kein Pentest mehr, sondern eine Straftat.
- Der Wert eines Pentests liegt in den Beweisen und den Empfehlungen, nicht in der Anzahl der Funde.
- Schwachstelle, Exploit, Impact: drei Wörter, drei Dinge. Verwechseln Sie sie nicht mehr.
- Der Angreifer betrachtet was herausragt, was spricht, was vergessen wurde, und er verkettet.
- Die Kill Chain sagt Ihnen immer, wo Sie stehen.
- Kali ist Ihr Werkzeugkasten. Nicht Ihr Schreibtisch, nicht Ihr Tresor.
Nächste Lektion: Wir installieren Kali, starten den ersten Scan und beobachten, wie eine Maschine fällt — in einem doppelt verschlossenen Labor.