Workspace Management
Organize and isolate scan data using ADscan workspaces
Workspaces in ADscan allow you to organize and isolate scan data for different domains, networks, or projects. Each workspace maintains its own credentials, enumeration data, and logs.
Overview
Workspaces are stored in ~/.adscan/workspaces/ and contain:
- Discovered credentials
- Enumeration results (users, computers, groups)
- BloodHound collection data
- Scan logs and output
- Configuration settings
Commands
workspace create
Create a new workspace.
Syntax:
workspace create <name>Example:
(ADscan) > workspace create client_audit_2024
✓ Workspace 'client_audit_2024' created
(ADscan:client_audit_2024) >Naming Guidelines:
- Use descriptive names (domain name, client, date)
- No spaces (use underscores or hyphens)
- Keep names short and memorable
workspace select
Switch to an existing workspace.
Syntax:
workspace select [name]Interactive Mode:
(ADscan) > workspace select
? Select workspace:
> client_audit_2024
htb_forest
lab_testingDirect Selection:
(ADscan) > workspace select htb_forest
✓ Switched to workspace 'htb_forest'
(ADscan:htb_forest) >workspace list
List all available workspaces.
Syntax:
workspace listExample Output:
(ADscan) > workspace list
Available Workspaces:
┌────────────────────┬─────────────────────┬───────────┐
│ Name │ Created │ Size │
├────────────────────┼─────────────────────┼───────────┤
│ client_audit_2024 │ 2024-01-15 09:30 │ 45 MB │
│ htb_forest │ 2024-01-10 14:22 │ 12 MB │
│ lab_testing │ 2024-01-08 11:15 │ 8 MB │
└────────────────────┴─────────────────────┴───────────┘workspace delete
Delete a workspace and all its data.
Syntax:
workspace delete <name>Example:
(ADscan) > workspace delete old_scan
⚠ This will permanently delete the workspace 'old_scan' and all its data
? Confirm deletion (y/n): y
✓ Workspace 'old_scan' deletedWarning: This action is irreversible. All data in the workspace will be permanently deleted.
workspace info
Display information about the current workspace.
Syntax:
workspace infoExample Output:
(ADscan:client_audit_2024) > workspace info
Workspace: client_audit_2024
───────────────────────────────────────────
Path: ~/.adscan/workspaces/client_audit_2024
Created: 2024-01-15 09:30:45
Size: 45 MB
Domain: corp.example.com
Credentials: 12 accounts
Users: 450 discovered
Computers: 125 discovered
BloodHound: Data collectedclear_all
Clear all data from the current workspace.
Syntax:
clear_allExample:
(ADscan:client_audit_2024) > clear_all
⚠ This will permanently delete all data in workspace 'client_audit_2024'
? Confirm deletion (y/n): y
✓ Workspace data cleared
# TODO: Add real output from 'clear_all' commandWarning: This action removes all enumeration data, credentials, logs, and BloodHound collections from the workspace. The workspace directory structure remains but is empty.
Destructive Operation
clear_all permanently deletes all data in the workspace including discovered credentials, enumeration results, and BloodHound collections. Always backup important data before using this command. This action cannot be undone.
Workspace Structure
Each workspace has the following structure:
~/.adscan/workspaces/<workspace_name>/
├── credentials.json # Discovered credentials
├── domain_info.json # Domain metadata
├── users.txt # Enumerated users
├── computers.txt # Enumerated computers
├── groups.txt # Enumerated groups
├── bloodhound/ # BloodHound data
│ ├── computers.json
│ ├── users.json
│ ├── groups.json
│ └── domains.json
├── shares/ # Share enumeration
│ └── accessible_shares.txt
├── passwords/ # Extracted passwords
│ └── found_passwords.txt
└── logs/ # Scan logs
├── enumeration.log
└── exploitation.logBest Practices
Naming Conventions
Choose meaningful workspace names:
# Good examples
workspace create acme_corp_jan2024
workspace create htb_forest
workspace create client_pentest_phase1
# Avoid
workspace create test
workspace create ws1
workspace create tempWorkspace Organization
- One workspace per domain - Keep domains isolated
- Use dates - Include date in name for time tracking
- Client names - Use client codes for confidentiality
Backup Strategy
Back up workspace directories manually using system tools:
# Manual backup using tar
tar -czf ~/backups/workspace_$(date +%Y%m%d).tar.gz ~/.adscan/workspaces/client_audit_2024/
# Or use rsync for incremental backups
rsync -av ~/.adscan/workspaces/client_audit_2024/ ~/backups/workspaces/Cleanup
Delete old workspaces to save disk space:
# List old workspaces
workspace list
# Delete completed assessments
workspace delete htb_forestWorkspace Permissions
Workspace files are stored with restrictive permissions:
- Directory:
700(rwx------) - Credentials:
600(rw-------) - Logs:
644(rw-r--r--)
This ensures sensitive data is protected from other users on the system.
Troubleshooting
"Workspace already exists"
(ADscan) > workspace create test
✗ Workspace 'test' already existsSolution: Choose a different name or delete the existing workspace.
"Workspace not found"
(ADscan) > workspace select nonexistent
✗ Workspace 'nonexistent' not foundSolution: Check available workspaces with workspace list.
"Permission denied"
✗ Permission denied: ~/.adscan/workspaces/testSolution: Ensure you have write permissions or run with sudo.
Related Commands
- Scanning Commands - Start scans within workspaces
Next Steps
After creating a workspace, proceed to: