في الساعة 14:32:18 بالتوقيت العالمي المنسق (Z) من يوم 12 أكتوبر 2026، قبل خادم Ubuntu المسمى ir-lab-ubuntu24 عملية تسجيل دخول غير متوقعة للحساب ops. لم يكن المهاجم بحاجة إلى تعديل برنامج أو كسر التشفير إذا كان الحساب ops يمتلك بالفعل صلاحية الوصول إلى ملفات كان ينبغي أن تكون حكراً على الحسابين socalyst أو root. يتمحور سؤالنا كفريق دفاعي حول نقطة محددة: ما هي المسارات في نظام الملفات التي تتيح لحساب ما قراءة أو تعديل أو الدخول إلى عناصر لا يُفترض به الوصول إليها؟
تعتمد جميع الملاحظات اللاحقة على الحقائق ذاتها المتعلقة بالقضية؛ حيث يمثل socalyst حساب المحلل، ويمثل ops الحساب المشبوه، وتمتد الفترة الزمنية للحادثة من الساعة 14:10:00Z وحتى 15:10:00Z في 12 أكتوبر 2026. يقوم نظام Linux بتخزين اسم الخادم في المسار /etc/hostname وسجلات الحسابات المحلية في /etc/passwd وقيم “الهاش” (hashes) المحمية لكلمات المرور في /etc/shadow، بينما تُحفظ ملفات كل حساب في مسارات مثل /home/socalyst و/home/ops. إن المسار ليس مجرد موقع جغرافي أو تقني؛ إذ تحدد ملكيته وأذوناته الجهة المصرح لها باستخدام العنصر الموجود في ذلك الموقع. وتحدد المضيف (الخادم) المعني بالقضية ومسارات الأدلة المرتبطة به نطاق الفحص الذي سنقوم به:
يوضح هذا الرسم البياني أن سجلات الهوية، وتكوين المضيف (host configuration)، والمجلدات الرئيسية (home directories)، وأدلة المصادقة توجد في مسارات منفصلة. إن العثور على معلومة تخص /home/ops لا يثبت تلقائياً حدوث تغيير في /etc/shadow؛ لذا نحرص على ربط كل ادعاء بالأثر أو الدليل الذي يدعمه.
يجعل تسجيل الدخول غير المتوقع باسم المستخدم ops من “الصلاحيات” (permissions) الخطوة التالية التي يجب التحقق منها؛ إذ يقوم نظام Linux بتقييم إمكانية الوصول قبل أن تتمكن أي عملية (process) من قراءة ملف، أو تعديله، أو الدخول إلى مجلد. يُعرَّف المستخدم (user) بأنه حساب مثل socalyst أو ops. أما المجموعة (group) فهي عبارة عن مجموعة مسماة من الحسابات التي يمكنها مشاركة صلاحيات الوصول، مثل مجموعة shadow المستخدمة لتقييد الوصول إلى سجلات تجزئة كلمات المرور (password-hash records).
لكل كائن في نظام الملفات مالك، ومجموعة، وثلاث مجموعات من الصلاحيات. تنطبق صلاحيات المالك على الحساب المالك للكائن، وتنطبق صلاحيات المجموعة على أعضاء المجموعة المحددة، بينما تنطبق الصلاحيات الأخرى على بقية المستخدمين. وتتمثل هذه الصلاحيات في الرموز: r لقراءة المحتوى، وw لتعديل المحتوى، وx لتنفيذ برنامج أو الدخول إلى مجلد. وبالنسبة للمسار /home/ops، تتحكم صلاحية المجلد x في إمكانية عبور حساب آخر عبر المسار للوصول إلى ذلك المجلد.
يُبرز التباين بين الملفين /etc/hostname و/etc/shadow طبيعة القرار الأمني المتخذ. تحتاج العمليات إلى قراءة اسم المضيف (hostname)، ولذلك يكون الملف /etc/hostname متاحاً للقراءة عادةً لجميع الحسابات، في حين يجب ألا تُقرأ تجزئات كلمات المرور الموجودة في /etc/shadow إلا بواسطة مكونات النظام ذات الصلاحيات العالية. إن منح صلاحية الكتابة للجميع (world-writable)—أي عندما تتضمن مجموعة الصلاحيات “الأخرى” الرمز w—يسمح لأي حساب محلي بتعديل كائن محمي. كما أن جعل الملف /etc/shadow متاحاً للقراءة للجميع (world-readable) من شأنه أن يكشف تجزئات كلمات المرور، مما يتيح محاولة تخمينها دون اتصال بالشبكة (offline guessing). وتسهّل الأنماط المتوقعة لمسارات الملفات هذه عملية اكتشاف أي انحرافات مشبوهة:
يوضح هذا الجدول أن إعدادات الأذونات تعتمد على الغرض من المسار. يمكن لمعلومات الهوية واسم المضيف (hostname) المتاحة للقراءة العامة أن تدعم التشغيل الطبيعي للنظام، لكن صلاحية الكتابة تظل مقيدة؛ لأن تغيير سجلات الهوية أو إعدادات المضيف قد يضلل التحقيقات اللاحقة.
قاعدة الأذونات تعامل مع نمط الأذونات كدليل على صلاحية الوصول المسموح به، وليس كدليل على أن عملية الوصول قد حدثت بالفعل. يلزم وجود سجلات وطوابع زمنية لدعم أي ادعاء بشأن إجراء معين.
نظراً لأن الأذونات تصف حالة الوصول الحالية ولا تعبر عن النية أو القصد، فإننا نبدأ بتوثيق الحقائق الملموسة المتعلقة بـ ir-lab-ubuntu24. توفر الأوامر hostnamectl و id و ls -l و stat و readlink -f إجابات على تساؤلات مختلفة دون تعديل الملفات قيد الفحص. يعرض الأمر hostnamectl هوية المضيف المكونة (المُعدة) في النظام. بينما يحدد الأمران id ops و id socalyst الهوية الرقمية وعضوية المجموعة لكل حساب. وتكتسب هذه الهويات الرقمية أهميتها لأن نظام Linux يخزن معلومات الملكية بصيغة معرفات المستخدم (UID) والمجموعة (GID)، حتى وإن كانت مخرجات الأوامر تعرض أسماءً مألوفة.
بالنسبة للمسارات /etc/hostname و /etc/passwd و /etc/shadow، يقدم الأمر ls -l عرضاً موجزاً لبتات الأذونات، والمالك، والمجموعة، والحجم، والطابع الزمني المعروض. أما الأمر stat فيوفر بيانات وصفية (metadata) أكثر دقة، بما في ذلك النمط الرقمي ووقت التعديل. ويقوم الأمر readlink -f بتحديد المسار وصولاً إلى وجهته النهائية؛ مما يمنع الروابط الرمزية (symbolic links) —وهي كائنات في نظام الملفات تشير إلى مواقع أخرى— من إخفاء الموقع الفعلي الذي قمنا بفحصه. تسجل الجلسة التالية حقائق الحالة دون الجزم بأسباب وجود أي طابع زمني أو إذن معين: