CVE-2023-22894: Strapi leaking sensitive user information by filtering on private fields
7.5
Basic Information
Technical Details
Package Name | Ecosystem | Vulnerable Versions | First Patched Version |
---|---|---|---|
@strapi/strapi | npm | >= 3.2.1, < 4.8.0 | 4.8.0 |
Vulnerability Intelligence
Miggo AI
Root Cause Analysis
The vulnerability (CVE-2023-22894) explicitly involves improper filtering on private fields via API requests. The core issue lies in how query parameters were processed: Strapi's filtering mechanism allowed attackers to specify sensitive fields like 'password' or 'reset_password_token' in filter conditions. The regex IoC pattern (/([|%5B)\s*(email|password|reset_password_token|resetPasswordToken)\s*(]|%5D)/) directly targets these parameters in HTTP requests. While specific function names/paths aren't provided in the disclosures, the vulnerability inherently resides in the query parsing/filtering logic (likely in entity-service or user-controller code). The Strapi 4.8.0 patch notes and security blog emphasize query sanitization changes, confirming this component was the root cause.