mirror of
https://github.com/GoodOlClint/PSProxmoxVE.git
synced 2026-08-07 04:53:12 +00:00
b4754c72a0
- README: move Set-PveStorage to Storage section, Set-PveApiToken to Access section (were miscategorized under "Access — Groups & Domains") - CHANGELOG: add Changed section with 13 architectural improvements, expand Fixed section with all ConfirmImpact and credential fixes - SECURITY.md: add SecureString detail, Input Validation section, Dependabot mention, SkipCertificateCheck warning note - CLAUDE.md: update review system reference to scan-7 - findings.json: F050 resolved (URL encoding), F031 resolved (credentials) - REVIEW_REPORT.md: scan-7 report Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
52 lines
1.7 KiB
Markdown
52 lines
1.7 KiB
Markdown
# Security Policy
|
|
|
|
## Supported Versions
|
|
|
|
| Version | Supported |
|
|
|---|---|
|
|
| 0.1.x (current) | Yes |
|
|
|
|
## Reporting a Vulnerability
|
|
|
|
If you discover a security vulnerability in PSProxmoxVE, please report it responsibly.
|
|
|
|
**Do not open a public issue for security vulnerabilities.**
|
|
|
|
Instead, please email the maintainer directly or use [GitHub's private vulnerability reporting](https://github.com/goodolclint/PSProxmoxVE/security/advisories/new).
|
|
|
|
### What to include
|
|
|
|
- A description of the vulnerability
|
|
- Steps to reproduce the issue
|
|
- The potential impact
|
|
- Any suggested fixes (optional)
|
|
|
|
### Response timeline
|
|
|
|
- **Acknowledgment**: Within 48 hours of receipt
|
|
- **Initial assessment**: Within 1 week
|
|
- **Fix release**: As soon as practical, depending on severity
|
|
|
|
## Security Considerations
|
|
|
|
### Credential Handling
|
|
|
|
- PSProxmoxVE accepts credentials via `PSCredential` objects and API tokens.
|
|
- All password parameters use `SecureString` with secure memory cleanup (`Marshal.ZeroFreeGlobalAllocUnicode`).
|
|
- Credentials are never written to disk or included in verbose/debug output.
|
|
- Ticket-based sessions expire after 2 hours. The module detects and reports expiry.
|
|
|
|
### TLS/HTTPS
|
|
|
|
- All API communication uses HTTPS. There is no HTTP fallback.
|
|
- The `-SkipCertificateCheck` parameter disables TLS certificate validation and emits a warning when used. Use only in trusted networks or test environments.
|
|
|
|
### Input Validation
|
|
|
|
- All VM ID parameters are validated with `[ValidateRange(100, 999999999)]` to match PVE constraints.
|
|
- All dynamic values in API URL paths are encoded with `Uri.EscapeDataString()` to prevent injection.
|
|
|
|
### Dependencies
|
|
|
|
NuGet dependencies are pinned to specific versions and monitored for vulnerabilities via Dependabot.
|