« BackMongoBleedgithub.comSubmitted by gpi 2 days ago
  • FridgeSeal 2 days ago

    Current link points straight to the Python code without a lot of context, so here’s the top of the readme:

    > CVE-2025-14847 - MongoDB Unauthenticated Memory Leak Exploit

    > A proof-of-concept exploit for the MongoDB zlib decompression vulnerability that allows unauthenticated attackers to leak sensitive server memory.

    • dpark 2 days ago

      Do people usually run Mongo in a mode that allows unauthenticated calls? I don’t know anything about Mongo. This just seems surprising.

      • erdaniels 2 days ago

        No, but it's pretty common IME to create an Atlas cluster that has internet-wide access (0.0.0.0/0) when testing and forgetting to turn this off. According to https://jira.mongodb.org/browse/SERVER-115508, this affects unauthenticated ops. Based on the repro code itself, it looks like this happens way before authentication is checked for the corresponding OP at the OP_MSG decoding level.

        So if you're using Atlas, check that your Cluster has auto upgraded already. If you're using 0.0.0.0/0, stop doing that and prefer a limited IP address range and even better, use VPC Peering or other security/network boundary features.

        • computerfan494 2 days ago

          We received communication that all Atlas clusters were upgraded with the fix before the vulnerability was announced.

          • yearolinuxdsktp 2 days ago

            This is a good example of a benefit of certificate-based authentication option for MongoDB, because you need to at least present a valid client certificate to transmit any data.

          • giancarlostoro 2 days ago

            Its default is to only take connections that are local, usually I have my mongo clients SSH into a mongo server as opposed to opening up the port to the internet. Some Mongo users / collections are very open by default.

            It has been a minute since I used Mongo for production grade projects, so some things could have changed since then.

            • ehnto 2 days ago

              I don't think I would be comfortable serving any DB over the internet these days, exploit scanners are so agressand ubiquitous that a breach would feel inevitable.

              Not that it is fool proof, but if I am setting up the infrastructure I can probably control where the DB is deployed, so I would colocate it with the application servers on a local network or virtual local network, that is all I would be comfortable with.

            • winstonwinston a day ago

              When vulnerability description says “unauthenticated exploit” that means that you can exploit without being required to authenticate first. It means it just works even with authentication being required on the server.

              When it says “authenticated exploit” it means you need to pass authentication first in order to trigger exploit whatever it may be.

            • enether 16 hours ago

              What an awful vulnerability. The most interesting fact is that this has been there since the PR that introduced it in 2017[1].

              I'm not sure how Mongo's review process works, but it seems like this one had zero review.

              [1] - https://github.com/mongodb/mongo/pull/1152

              • spaquet 13 hours ago

                The problem is that about 20% of mongodb users are still on v4 for which not patch has been provided since it reach end of support on Feb 2024...

                • FrostKiwi 14 hours ago

                  This is astronomical. If I correctly understood, the full on compromise of Ubisoft happened because of this.

                  • undefined 13 hours ago
                    [deleted]
                  • spzb 2 days ago
                    • winrid 2 days ago

                      Luckily most people wouldn't use zlib anyway, they'd use snappy or zstd, and this also requires authenticated access to the cluster ....

                      • mirashii 2 days ago

                        > authenticated access to the cluster

                        No it doesn’t.

                        > they'd use snappy or zstd

                        What is being used more doesn’t matter, what’s compiled in and enabled matters.