MongoBleed, resmi adıyla CVE-2025-14847, 2017'den bu yana çıkan neredeyse tüm MongoDB sürümlerini etkileyen son derece kritik bir güvenlik açığıdır. Bu zafiyet, saldırganların veritabanının yığın belleğinden (heap memory) herhangi bir rastgele veriyi okumasına olanak tanır. Özellikle, daha önce bellekten ayrılmış ancak henüz üzerine yazılmamış veriler, saldırganlar tarafından kolayca ele geçirilebilir. Zafiyet, MongoDB'nin zlib1 mesaj sıkıştırma yolundaki bir hatadan kaynaklanmaktadır ve istismar edilmesi oldukça basittir; sadece veritabanına bağlantı yeterlidir, herhangi bir kimlik doğrulama gerektirmez.
Saldırının temelinde, bir saldırganın uncompressedSize alanına gerçekte olduğundan çok daha büyük bir değer göndermesi yatar. Örneğin, 1 KB'lık sıkıştırılmamış bir mesaj için 1 MB'lık bir boyut belirtilebilir. Bu durum, sunucunun mesajı açmak için bellekte 1 MB'lık bir arabellek (buffer) ayırmasına neden olur. Ancak kritik nokta şudur ki, sıkıştırma işlemi tamamlandıktan sonra sunucu, açılan verinin gerçek boyutunu kontrol etmez. Bunun yerine, kullanıcının belirttiği boyutu esas alır. Bu da bellekte, gerçek verinin yanında, daha önceki veritabanı işlemlerinden kalan ve referanssız yığın belleği (heap garbage) içeren bir arabellek oluşmasına yol açar. Saldırgan, bu "çöp" olarak adlandırılan bellek alanını okuyarak hassas bilgilere ulaşabilir.
Bu kritik açık, şu anda desteklenen MongoDB sürümlerinde düzeltilmiş olsa da, kullanım ömrü (EOL) sona ermiş olan 3.6, 4.0 ve 4.2 gibi sürümler için herhangi bir yama yayınlanmayacaktır. Bu durum, eski sürümleri kullanan işletmeler ve geliştiriciler için ciddi bir risk teşkil etmektedir. Güvenlik açığının kolay istismar edilebilirliği ve kimlik doğrulama gerektirmemesi, onu özellikle tehlikeli kılmaktadır.
Bu açık, kimlik doğrulama gerektirmeden veritabanı belleğinden hassas verilerin okunmasına izin vererek MongoDB kullanıcıları için ciddi bir güvenlik riski oluşturmaktadır.