3 ms·
I guess that the docker image doesn't use TLS for connections, or if it does it doesn't use certificates from a CA. This means that your data either goes in pl
by capitol_ 6y ago
I guess that the docker image doesn't use TLS for connections, or if it does it doesn't use certificates from a CA.
This means that your data either goes in plain text over the network, or might be vulnerable to a MITM attack (if you don't manage your certs correctly).
I also guess that you don't use SCRAM as the password hashing method, but rather MD5. That means that if someone is able to listen to the connection, they can do a replay attack using the password hash, as there is only 32 bits of entropy added to the hash from the server side. And once you have managed to do the replay attack you can issue arbitrary sql commands as that user.
- wiredfool 6y agoI think it’s probably simpler than that, there are some docker Postgres image that are setup by default to trust connections. Which is ok until about 5 seconds after you open the port to the world.