api/get_users.php: unrestricted user enumeration, no pagination or admin gate #42

Open
opened 2026-08-31 21:29:47 -04:00 by jared · 0 comments
Owner

Severity: Low

api/get_users.php returns every user's user_id/username/display_name to any authenticated session, with no admin gate, no pagination, and no field limiting. Needed for mention/assignment typeahead, but it's a blanket enumeration endpoint that a compromised low-privilege session could scrape in a single call. Low severity since the app is fully behind Authelia SSO, but worth tightening (e.g. require a search-query prefix rather than returning the full list, or cap the result count) as defense-in-depth.

**Severity:** Low `api/get_users.php` returns every user's `user_id`/`username`/`display_name` to any authenticated session, with no admin gate, no pagination, and no field limiting. Needed for mention/assignment typeahead, but it's a blanket enumeration endpoint that a compromised low-privilege session could scrape in a single call. Low severity since the app is fully behind Authelia SSO, but worth tightening (e.g. require a search-query prefix rather than returning the full list, or cap the result count) as defense-in-depth.
jared added the priority/lowsecurity labels 2026-09-08 10:15:44 -04:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: LotusGuild/tinker_tickets#42