Rate-limit the captcha endpoints

This commit is contained in:
Alex Gleason 2024-10-04 16:48:24 -05:00
parent 5ed683b146
commit a2e8de6c36
No known key found for this signature in database
GPG key ID: 7211D1F99744FBB7

View file

@ -279,8 +279,13 @@ app.put('/api/v1/admin/ditto/relays', requireRole('admin'), adminSetRelaysContro
app.post('/api/v1/ditto/names', requireSigner, nameRequestController); app.post('/api/v1/ditto/names', requireSigner, nameRequestController);
app.get('/api/v1/ditto/names', requireSigner, nameRequestsController); app.get('/api/v1/ditto/names', requireSigner, nameRequestsController);
app.get('/api/v1/ditto/captcha', captchaController); app.get('/api/v1/ditto/captcha', rateLimitMiddleware(3, Time.minutes(1)), captchaController);
app.post('/api/v1/ditto/captcha/:id/verify', requireProof(), captchaVerifyController); app.post(
'/api/v1/ditto/captcha/:id/verify',
rateLimitMiddleware(8, Time.minutes(1)),
requireProof(),
captchaVerifyController,
);
app.get('/api/v1/ditto/zap_splits', getZapSplitsController); app.get('/api/v1/ditto/zap_splits', getZapSplitsController);
app.get('/api/v1/ditto/:id{[0-9a-f]{64}}/zap_splits', statusZapSplitsController); app.get('/api/v1/ditto/:id{[0-9a-f]{64}}/zap_splits', statusZapSplitsController);