اكتشتف ثغرة جديدة في الاصدار 5.3.0 و 5.2.11 من PHP تمكّن المهاجم من تخطي حماية open_basedir لقراءة ملفات مهمّة أو ملفات خاصّة بمستخدمين آخرين موجودة على نفس السيرفر. سبب الثغرة يصنّف على أنه Design Error بنموذج الحماية المتبع في لغة PHP.

PHP

 

في لغة PHP نستخدم الدالة symlink لصناعة اختصار لملفات موجودة مسبقاً على نفس السيرفر, يتم تزويد الدالة بمسار الملف المراد عمل اختصار له وباسم الاختصار الذي نريده بهذا الشكل:

 

symlink(“/etc/passwd”, “mypasswd”);

خاصيّة open_basedir ستتأكد من امكانية قراءة الملف (حسب اعدادات PHP) قبل انشاء الاختصار, لكن لوجود خطأ يصنّف على أنه Design Error يمكن للمهاجم أن يتلاعب بسمار الملفات ويجعل open_basedir يظن أن الملف الذي يحاول عمل اختصار له موجود ضمن المسار المسموح له بقرائته.

حتى تاريخ كتابة هذا الخبر لانعلم بوجود أي ترقيع لهذه الثغرة, وشخصيّاً أرى أن الاستغلال ذكي نوعا ما ويمكن الاطلاع عليه من الرابط الموجود بالأسفل.

 

لمزيد من المعلومات: SecurityReason-6744

Share on FacebookShare on Google+Tweet about this on TwitterShare on LinkedIn