← Back to list4/9/2026, 4:42:05 PM
01Issue
FeatureOpenSwamp Club
AssigneesNone
Add authentication or rate limiting to check-verified endpoint
Opened by stack72 · 4/9/2026· GitHub #45
Issue
The /api/auth/check-verified?email=... endpoint is unauthenticated and has no rate limiting. Anyone can query it to determine whether a verified account exists for a given email address.
{ verified: true }— email is registered and verified{ verified: false }— email is either unregistered or unverified (indistinguishable)
This enables automated email enumeration against known email lists.
Impact
Low severity. The endpoint is read-only and cannot modify any state. A true response confirms account existence, but false does not distinguish between non-existent and unverified accounts.
Options
- Require authentication — check
ctx.state.userand only allow users to query their own email - Rate limit — throttle requests per IP (e.g., 5 per minute) at the nginx or app layer
- Remove the endpoint — have the client poll
/api/auth/sessioninstead (requires authentication by design), though this only works when a session exists
02Bog Flow
Open
No activity in this phase yet.
03Sludge Pulse
Sign in to post a ripple.