DF-045: كشف آليات الاستمرار عبر المهام المجدولة – Cron Jobs & Systemd Timers Persistence
تنويه أمني وإخلاء مسؤولية: هذا المقال مخصص لأغراض التعليم، التوعية الرقمية، والدفاع السيبراني فقط. إن استخدام هذه الأدوات أو الاستراتيجيات خارج إطار مصرح به يُعد مخالفة للقانون. نحن نهدف إلى تمكين الأفراد والمؤسسات من فهم آليات التهديد لحماية أنفسهم.

 للاستزادة والتوسع الأكاديمي: إذا كنت ترغب في إثراء حصيلتك التقنية وقراءة مقالات وتحليلات تفصيلية حول أدوات ومفاهيم هذا الدرس، يمكنك زيارة قسم التحقيق الجنائي الرقمي في مدونة Digital Shield Lab للحصول على شرح معمّق وتطبيقات عمل إضافية.

 

المفهوم / المحور الأساسي:

تحليل الجدولة الآلية للأنشطة والمهام في أنظمة Linux، وفحص ملفات crontab وأدلة الـ Cron بالإضافة إلى Systemd Timers لكشف وإزالة آليات الاستمرار (Persistence Mechanisms) التي يستغلها المهاجم لإعادة تشغيل الكود الخبيث تلقائياً.

محتوى الغرفة (Content):

ماذا ستتعلم في هذه الغرفة؟

  • فهم آلية عمل المهام المجدولة (Cron Jobs) والهيكل المتبع لجدولة الأوامر والتطبيقات.

  • استكشاف كافة الأدلة والأماكن المفضلة للمهاجم لزرع سكربتات خبيثة (/etc/crontab, /etc/cron.*, /var/spool/cron/crontabs/).

  • التعرف على Systemd Timers الحديثة وكيفية استخدام المهاجمين لها كبديل متقدم لـ Cron Jobs.

  • فحص سجلات أحداث الـ Cron لتحديد وقت وسياق تشغيل المهام المشبوهة.

  • استخدام أوامر التحقيق والفلترة لكشف السكربتات الخفية الموجهة نحو الاتصال الخارجي (Reverse Shells).

محتوى الدرس:

يعد ضمان البقاء والاستمرار (Persistence) هدفاً رئيسياً للمهاجم بعد الوصول لبيئة Linux. وتوفر المهام المجدولة بيئة مثالية لضمان إعادة تشغيل الأكواد الخبيثة بصفة دورية أو عند إعادة تشغيل النظام.

1. هيكلية الـ Cron Jobs والمسارات الجنائية:

  • crontab -l: عرض قائمة المهام المجدولة للمستخدم الحالي.

  • crontab -u <username> -l: عرض مهام مستخدم آخر (ويتطلب صلاحيات Root).

  • الأدلة الرئيسية للمهام المجدولة للنظام:

    • /etc/crontab: الملف الرئيسي لجدولة مهام النظام.

    • /etc/cron.d/: مجلد يحتوي على ملفات جدولة مخصصة للتطبيقات.

    • /etc/cron.daily/, /etc/cron.hourly/, /etc/cron.weekly/, /etc/cron.monthly/: مجلدات تحتوي على سكربتات يتم تنفيذها بفترات زمنية محددة.

    • /var/spool/cron/crontabs/: يحتوي على ملفات الجدولة الخاصة بكل مستخدم على حدة.

2. البديل الحديث: Systemd Timers:

  • تُعتبر Systemd Timers البديل الحديث لـ Cron في توزيعات Linux الحديثة.

  • تتطلب إنشاء ملفين: ملف خدمة (.service) يحدد ما الذي سيتم تشغيله، وملف مؤقت (.timer) يحدد متى يتم التشغيل.

  • أمر الفحص: systemctl list-timers --all لعرض كافة المؤقتات النشطة والمخفية على النظام.

3. تتبع وتدقيق التنفيذ:

  • عند تنفيذ أي مهمة مجدولة عبر Cron، يتم تسجيل الحدث داخل /var/log/syslog أو /var/log/cron مرفقاً بالوسم CRON[...].

  • يبحث المحقق عادة عن محاولات تنزيل ملفات عبر curl أو wget أو فتح اتصالات عكسية nc / bash -i داخل سطر الجدولة.

💬 هل واجهتك صعوبة في تطبيق الأوامر أو لديك استفسار إضافي؟ إذا واجهتك أي مشكلة أثناء تنفيذ الخطوات التطبيقية (مثل عدم معرفة المتغيرات الواجب استبدالها في الأوامر البرمجية)، يمكنك طرح سؤالك ومشاركة استفسارك في قسم التحقيق الجنائي الرقمي بمنتديات Digital Shield Lab ليقوم الفريق والمجتمع بمساعدتك خطوة بخطوة.