Description
TDuck survey form through 6.0 fails to enforce form fill-in restrictions on the authenticated submission endpoint POST /user/form/data/create. Authenticated attackers who know a form's key can submit unlimited entries to any form, bypassing publish status, time window, quota, and per-IP restrictions to falsify collected results.
Affected products
| Vendor | Product | Affected | Fixed |
|---|---|---|---|
| TDuckCloud | tduck-survey-form | ≤ 6.0 | — |
References
- https://github.com/LinYuanyi1/cve-request-poc/blob/adffc39b78cad18cd489cbf7454853bf0f744b7f/tduck/poc_form_data_create_bypass.py exploit
- https://github.com/TDuckCloud/tduck-survey-form product
- https://github.com/TDuckCloud/tduck-survey-form/blob/43ffa9c993e38936fc4de7d8e5aee82bbaa19502/tduck-api/src/main/java/com/tduck/cloud/api/web/controller/UserFormResultController.java#L135-L172 technical-description
- https://github.com/TDuckCloud/tduck-survey-form/blob/43ffa9c993e38936fc4de7d8e5aee82bbaa19502/tduck-form/src/main/java/com/tduck/cloud/form/service/impl/UserFormSettingServiceImpl.java#L77-L135 technical-description
- VulnCheck Advisory: TDuck survey form through 6.0 Fill-In Restriction Bypass via Authenticated Submission Endpoint third-party-advisory