enum/SKILL.md
Active service enumeration, port scanning, and directory busting for penetration testing. Use when: user asks to scan ports, enumerate services, bust directories on web servers, fingerprint services, find open ports, probe a target for running services, scan a subnet, or enumerate SMB/FTP/HTTP services. NOT for: passive recon (use recon skill), vulnerability analysis (use vuln skill), or exploitation (use exploit skill). This is the active scanning phase — packets WILL be sent to target.
npx skillsauth add duriandurino/openclawrino enumInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Active scanning and service enumeration. This is the phase where you touch the target — expect IDS/alerts.
✅ USE this skill when:
❌ DON'T use this skill when:
Active scanning generates network traffic and may trigger IDS/IPS alerts. Confirm scope authorization before running any scan.
Always prefer the standardized wrappers under scripts/ before building custom scans.
For a likely Windows host or generic internal workstation/server:
python3 scripts/orchestration/run_enum_profile.py \
--profile enum-windows-host \
--target <TARGET> \
--engagement <target-name>
scripts/enum/ports/scan_ports_fast.sh --target <TARGET> --engagement <target-name>
scripts/enum/ports/scan_ports_service.sh --target <TARGET> --engagement <target-name>
scripts/enum/web/enum_web_basic.sh --target <TARGET> --engagement <target-name> --safe
scripts/enum/smb/enum_smb_basic.sh --target <TARGET> --engagement <target-name> --safe
scripts/enum/rdp/rdp_probe.sh --target <TARGET> --engagement <target-name>
scripts/enum/winrm/winrm_probe.sh --target <TARGET> --engagement <target-name>
Use manual commands when the wrappers do not fit the service mix or you need deeper coverage:
# ARP scan / discovery
sudo nmap -sn 192.168.1.0/24
# Full manual service scan
nmap -sV -sC -p- <TARGET>
# Aggressive focused follow-up
nmap -sV -sC -A -p <OPEN_PORTS> <TARGET>
# Top ports (fast)
nmap --top-ports 100 -sV <TARGET>
# All ports (thorough)
nmap -p- -sV <TARGET>
# Specific ports
nmap -p 21,22,80,443,8080 -sV <TARGET>
# UDP scan (slow, use carefully)
nmap -sU --top-ports 20 <TARGET>
# Version detection
nmap -sV --version-intensity 5 <TARGET>
# Default scripts
nmap -sC <TARGET>
# Aggressive (OS detect + scripts + traceroute)
nmap -A <TARGET>
# Slow scan (avoid detection)
nmap -sS -T2 --max-rate 10 <TARGET>
# Fragmented packets
nmap -f -sV <TARGET>
# Decoy scan
nmap -D RND:5 -sV <TARGET>
# All formats
nmap -oA scan_results <TARGET>
# Grepable (for parsing)
nmap -oG scan_results.gnmap <TARGET>
# XML (for tooling)
nmap -oX scan_results.xml <TARGET>
# gobuster (common wordlist)
gobuster dir -u http://<TARGET>/ -w /usr/share/wordlists/dirb/common.txt
# gobuster with extensions
gobuster dir -u http://<TARGET>/ -w /usr/share/wordlists/dirb/common.txt -x php,html,txt
# feroxbuster (recursive)
feroxbuster -u http://<TARGET>/ -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt
# ffuf (virtual host fuzzing)
ffuf -u http://<FUZZ>.target.local/ -H "Host: FUZZ.target.local" -w /usr/share/wordlists/SecLists/Discovery/DNS/subdomains-top1million-5000.txt
# Basic recon
nmap -sV -p 80,443 --script http-enum,http-title,http-headers <TARGET>
# Technology fingerprint
whatweb http://<TARGET>
# Nikto scan
nikto -h http://<TARGET>
# List shares
smbclient -L //<TARGET> -N
# Enumerate with enum4linux
enum4linux -a <TARGET>
# Check anonymous access
smbclient //<TARGET>/anonymous -N
# Check anonymous login
ftp <TARGET>
# Try: anonymous / anonymous
# Nmap FTP scripts
nmap -p 21 --script ftp-anon,ftp-bounce,ftp-syst <TARGET>
# Banner grab
nc <TARGET> 22
# Nmap SSH scripts
nmap -p 22 --script ssh-auth-methods,ssh-hostkey <TARGET>
Save all scan results for the vuln analysis phase:
mkdir -p engagements/<target>/enum/
nmap -oA engagements/<target>/enum/enum-<target>-$(date +%Y%m%d) <TARGET>
Document findings in engagements/<target>/enum/ following the workspace engagement structure. The orchestrator will specify the target name. Preserve original filenames. NEVER create ad-hoc directories.
testing
Vulnerability analysis and CVE matching for penetration testing. Use when: user asks to check for vulnerabilities, match CVEs against service versions, analyze scan results for weaknesses, research exploitability, assess risk of discovered services, or identify known vulnerabilities. This is the analysis phase — no exploitation yet. NOT for: active scanning (use enum skill), exploitation (use exploit skill), or post-exploitation (use post skill).
development
Methodology and decision framework for the penetration testing vulnerability phase. Use when: validating scanner output, distinguishing confirmed vulnerabilities from hypotheses, explaining CVE/CWE/CVSS, prioritizing findings with KEV/EPSS/business context, guiding vuln-analysis workflow, or reinforcing evidence-backed reporting during the vulnerability phase. NOT for: initial recon or active enumeration, hands-on exploitation, post-exploitation, or replacing the specialized vuln skill's concrete checks.
development
Great slides need two things: content worth presenting and design worth looking at. #1 on DeepResearch Bench (Feb 2026) — CellCog researches and fills content mindfully from minimal prompts, no filler. State-of-the-art PDF generation for presentations, pitch decks, keynotes, and slideshows you can present as-is. Requires cellcog skill for SDK. If cellcog is unavailable, use gog slides as fallback (Google Workspace).
development
Methodology and quality framework for the penetration testing report phase. Use when: writing or QA-ing pentest reports, improving executive and technical readability, enforcing evidence completeness, adding remediation and retest guidance, including cleanup/restoration and residual risk, or securing report packaging and delivery. NOT for: running phase-specific testing tasks or replacing the specialized reporting implementation/publishing workflow.