Pivoting bezeichnet die Technik, ein bereits kompromittiertes System als Zwischenstation (Sprungpunkt) zu nutzen, um weitere, sonst nicht erreichbare Netzsegmente anzusprechen. So gelangt man von einem „Randsystem“ tiefer in ein Netzwerk.
Wie Metasploit pivotet
Ueber eine bestehende Meterpreter-Sitzung leitet Metasploit Verbindungen in das intern erreichbare Netz weiter. Zwei zentrale Werkzeuge dafuer:
- autoroute (bzw. das Modul
post/multi/manage/autoroute) traegt eine Route in die interne Routing-Tabelle von Metasploit ein, sodass weitere Module (Scanner, Exploits) den Verkehr automatisch durch die bestehende Sitzung ins interne Netz schicken. - portfwd richtet ueber die Meterpreter-Sitzung eine gezielte Portweiterleitung ein, sodass ein einzelner interner Dienst lokal auf dem Angreifer-Rechner erreichbar wird.
meterpreter > run autoroute -s 10.10.10.0/24
meterpreter > portfwd add -l 3389 -p 3389 -r 10.10.10.5
Der Meterpreter-Befehl pivot verwaltet zusaetzlich Pivot-Listener. Moderne Metasploit-Versionen unterstuetzen Pivoting ueber Sitzungen „out of the box“.
Stolpersteine
Aktionen, die eine Rueckverbindung aufbauen, funktionieren ueber ein Pivot nur, wenn
LHOSTundLPORTpassend gesetzt sind. Beim Aufwerten einer Shell scheitert die Kurzformsessions -udaher ueber ein Pivot – hier belegt man die Werte im Modulshell_to_meterpretervon Hand.
Typischer Ablauf
- Ein Randsystem kompromittieren und eine Meterpreter-Sitzung erhalten.
- Mit
autoroutedas interne Netz fuer weitere Module erreichbar machen. - Weitere Module (z. B. Scanner oder post-Module) gegen die nun erreichbaren internen Ziele ausfuehren, oder einzelne Dienste per
portfwdlokal verfuegbar machen.