
BOF- und Python3-Implementierung einer Technik zum Entbinden von 445/tcp unter Windows über SCM-Interaktionen
Eine Technik, um 445/tcp unter Windows zu entkoppeln und wieder zu koppeln, ohne einen Treiber zu laden, ein Modul in LSASS zu laden oder den Zielcomputer neu zu starten. Implementiert, um die Last von SMB-basierten NTLM-Relays während des Betriebs über C2 zu verringern. Die technische Analyse der Technik wird im Rahmen des Vortrags Relay Your Heart Away: An OPSEC Concious Approach to 445 Takeover bei x33fcon ausführlicher besprochen.
PoCs sind sowohl in Python als auch im BOF-Format geschrieben. Beide verwenden RPC über TCP (ncacn_ip_tcp) als Transport, wenn sie auf entfernte Maschinen abzielen.
Bitte beachten Sie den Abschnitt Operations Usage des zugehörigen Blogbeitrags für einen Überblick über die Überlegungen. Die wichtigsten Punkte sind:
srvnet ausgehend aufzählen und prüfen, ob es weitere abhängige Dienste zu berücksichtigen gibt.ncacn_ip_tcp oder ncacn_np als Transport für RPC verwendet. Wenn es Letzteres (Named Pipes) verwendet, können Sie nicht remote mit dem Ziel kommunizieren, um es wieder zu aktivieren.Erstellen Sie eine virtuelle Python-Umgebung und installieren Sie impacket per pip install.
git clone https://github.com/zyn3rgy/smbtakeover.gitcd smbtakeoverpython3 -m virtualenv venvsource venv/bin/activatepython3 -m pip install impacketpython3 smbtakeover.py -hpython3 smbtakeover.py atlas.lab/josh:[email protected] checkpython3 smbtakeover.py atlas.lab/josh:[email protected] stoppython3 smbtakeover.py atlas.lab/josh:[email protected] startbof_smbtakeover localhost checkbof_smbtakeover 10.0.0.21 stopbof_smbtakeover localhost start