Vulnerabilities/

Signal K Server's WebSocket Login Endpoint Lacks Rate Limiting (Credential Brute-Force)

Severity:
High

Description

The HTTP login endpoints (POST /login and POST /signalk/v1/auth/login) are protected by express-rate-limit (default: 100 attempts per 10-minute window, configurable via HTTP_RATE_LIMITS). The WebSocket login path — sending {login: {username, password}} messages over an established WebSocket connection — calls app.securityStrategy.login() directly without any rate limiting.

Recommendation

Update the signalk-server package to the latest compatible version. Followings are version details:

References

Related Issues

Tags:
npm
signalk-server
Anything's wrong? Let us know Last updated on May 13, 2026