حذفُ الملفّات التي تراها هو الجزء الذي يفعله الجميع، وهو وحده يفشل: فطريقُ الدخول ما زال مفتوحًا، ويعود الموقع مصابًا في غضون ساعات. والترتيبُ أدناه يُغلق الباب قبل أن ينظّف الغرفة.
١. أنزِله عن الشبكة أوّلًا
الموقعُ المخترَق يرسل بريدًا مزعجًا أو يقدّم برمجيّاتٍ خبيثة لزوّارك وأنت تعمل. أوقف ذلك قبل كل شيء.
# a holding page that returns 503, so search engines come back later
# rather than dropping your pages
٢. انسخ كل شيء قبل أن تغيّره
خذ نسخةً كاملة — ملفّات وقاعدة بيانات — قبل أن تحذف شيئًا واحدًا. فهي دليل: تخبرك كيف دخلوا، وبدونها أنت تخمّن.
٣. اعثر على طريق الدخول
وهو في الغالب واحدٌ من أربعة. ابحث عن أوّل ظهورٍ لملفٍّ معدَّل في سجلّ الوصول حول توقيته.
- إضافةٌ أو قالبٌ متأخّر عن التحديث — وهو الأشيع بفارق كبير.
- وكلمةُ مرورٍ مُعادة — تسرّبت في مكانٍ آخر وجُرِّبت هنا.
- ومجلّدُ رفعٍ ينفّذ PHP — ملفٌّ رُفع على أنه صورة ثم شُغِّل.
- وبياناتُ دخول FTP أو SSH مسروقة، وغالبًا من حاسوبٍ مكتبيّ مصاب.
find . -type f -mtime -7 -name "*.php" | head -50
grep -rl "eval(base64_decode" . | head
٤. نظّف من نسخةٍ تعرف صلاحها، لا بالتحرير
استبدل النواة والإضافات والقوالب بتنزيلاتٍ جديدة. وأبقِ محتواك ومرفوعاتك وحدها، وافحصهما — فملفُّ PHP في مجلّد رفعٍ ليس مشروعًا أبدًا.
find wp-content/uploads -name "*.php" -o -name "*.phtml"
٥. الخطوة التي يتخطّاها كلُّ الناس تقريبًا
غيّر كلَّ بيانات دخولٍ كان الخادم المخترَق يراها، وأبطِل كلَّ جلسة. فإن تخطّيت هذه عاد المهاجم داخلًا بكلمة المرور التي عنده أصلًا.
- كلُّ حساب إدارةٍ في نظام إدارة المحتوى.
- ومستخدمُ قاعدة البيانات، وملفُّ الإعدادات الذي يحمله.
- ومفاتيحُ FTP وSFTP وSSH.
- ومفاتيحُ الواجهات البرمجيّة وبياناتُ الدفع المخزَّنة على الخادم.
- وفي ووردبريس: غيّر الأملاح في wp-config.php — فذلك يُخرج الجميع، وهم منهم.
٦. ثمّ أغلِق الباب
- حدّث كل شيء — النواة والإضافات والقوالب وPHP.
- واحذف ما لا تستعمله — فالإضافةُ المعطَّلة تبقى ملفًّا على القرص يمكن الوصول إليه.
- وامنع تنفيذ المرفوعات — لا معالِجَ PHP في مجلّد الرفع.
- والتحقّقُ بخطوتين على اللوحة وعلى نظام إدارة المحتوى —
اطلب من مضيفك سجلَّ الوصول لليوم الذي بدأ فيه. فالطلبُ الذي أسقط الملفَّ الأول موجودٌ فيه، وهو يسمّي الثغرة في سطرٍ واحد.