PostgreSQL تصلح ثغرة CVE-2026-6471 في logical decoding بعد 12 عامًا من ظهورها
صلاحية تُمنح لأدوات النسخ الاحتياطي والمراقبة على أنها صلاحية قراءة كانت تكفي لتنفيذ كود على الخادم، والخوادم التي تُدار ذاتيًا ولم تُحدَّث منذ أغسطس ما تزال مكشوفة.
أصدرت PostgreSQL في 13 أغسطس 2026 إصلاحًا لثغرة تحمل الرقم CVE-2026-6471، بتقييم 7.2. والثغرة موجودة منذ الإصدار 9.4 الذي صدر عام 2014، أي منذ نحو 12 عامًا.
وتقع الثغرة في خاصية logical decoding، التي تتيح قراءة التغييرات الجارية في قاعدة البيانات على شكل stream متواصل. وتعتمد عليها أدوات النسخ الاحتياطي والـ replicas وأنظمة الـ CDC، أي التقاط التغييرات ونقلها إلى أنظمة أخرى.
وعند فتح replication slot يُحدَّد اسم الـ output plugin المطلوب. وبحسب الوصف الرسمي، لم يكن التحقق من هذا الاسم صارمًا بما يكفي، فكان يمكن أن يشير إلى ملف غير مقصود على الخادم، فيُحمَّل ويُنفَّذ بصلاحيات مستخدم postgres.
والشرط الوحيد للاستغلال حساب يملك صلاحية REPLICATION، دون أن يكون superuser. وهذه صلاحية تُمنح عادةً لأدوات النسخ الاحتياطي والمراقبة، وكثيرًا ما يُنظر إليها على أنها صلاحية قراءة لا أكثر.
والإصدارات المتأثرة هي كل ما يسبق 18.6 و17.11 و16.15 و15.19 و14.24.
ويختلف أثر الثغرة بحسب طريقة التشغيل. فقواعد البيانات المُدارة لدى مزوّدي الخدمات السحابية حُدّثت غالبًا دون تدخل من أصحابها. أما الخوادم التي يديرها أصحابها بأنفسهم ولم تُحدَّث منذ أغسطس، فما تزال الثغرة قائمة فيها بعد أكثر من ثلاثة أسابيع من صدور الإصلاح. ويكفي رقم الإصدار الحالي وحده لمعرفة ما إذا كان الخادم مكشوفًا أم لا.