كشف باحثون في الأمن السيبراني عن ثغرة بالغة الخطورة تتيح للمهاجمين تنفيذ تعليمات برمجية عن بُعد (RCE) على تطبيقات Laravel، وذلك بعد تسريب مفاتيح التشفير APP_KEY علنًا على منصة GitHub.
وأوضحت شركة GitGuardian أن مفتاح APP_KEY يُستخدم لتشفير البيانات الحساسة، وإذا حصل المهاجم عليه، يمكنه استغلال ثغرة في عملية إزالة التسلسل لتنفيذ تعليمات ضارة على الخادم.
بالتعاون مع Synacktiv، استطاعت GitGuardian استخراج أكثر من 260,000 مفتاح APP_KEY من GitHub بين عام 2018 و30 مايو 2025، وتحديد أكثر من 600 تطبيق معرض للخطر. كما رُصدت أكثر من 10,000 نسخة فريدة من هذا المفتاح، منها 400 مفتاح لا تزال فعّالة.
الثغرة الأمنية في decrypt() تعيد إحياء هجوم CVE-2018-15133
تكمن جذور الثغرة في دالة الخاصة بـ Laravel، والتي تقوم تلقائيًا بإلغاء تسلسل البيانات المفككة، مما يتيح إمكانية تنفيذ تعليمات برمجية خبيثة إذا كانت البيانات مشفّرة بمفتاح APP_KEY معروف.
وقال الباحث الأمني غيوم فالادون: “إذا تمكن المهاجم من استدعاء decrypt() بحمولة خبيثة ومعه APP_KEY الصحيح، فبوسعه السيطرة على الخادم”.
وقد تم ربط هذه الثغرة سابقًا بالهجوم المسجل تحت الرقم CVE-2018-15133، الذي أثّر على إصدارات Laravel السابقة لـ 5.6.30. كما أن الثغرة لا تزال قائمة في الإصدارات الأحدث إذا تم استخدام إعداد الجلسات SESSION_DRIVER=cookie، كما هو موضح في الثغرة الجديدة CVE-2024-55556.
ملفات .env المكشوفة: مصدر تسريب شامل للأسرار الحساسة
أظهرت التحليلات أن 63% من حالات تسريب APP_KEY جاءت من ملفات .env أو نسخ مماثلة لها، والتي عادة ما تحتوي على أسرار أخرى مثل بيانات قواعد البيانات، رموز الخدمات السحابية، مفاتيح التجارة الإلكترونية، وأسرار أدوات الذكاء الاصطناعي.
الأخطر أن GitGuardian رصدت 28,000 زوجًا من APP_KEY وAPP_URL مكشوفًا على GitHub، و10% منها صالحة فعليًا، ما يجعل 120 تطبيقًا على الأقل عرضة لهجمات بسيطة لتنفيذ التعليمات البرمجية.
وحذرت GitGuardian من أن إزالة المفاتيح المسرّبة من المستودعات غير كافٍ، بل يجب تدويرها وتحديث الأنظمة ومراقبة أي ظهور لاحق لها في سجلات البناء أو الطبقات البرمجية للحاويات.
خطر أوسع عبر البيئات السحابية والذكاء الاصطناعي
تندرج هذه الثغرة ضمن فئة أوسع من ثغرات إزالة التسلسل في PHP، حيث تُستخدم أدوات مثل phpggc لصناعة سلاسل أوامر خبيثة تُفعّل عند تحميل الكائنات في البيئة. في حالة Laravel، يمكن استخدام تلك السلاسل مع مفاتيح APP_KEY المسرّبة للوصول الكامل إلى الخادم.
الجدير بالذكر أن GitGuardian كانت قد كشفت مؤخرًا عن وجود 100,000 سر فعّال في صور Docker المنشورة علنًا، تشمل رموز AWS وGoogle Cloud وGitHub.
كما كشف تحليل أجرته Binarly على أكثر من 80,000 صورة Docker فريدة عن 644 سرًا فريدًا، منها رموز JWT، ورؤوس تفويض HTTP، ومفاتيح واجهات برمجة التطبيقات السحابية.
وفي تطور مقلق، تبين أن بروتوكول Model Context Protocol (MCP) المستخدم في تطبيقات الذكاء الاصطناعي يُسرب الأسرار أيضًا. إذ رُصد تسرب أسرار في 202 مستودع GitHub تحتوي على خوادم MCP، بنسبة 5.2% من إجمالي المستودعات المفحوصة، وهي نسبة تفوق المتوسط العام.