We actively support and provide security updates for the following versions:
| Version | Supported | End of Support |
|---|---|---|
| 1.x.x | β Active support | TBD |
| < 1.0 | β No longer supported | 2024-01-01 |
We take security seriously. If you discover a security vulnerability, please follow these steps:
- Email us privately at:
security@[your-domain].com - Use the subject line:
[SECURITY] WordPress Docker Stage - [Brief Description] - Include the following information:
- Description of the vulnerability
- Steps to reproduce the issue
- Potential impact and attack scenarios
- Any proof-of-concept code (if applicable)
- Your contact information
- Initial Response: Within 48 hours
- Confirmation/Triage: Within 1 week
- Fix Development: Within 2 weeks (depending on complexity)
- Public Disclosure: After fix is released and users have time to update
IMPORTANT: This tool is designed exclusively for local development environments. It includes several security trade-offs that make it unsuitable for production use:
- Default Credentials: Uses
wordpress/wordpressfor database access - Debug Mode Enabled: WordPress debug information is exposed
- Security Plugins Disabled: Automatically disables security-focused plugins
- Permissive File Permissions: Sets liberal file permissions for development ease
- No HTTPS by Default: Uses HTTP for local development
- No Firewall Configuration: Docker containers use default networking
# Limit network exposure (add to docker-compose.yml)
networks:
wordpress-network:
driver: bridge
internal: true # Prevents external network access# Use unique passwords for each project
DB_PASSWORD=$(openssl rand -base64 32)
DB_ROOT_PASSWORD=$(openssl rand -base64 32)# Regularly clean up unused environments
./stop-and-clean.sh
# Remove sensitive data from backups before import
# Remove production API keys, credentials, etc.- Keep Docker Desktop updated to the latest version
- Don't expose Docker daemon to network
- Use Docker Desktop security features
- Regularly update base Docker images
# Problem: Ports accessible from network
# Solution: Bind to localhost only
ports:
- "127.0.0.1:8080:80" # Instead of "8080:80"# Problem: Sensitive data in volumes
# Solution: Regular cleanup
docker-compose down -v # Removes volumes
./stop-and-clean.sh # Full cleanup# Problem: Containers running as root
# Solution: Use specific user (advanced users)
user: "1000:1000" # Add to services in docker-compose.ymlWe use the following tools to scan for security issues:
- Docker Scout: Container vulnerability scanning
- Hadolint: Dockerfile security linting
- ShellCheck: Shell script security analysis
- GitHub Security Advisories: Dependency vulnerability monitoring
Regular security reviews include:
- Dockerfile security best practices
- Docker Compose configuration security
- Shell script injection vulnerability testing
- Default credential auditing
- Network exposure assessment
When contributing code, please verify:
- No hardcoded secrets in code or configuration
- Input validation for user-provided data
- Safe shell script practices (proper quoting, validation)
- Minimal file permissions where possible
- Container security best practices
- Documentation of security implications
The following are not considered security vulnerabilities for this project:
- Production deployment issues - This tool is not designed for production
- WordPress core vulnerabilities - Use latest WordPress and security plugins in production
- Plugin vulnerabilities - We disable plugins specifically to avoid these issues
- Docker security issues - Use Docker security features and keep Docker updated
- Host OS vulnerabilities - Keep your operating system updated
We appreciate security researchers and developers who responsibly disclose vulnerabilities. Security contributors will be:
- Credited in the security advisory (unless they prefer to remain anonymous)
- Listed in our Hall of Fame
- Eligible for bug bounty programs (if implemented)
For security-related questions or concerns:
- Email:
security@[your-domain].com - PGP Key: Available on request
- Response Time: Within 48 hours
Remember: This is a development tool. Never use it in production environments or expose it to the internet.