We release patches for security vulnerabilities. Currently supported versions:
| Version | Supported |
|---|---|
| latest | ✅ |
| < latest | ❌ |
We take the security of PSScriptModule seriously. If you believe you have found a security vulnerability, please report it to us as described below.
- Do not open a public GitHub issue for security vulnerabilities
- Do not disclose the vulnerability publicly until it has been addressed
-
Report via GitHub Security Advisories:
- Navigate to the repository's "Security" tab
- Click "Advisories" and then "New draft security advisory"
- Provide detailed information about the vulnerability
-
Include in Your Report:
- Description of the vulnerability
- Steps to reproduce the issue
- Potential impact
- Suggested fix (if available)
- Your contact information
When using this PowerShell module template:
- Never commit credentials: Use
SecureStringor credential management systems - Validate all inputs: Use parameter validation attributes
- Sanitize user input: Prevent injection attacks
- Use approved verbs: Follow PowerShell naming conventions
- Handle errors properly: Don't expose sensitive information in error messages
- Run PSScriptAnalyzer: All code must pass static analysis
- Run InjectionHunter tests: Check for injection vulnerabilities
- Review dependencies: Regularly update modules in
requirements.psd1
- Sign your scripts: Use code signing certificates for production
- Verify execution policy: Use appropriate PowerShell execution policies
- Limit permissions: Follow principle of least privilege
- Audit module usage: Enable PowerShell logging in production environments
This module requires PowerShell script execution. Ensure:
- Execution policy is set appropriately for your environment
- Scripts are obtained from trusted sources
- Code signing is enforced in production environments
This project uses external PowerShell modules:
- InvokeBuild: Build orchestration
- Pester: Testing framework
- PSScriptAnalyzer: Static code analysis
- platyPS: Documentation generation
Review the security advisories for these dependencies regularly.
Every PR runs:
- PSScriptAnalyzer: Static code analysis for common issues
- InjectionHunter: Detection of potential injection vulnerabilities
- Pester Tests: Functional testing including security scenarios
- Dependency Checks: Ensure dependencies are up-to-date
When a security vulnerability is confirmed:
- Assessment: Evaluate severity and impact
- Fix Development: Create patch in private branch
- Testing: Thoroughly test the security fix
- Release:
- Use
+semver: patchfor minor security fixes - Use
+semver: majorfor breaking security changes
- Use
- Disclosure: Publish security advisory after fix is released
- Notification: Notify users of the security update
For security-related questions that are not vulnerabilities, please open a regular GitHub issue or discussion.
Thank you for helping keep PSScriptModule and its users safe!