Built-in Help: All commands and subcommands include automatically generated help pages accessible with
-h, --help, /h, /?, or -?Basic Syntax
Global Options
Common Global Options
Common Global Options
These options are available across most SharpSCCM commands:
| Option | Description | Example |
|---|---|---|
-sms, --sms-provider | SMS Provider server | -sms SCCM01.corp.local |
-mp, --management-point | Management Point server | -mp SCCM01.corp.local |
-sc, --site-code | Three-character site code | -sc PS1 |
--debug | Enable debug output | --debug |
--no-banner | Suppress banner output | --no-banner |
-?, -h, --help | Display help information | --help |
Output Control Options
Output Control Options
Control how SharpSCCM displays information:
| Option | Description | Usage |
|---|---|---|
-v, --verbose | Display all properties | Detailed output |
-c, --count | Return count of results | Numerical summary |
-z, --dry-run | Show queries without execution | Testing syntax |
-j, --json | JSON output format | Machine-readable output |
-o, --output-file | Save output to file | Results archival |
Connection Options
Connection Options
Configure how SharpSCCM connects to SCCM infrastructure:
| Option | Description | Notes |
|---|---|---|
-sms | SMS Provider address | Can be IP, FQDN, or NetBIOS name |
-mp | Management Point address | Usually same as SMS Provider |
-sc | Site code | Auto-detected if not specified |
-n, --wmi-namespace | WMI namespace | Custom namespace targeting |
Command Categories
- Information Gathering
- Credential Extraction
- Lateral Movement
- Infrastructure Management
- Advanced Operations
get Command Group - Extract information from SCCM infrastructure-n, --name: Filter by name pattern-p, --properties: Specify properties to retrieve-w, --where-condition: Custom WQL WHERE clause-o, --order-by: Sort results
Site Configuration
Automatic Site Discovery
1
Local Client Configuration
SharpSCCM first attempts to read local SCCM client configuration:This reads from the local WMI repository at
\\127.0.0.1\root\CCM.2
Management Point Detection
If local configuration is available, SharpSCCM uses the current management point:
3
SMS Provider Location
The SMS Provider role may be hosted separately from management points. Use site discovery to identify it:
Manual Configuration
When Manual Configuration is Needed
When Manual Configuration is Needed
Scenarios requiring manual configuration:
- Non-domain joined systems
- SCCM client not installed
- Targeting different sites
- SMS Provider on separate server
- Cross-domain operations
Authentication & Permissions
- Authentication Methods
- Required Permissions
- Environment Targeting
Integrated Windows Authentication (Default)Computer Account AuthenticationCertificate-Based AuthenticationElevated Privileges
Common Usage Patterns
Basic Reconnaissance Workflow
Basic Reconnaissance Workflow
Step 1: Site DiscoveryStep 2: Administrative EnumerationStep 3: Asset DiscoveryStep 4: Configuration Analysis
Credential Harvesting Workflow
Credential Harvesting Workflow
Step 1: Local Credential ExtractionStep 2: Policy-Based ExtractionStep 3: Credential Validation
Lateral Movement Workflow
Lateral Movement Workflow
Step 1: Target IdentificationStep 2: Application DeploymentStep 3: Direct ExecutionStep 4: Cleanup
NTLM Coercion Workflow
NTLM Coercion Workflow
Step 1: Target AssessmentStep 2: Coercion ExecutionStep 3: Authentication Capture
Output Formats & Filtering
- Output Control
- Filtering & Querying
- Result Ordering
Standard OutputFile OutputQuiet Operations
Troubleshooting & Debugging
Connection Issues
Connection Issues
Symptoms: Connection failures, authentication errorsDiagnostic Commands:Common Solutions:
- Verify SCCM client is installed and functioning
- Check network connectivity to SMS Provider
- Validate user permissions and group membership
- Ensure proper site code and server names
Permission Errors
Permission Errors
Symptoms: Access denied, insufficient permissionsDiagnostic Approach:Resolution Steps:
- Add user to SMS Admins local group
- Assign appropriate SCCM security roles
- Use computer account for credential extraction
- Escalate privileges locally if needed
WQL Query Errors
WQL Query Errors
Symptoms: Invalid WQL syntax, query failuresTesting Approach:Best Practices:
- Use dry run to validate syntax
- Start with simple queries
- Reference WMI class documentation
- Escape special characters properly
Output Issues
Output Issues
Symptoms: No results, unexpected outputDebugging Commands:Analysis Steps:
- Verify query returned results with count option
- Check permissions for the queried objects
- Use verbose mode to see all available properties
- Review debug output for connection details
Best Practices
1
Start with Read-Only Operations
Begin reconnaissance with safe, read-only commands:
2
Use Dry Run for Testing
Test command syntax before execution:
3
Document Your Activities
Save output for analysis and documentation:
4
Clean Up After Operations
Remove any created artifacts:
5
Monitor for Detection
Be aware of potential detection points:
- SCCM audit logs
- Unusual WMI queries
- Administrative role usage
- Application deployment events
Tab Completion: SharpSCCM supports command-line tab completion with dotnet-suggest, but it’s disabled by default to avoid creating temporary files. See the command-line API documentation for more information.