
Implémentation BOF et Python3 d'une technique pour délier 445/tcp sur Windows via des interactions SCM
Une technique pour dissocier et réassocier le port 445/tcp sur Windows sans charger de pilote, charger un module dans LSASS, ni redémarrer la machine cible. Implémentée pour alléger la charge des relais NTLM basés sur SMB lors d'opérations via un C2. L'analyse technique de la technique est discutée plus en détail lors de la présentation Relay Your Heart Away: An OPSEC Concious Approach to 445 Takeover à x33fcon.
Les PoC sont écrits à la fois en Python et au format BOF. Les deux utilisent RPC sur TCP (ncacn_ip_tcp) comme transport lorsqu'ils ciblent des machines distantes.
Veuillez consulter la section Utilisation opérationnelle du billet de blog associé pour un aperçu des considérations. Les points clés incluent :
srvnet et voir s'il existe d'autres services dépendants à prendre en compte.ncacn_ip_tcp ou ncacn_np comme transport pour le RPC. S'il utilise ce dernier (named pipes), vous ne pourrez pas communiquer à distance avec la cible pour la réactiver.Créez un environnement virtuel Python et installez impacket avec 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