Description
Onyx 4.6.6 fails to properly restrict access to custom tool credentials stored in custom_headers, allowing any authenticated user to read admin-defined API keys. Attackers with basic authentication can call GET /tool/{tool_id} or GET /tool endpoints to retrieve plaintext authorization headers and third-party API credentials, then use them to directly access upstream APIs.
Affected products
| Vendor | Product | Affected | Fixed |
|---|---|---|---|
| onyx-dot-app | onyx | ≤ 4.6.6 | — |
References
- GitHub Issue #13165 issue-tracking
- https://github.com/onyx-dot-app/onyx product
- https://github.com/onyx-dot-app/onyx/blob/v4.6.6/backend/onyx/server/features/tool/models.py technical-description
- https://github.com/onyx-dot-app/onyx/blob/v4.6.6/backend/onyx/server/features/tool/api.py technical-description
- VulnCheck Advisory: Onyx 4.6.6 Custom Tool Secret Header Disclosure via Tool Endpoints third-party-advisory