<antirez>
8 hours ago
- Redis's security model is designed for trusted, sandboxed environments; exposing it to untrusted clients is insecure by design.
- Many Redis instances are unintentionally exposed to the internet due to lack of firewalling, authentication, or binding to localhost.
- A demonstration shows how an exposed Redis instance can be exploited to write arbitrary files, such as an SSH authorized_keys file, to gain remote access.
- The author argues that adding security features (like ACLs and AUTH) must balance usability for developers versus protection for inexperienced users.
- Proposed improvements include better default configurations (e.g., binding to 127.0.0.1 in redis.conf), requiring AUTH, and implementing user-based ACLs to restrict dangerous commands.
- ACLs can protect against both external attacks and internal errors by limiting what commands different users can execute, though they add complexity to replication and other systems.