You've already forked wc-licensed-product
Security improvements and API compatibility fixes (v0.3.6)
- Add recursive key sorting for response signing compatibility - Fix IP header spoofing in rate limiting with trusted proxy support - Add CSRF protection to CSV export with nonce verification - Explicit Twig autoescape for XSS prevention - Escape status values in CSS classes - Update README with security documentation and trusted proxy config - Update translations for v0.3.6 Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
28
CHANGELOG.md
28
CHANGELOG.md
@@ -7,6 +7,34 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
||||
|
||||
## [Unreleased]
|
||||
|
||||
## [0.3.6] - 2026-01-23
|
||||
|
||||
### Security
|
||||
|
||||
- Added CSRF protection (nonce verification) to CSV export functionality
|
||||
- Fixed IP header spoofing vulnerability in rate limiting - now requires explicit trusted proxy configuration
|
||||
- Enabled explicit Twig autoescape for XSS protection
|
||||
- Fixed unescaped status values in CSS classes in Twig templates
|
||||
|
||||
### Fixed
|
||||
|
||||
- Fixed response signing to use recursive key sorting for client compatibility
|
||||
- ResponseSigner now recursively sorts nested array keys alphabetically as required by client implementation
|
||||
|
||||
### Changed
|
||||
|
||||
- Rate limiting now only trusts proxy headers when `WC_LICENSE_TRUSTED_PROXIES` constant is defined
|
||||
- Added Cloudflare IP range support via `WC_LICENSE_TRUSTED_PROXIES = 'CLOUDFLARE'` configuration
|
||||
- Improved IP detection with CIDR notation support for trusted proxy ranges
|
||||
|
||||
### Technical Details
|
||||
|
||||
- Added `recursiveKeySort()` method to `ResponseSigner` for proper response signing
|
||||
- Added `isTrustedProxy()`, `isCloudflareIp()`, and `ipMatchesCidr()` methods to `RestApiController`
|
||||
- Twig environment now explicitly sets `autoescape => 'html'`
|
||||
- Export CSV link now includes nonce via `wp_nonce_url()`
|
||||
- Added `export_csv_url()` Twig function for generating export URL with nonce
|
||||
|
||||
## [0.3.5] - 2026-01-23
|
||||
|
||||
### Added
|
||||
|
||||
Reference in New Issue
Block a user