كيفية حماية موقع WordPress الخاص بك من حقن SQL
نشرت: 2022-03-09يعد WordPress أحد أكثر منصات إنشاء مواقع الويب استخدامًا نظرًا لنطاقه الواسع من التطبيقات المحتملة. يمكنك إنشاء متجر على الإنترنت ، أو استضافة مدونة حول هوايتك المفضلة ، أو إنشاء مجتمع من خلال المنتديات ، أو تمثيل شركة كبيرة.
ولكن كيفما كنت تستخدمه ، فإن المسؤولية الأساسية هي الحفاظ على موقعك آمنًا من المتسللين. لهذا السبب من المهم فهم كيفية منع هجمات حقن لغة الاستعلام الهيكلية (SQL).
الخبر السار هو أن هناك الكثير من الخطوات التي يمكنك اتخاذها لحماية موقع WordPress الخاص بك من هذه الشفرة الضارة. يمكن أن يساعدك التعرف على كيفية اكتشاف عمليات حقن SQL وإزالتها ومنعها على تأمين بياناتك القيمة بشكل فعال وجعلك أقل عرضة للهجوم.
ما هو حقن SQL وكيف يعمل؟
لفهم كيفية عمل الحقن ، من المفيد معرفة ماهية SQL أولاً. هذه لغة شائعة تستخدم في تطوير قواعد البيانات.
يستخدمه موقع الويب الخاص بك لاسترداد المعلومات الهامة من قاعدة البيانات الخاصة بك وإنشاء محتوى ديناميكي. تتضمن بعض قواعد بيانات SQL MySQL (مواقع WordPress) و MongoDB و SQL Server.
يستخدم موقع WordPress الخاص بك قاعدة بيانات لإدارة البيانات والمحتوى الأساسيين لموقعك ، مثل صفحاتك ومنشوراتك وتعليقاتك. يقوم بترتيب هذه المعلومات في الجداول.

قاعدة البيانات الخاصة بك هي المكان الذي يتم فيه تخزين بياناتك الأكثر حساسية. لذلك ، فإن أي هجوم يفضحها يمكن أن يكون له عواقب وخيمة.
حقن SQL (SQLI) هو نوع من أساليب القرصنة التي يستخدمها مجرمو الإنترنت للتسلل إلى قواعد بيانات WordPress والتلاعب بها. بشكل أساسي ، يمكن للمتسللين استغلال الثغرات الموجودة في تشفير الواجهة الخلفية لمواقع الويب وإدخال تعليمات برمجية ضارة في حقول إدخال البيانات.
يسمح هذا الرمز للجهات الفاعلة الشائنة بتنفيذ أوامر SQL على خوادم قاعدة البيانات عبر طلبات الويب باستخدام سلاسل الاستعلام وملفات تعريف الارتباط وعناصر <input>. هذا يعني أنه يمكنهم إنشاء البيانات والوصول إليها وتغييرها والقضاء عليها من قاعدة بيانات WordPress الخاصة بك.
هناك العديد من نقاط الدخول المختلفة حيث يمكن أن يحدث هذا. تتضمن حقول الإدخال الأكثر استخدامًا ، نماذج التسجيل وتسجيل الدخول والاتصال ، بالإضافة إلى أشرطة البحث وعربات التسوق.
لنفترض أن لديك نموذجًا على موقع الويب الخاص بك حيث يمكن للزوار إدخال أرقام هواتفهم. يمكن لمجرمي الإنترنت استخدام حقل الإدخال هذا لإدراج رمز ضار يطلب اسم المستخدم وكلمة المرور للمسؤول.
أنواع حقن SQL
هناك عدة أنواع مختلفة من حقن SQL. إحدى الفئات هي ما يُعرف باسم "داخل النطاق". هذا هو أبسط نوع من الحقن ويتضمن الهجمات القائمة على الأخطاء.
باستخدام هذه التقنية ، يستخدم المتسللون الحقن للحصول على تفاصيل حول بنية قاعدة البيانات وأسماء الجدول. على سبيل المثال ، قد توفر رسالة خطأ اسم الجدول المضمن في الاستعلام. ثم يمكن للمتسلل استخدام هذه المعلومات لإنشاء هجمات جديدة.
نوع آخر هو ما يشار إليه باسم "حقن SQL الأعمى". يحدث هذا عندما يرسل المهاجم مجموعة متنوعة من الاستعلامات إلى قاعدة البيانات لمعرفة كيفية تحليل الموقع للاستجابات. يمكن أن يساعدهم القيام بذلك في التحقيق في الردود على استعلامات SQL لتحديد الثغرات الأمنية المحتملة ، ويطلب من قاعدة البيانات نقل البيانات إلى مصدر خارجي.
ما مدى شيوع حقن SQL؟
لسوء الحظ ، تنتشر هجمات حقن SQL. في الواقع ، وفقًا لتقرير نشرته شركة Akamai ، بين عامي 2017 و 2019 ، نُسبت حوالي ثلثي الهجمات على تطبيقات البرامج إلى عمليات حقن SQL.
كشف تقرير منفصل لإحصاءات الثغرات الأمنية لعام 2020 أن حقن SQL شكلت 42 بالمائة من أكثر نقاط الضعف الحرجة شيوعًا.
تعد حقن SQL إمكانية لأي موقع ويب يستخدم قواعد بيانات SQL ، مثل المواقع المستندة إلى WordPress ، خاصة تلك التي تحتوي على حقول إدخال مثل نماذج جهات الاتصال ومربعات البحث.
لماذا تعتبر عمليات حقن SQL خطيرة
تعتبر عمليات حقن SQL خطيرة لعدد من الأسباب. أولاً ، يمنحون المتسللين الفرصة لسرقة المعلومات الحساسة ، مثل بيانات اعتماد تسجيل الدخول أو بيانات العملاء.
لا يستطيع المتسللون استخدام حقن SQL للحصول على البيانات وسرقتها فحسب ، بل يمكنهم أيضًا استخدامها لحذف تلك البيانات. هذا يعني أنك معرض لخطر فقدان المعلومات الخاصة والأساسية المستخدمة لتشغيل موقع الويب الخاص بك.
بالإضافة إلى ذلك ، هناك خطر الإضرار بالسمعة وفقدان الإيرادات. يمكن أن يضر خرق البيانات بعملك ، وقد تفقد ثقة العملاء أو المعجبين.
بالإضافة إلى ذلك ، يمكن أن تؤدي هذه الهجمات إلى قيام Google بإدراج موقعك في قائمة الحظر. إذا انتهى بك الأمر في هذه القائمة ، فسيتلقى العديد من الزوار المحتملين تحذيرًا بأن موقعك غير آمن. سيعود معظم هؤلاء الأشخاص وقد لا يعودون أبدًا. بالإضافة إلى ذلك ، ستقوم Google أيضًا بتخفيض تصنيفات البحث بشكل كبير - مما قد يؤدي إلى خسارة كبيرة وطويلة الأجل لحركة المرور العضوية التي يصعب التعافي منها.
كيفية الكشف عن حقن SQL
هناك بعض العلامات التي قد تشير إلى وقوعك ضحية لهجوم حقن SQL. الأول هو أنك تتلقى فجأة تدفقًا لرسائل البريد الإلكتروني عبر نموذج الاتصال بموقعك. مؤشر آخر هو ما إذا كنت تتلقى نوافذ منبثقة وإعلانات ورسائل خطأ غريبة ، خاصةً إذا كانت تعيد توجيهك إلى مواقع ويب تبدو سطحية.
لسوء الحظ ، فإن علامات هجوم حقن SQL ليست دائمًا واضحة جدًا. كما ذكرنا سابقًا ، يريد المتسللون أحيانًا استخدام الحقن لسرقة المعلومات بدلاً من إتلاف موقع الويب الخاص بك. لذلك ، قد يستخدمون طرقًا أكثر دقة تجعل عملية الكشف أكثر صعوبة.
أدوات فحص ومسح حقن SQL
الطريقة الوحيدة للتأكد مما إذا كنت مستهدفًا هي إجراء فحص على موقع الويب الخاص بك. لحسن الحظ ، هناك مجموعة متنوعة من الأدوات عبر الإنترنت التي يمكن أن تساعدك في اكتشاف حقن SQL على موقع WordPress الخاص بك.
على سبيل المثال ، يمكنك استخدام أدوات Pentest لإجراء مسحين مجانيين لموقعك على الويب.

هناك خياران: مسح ضوئي أو مسح كامل. بالنسبة إلى الأخير ، ستحتاج إلى الترقية إلى خطة مدفوعة. ما عليك سوى إدخال عنوان URL لموقع الويب الخاص بك والنقر فوق الزر Scan target . في حالة وجود أي ثغرات أمنية ، سيكشف الفحص عنها.
كيفية إزالة حقن SQL من موقع WordPress الخاص بك
1. استعادة نسخة احتياطية
أفضل خيار لإزالة حقن SQL هو استعادة نسخة احتياطية من موقعك. إذا كنت تستخدم Jetpack Backup ، فكل ما عليك فعله هو استخدام سجل النشاط لتحديد وقت حدوث الهجوم ، ثم استعادة نسخة احتياطية من قبل تلك النقطة. سيتم إعادة موقعك إلى الحالة التي كان عليها قبل الاختراق.
ومع ذلك ، من المهم ملاحظة أنه في بعض الحالات ، يتم إجراء عمليات حقن SQL شيئًا فشيئًا بمرور الوقت. قد تحتاج إلى العودة بعيدًا للعثور على نسخة احتياطية نظيفة ، مما قد يؤدي إلى فقدان البيانات.
وعلى الرغم من أن استعادة نسخة احتياطية قد تؤدي إلى إعادة تشغيل موقعك مرة أخرى ، إلا أنه في حالة سرقة بيانات حساسة ، فلا يزال يتعين عليك التعامل مع تداعيات الاختراق.
2. استخدام خدمة تنظيف الموقع
خيار آخر هو استخدام خدمة تنظيف مواقع الويب التابعة لجهة خارجية لفحص موقعك وإصلاح أي حقن SQL. Sucuri هو أحد الخيارات - ما عليك سوى إرسال موقع الويب الخاص بك إلى فريقهم والسماح لهم بالعناية بكل شيء آخر. نظرًا لأنهم خبراء ، يمكنهم إزالة البرامج الضارة من قاعدة البيانات الخاصة بك بشكل أكثر فاعلية من المطور العادي.
3. إزالة الحقن بنفسك
أخيرًا ، إذا كانت لديك خبرة في إدارة MySQL والعمل معها ، فيمكنك تنظيف قاعدة البيانات يدويًا. لاحظ ، مع ذلك ، أن هذا أسلوب متقدم وإذا كنت لا تعرف ما تفعله ، فقد يؤدي إجراء أي تغييرات إلى حدوث مشكلات.
كيفية منع حقن SQL في المستقبل
لا توجد طريقة للتأكد من أن موقعك آمن بنسبة 100٪ ، ولكن هناك إجراءات يمكنك اتخاذها لتقليل مخاطر التعرض للهجوم. دعنا نلقي نظرة على ثماني طرق يمكنك استخدامها لمنع حقن SQL في WordPress.
1. التحقق من صحة (أو تطهير) البيانات الخاصة بك
المفتاح لمنع حقن SQL في WordPress هو تأمين أي حقل إدخال يمكن استخدامه لإدخال البيانات أو المحتوى على موقع الويب الخاص بك. وهذا يشمل أقسام التعليقات والنماذج. لذلك ، من المهم التحقق من صحة البيانات التي تم إدخالها في هذه الحقول وتعقيمها عند الإرسال.
يتيح لك التحقق من صحة الإدخال والتعقيم التحقق من الأوامر المرسلة من قبل المستخدمين. يتيح لك التعقيم حتى تغيير الأوامر. إنها طريقة فعالة للتأكد من أن هذه الأوامر لا تحتوي على تعليمات برمجية ضارة أو سلاسل من الأحرف.
يضمن التحقق من الصحة أن المعلومات التي تم إدخالها في نموذج تطابق التنسيق المطلوب قبل معالجة الطلب. على سبيل المثال ، إذا كان لديك حقل إدخال لعنوان بريد إلكتروني ، فلن يتم التحقق من صحة البيانات إذا لم يكن الرمز "@" موجودًا.
تتمثل أسهل طريقة لإنشاء التحقق من صحة بيانات النموذج في إنشاء قواعد للنماذج الخاصة بك. ستعتمد عملية القيام بذلك على المكون الإضافي المحدد الذي تستخدمه. على سبيل المثال ، إذا كنت تستخدم الإصدار المتميز من Formidable Forms ، فيمكنك إضافة تنسيق قناع الإدخال المخصص الخاص بك لحقول النص.


يمكن أن تحد إضافة متطلبات تنسيق الإدخال من مخاطر إدخال SQL. يمكن أن يساعد التعقيم في ضمان أن البيانات المدخلة آمنة للمعالجة بمجرد التحقق من صحتها.
تقوم معظم ملحقات نماذج WordPress تلقائيًا بتعقيم بيانات النموذج. ومع ذلك ، يمكنك إضافة إجراءات أمان إضافية. بدلاً من الإجابات المفتوحة ، ضع في اعتبارك استخدام القوائم المنسدلة وخيارات الاختيار من متعدد. يمكنك أيضًا تقييد استخدام الأحرف الخاصة.
2. قم بتثبيت أداة أمان WordPress
يمكن لمكوِّن أمان WordPress الإضافي من Jetpack مراقبة موقعك بحثًا عن نقاط الضعف التي قد تؤدي إلى حقن SQL. يمنحك هذا فرصة لإصلاحها قبل أن يستغلها شخص ما.
من خلال مراقبة وقت التوقف عن العمل ، ستعرف أن ثانيًا يتعطل موقعك حتى تتمكن من الاستجابة بسرعة. وباستخدام النسخ الاحتياطية في الوقت الفعلي ، يمكنك استعادة موقعك بالكامل.
كما يوفر أدوات أمان مثل:
- فحص البرامج الضارة لملفات WordPress الخاصة بك ، إلى جانب إصلاحات بنقرة واحدة لمعظم المشاكل
- حلول مكافحة البريد العشوائي لحماية التعليقات ونماذج الاتصال الخاصة بك
- حماية هجوم القوة الغاشمة لإبعاد المتسللين
3. حافظ على تحديث موقع الويب الخاص بك وقاعدة البيانات في جميع الأوقات
يمكن أن يؤدي استخدام برامج وأدوات قديمة إلى تقديم مجموعة كاملة من نقاط الضعف على موقعك ليستغلها المتسللون. هذا هو السبب في أنه من المهم التأكد من تحديث موقع WordPress الخاص بك في جميع الأوقات.
حاليًا ، ما يقرب من نصف عمليات تثبيت WordPress لا تستخدم أحدث إصدار. لذلك ، قد ترغب في التفكير في تمكين التحديثات التلقائية للتأكد من أنك تقوم دائمًا بتشغيل أحدث إصدار من WordPress.
للقيام بذلك للتحديثات الأساسية ، يمكنك الانتقال إلى ملف wp-config.php في الدليل الجذر لموقعك على الويب. بعد ذلك ، انسخ مقتطف الشفرة التالي والصقه في الملف:
define( 'WP_AUTO_UPDATE_CORE', true );
يمكنك تمكين التحديثات التلقائية للمكونات الإضافية من خلال الانتقال إلى المكونات الإضافية شاشة من لوحة تحكم المشرف الخاصة بك. ثم انقر فوق قم بتمكين التحديثات التلقائية من العمود أقصى اليمين.

لتقليل نقاط الضعف ، نوصي بإزالة أي مكونات إضافية أو سمات غير مستخدمة من موقعك. من الحكمة أيضًا تحديث إصدار SQL الخاص بك. إذا كنت تستخدم cPanel في لوحة تحكم الاستضافة ، فيمكنك تحديث برنامج MySQL من لوحة التحكم. اعتمادًا على مزود الاستضافة الخاص بك ، قد تتمكن من تمكين تحديثات SQL التلقائية.
4. قم بتغيير بادئة قاعدة بيانات WordPress الخاصة بك
بشكل افتراضي ، في كل مرة تقوم فيها بتثبيت WordPress ، يستخدم نظام إدارة المحتوى "wp_" كبادئة لقاعدة البيانات الخاصة به. نوصي بشدة بتغيير هذا إلى شيء آخر ، حيث يمكن للقراصنة استخدامه لاستغلال الثغرات الأمنية عبر حقن SQL.
قبل البدء ، يجب عمل نسخة احتياطية من قاعدة البيانات الخاصة بك. بهذه الطريقة ، إذا حدث خطأ ما ، فلديك نسخة آمنة لاستعادتها.
بعد ذلك ، اتصل بموقعك عبر عميل FTP أو مدير ملفات مضيفك واستعرض ملف wp-config.php الموجود في الدليل الجذر لموقعك. في الملف ، ابحث عن سطر table_prefix ، ثم قم بتغيير "wp_" إلى شيء آخر:
$table_prefix = 'wp_a12345_';
عند الانتهاء ، احفظ الملف. هذا هو!
5. استخدم جدار حماية
هناك إستراتيجية أخرى يمكنك استخدامها للحماية من حقن SQL وهي تثبيت جدار حماية. هذا نظام أمان للشبكة يساعدك في مراقبة البيانات الواردة إلى موقع WordPress الخاص بك والتحكم فيها. يمكن لهذا الأمر اكتشاف الشفرات الضارة وتصفيتها ، بما في ذلك تلك الموجودة في هجمات حقن SQL.
هناك مجموعة متنوعة من أدوات جدار الحماية في WordPress التي يمكنك استخدامها. تتضمن بعض الخيارات الشائعة Wordfence و Sucuri. لن تمنع هذه الأدوات المهاجمين من إرسال الأوامر ، لكنها يمكن أن تساعد في منعهم من الوصول فعليًا إلى موقعك.
6. إخفاء إصدار WordPress الذي تستخدمه
إن إتاحة إصدار موقع WordPress الخاص بك للجمهور يمكن أن يسهل على المهاجمين استغلال الثغرات الأمنية المعروفة ، حيث يأتي كل إصدار بمجموعته الخاصة. لذلك ، لحماية موقعك ، نوصي بإخفاء الإصدار الذي تستخدمه.
القيام بذلك سريع وسهل. للبدء ، ما عليك سوى نسخ مقتطف الشفرة التالي:
remove_action('wp_head', 'wp_generator');
بعد ذلك ، انتقل إلى ملف function.php لموضوع WordPress الحالي الخاص بك. يمكنك القيام بذلك مباشرة من محرر القوالب في WordPress ، باستخدام عميل FTP ، أو باستخدام مدير ملفات مضيفك. الصق الكود داخل الملف ، ثم احفظ التغييرات.
7. القضاء على وظائف قاعدة البيانات غير الضرورية
كلما زادت الوظائف التي تتمتع بها قاعدة بيانات WordPress الخاصة بك ، زادت قابليتها للهجوم. لتقليل مخاطر إدخال SQL ، ضع في اعتبارك تسوية قاعدة البيانات الخاصة بك وإزالة أي وظائف ومحتوى غير ضروري.
باختصار ، يشير تطبيع قاعدة البيانات إلى عملية تنظيم بياناتك. الغرض من القيام بذلك هو التخلص من أي بيانات زائدة في قاعدة البيانات الخاصة بك والتأكد من أن جميع تبعيات البيانات منطقية. يمكنك القيام بذلك عن طريق وضع قاعدة البيانات الخاصة بك في أول نموذج عادي.
إذا كنت تريد خيارًا أكثر ملاءمة للمبتدئين لتنظيف قاعدة بيانات WordPress الخاصة بك ، فيمكنك استخدام مكون إضافي. هناك عدد قليل من الخيارات القوية للاختيار من بينها ، مثل WP-Optimize.
يساعدك هذا المكون الإضافي Freemium على تنظيف قاعدة البيانات الخاصة بك دون الحاجة إلى تشغيل أوامر SQL يدويًا من خلال phpMyAdmin. بدلاً من ذلك ، يمكنك استخدامه لتحسين قاعدة البيانات الخاصة بك مباشرةً من لوحة معلومات WordPress الخاصة بك.

يقوم بإزالة جميع المعلومات غير الضرورية من قاعدة البيانات الخاصة بك ، بما في ذلك المهملات والتعليقات غير المعتمدة. يتيح لك WP-Optimize أيضًا إلغاء تجزئة جداول قاعدة بيانات MySQL بنقرة واحدة.
8. تقييد وصول المستخدم والأذونات
يمكنك تعيين أدوار مختلفة لمستخدمي WordPress على موقع الويب الخاص بك. يمكن أن تتراوح هذه في أي مكان من المشترك إلى المسؤول. مع كل دور ، يمكنك التحكم في مقدار الوصول الممنوح وما هي "القدرات" الممنوحة لهم.
للمساعدة في تعزيز أمانك ، من الأفضل تحديد عدد الأدوار من خلال الوصول الكامل للمسؤول وأذونات المستخدم. كلما قل عدد الأشخاص القادرين على تغيير البيانات وإدخالها ، قل احتمال تعرضك لهجوم حقن SQL.
لتخصيص أدوار المستخدم والأذونات في WordPress ، يمكنك الانتقال إلى Users → All Users .

بعد ذلك ، انقر على رابط " تعديل " أسفل اسم المستخدم الذي تريد تقييد الوصول والأذونات له. في الشاشة التالية ، يمكنك تغيير دورهم باستخدام قائمة الدور المنسدلة.
عند إدارة أدوار مستخدم WordPress الخاصة بك ، نوصي أيضًا بحذف أي حسابات لم تعد قيد الاستخدام. يمكن أن يؤدي التخلص من الأدوار القديمة إلى تقليل نقاط ضعفك.
9. تجنب استخدام الإضافات الملغاة
الإضافات الفارغة هي أدوات متميزة تمت سرقتها ويتم تقديمها مجانًا. على الرغم من أنها قد تبدو صفقة رائعة ، فأنت لا تؤذي المطور الأصلي فقط من خلال عدم الدفع لهم مقابل عملهم ، بل إنك تخاطر أيضًا بالاختراق.
غالبًا ما تكون المكونات الإضافية الفارغة مليئة بالشفرات الضارة والأبواب الخلفية التي تمنح المتسللين بوابة سهلة إلى موقعك. تجنبها بأي ثمن ، وبدلاً من ذلك ، استخدم المكونات الإضافية من مصادر حسنة السمعة.
قم بحماية موقع WordPress الخاص بك من حقن SQL
لحماية موقع الويب الخاص بك وبياناتك من تهديد مجرمي الإنترنت ، من المهم أن تكون على دراية ببعض الطرق الأكثر شيوعًا المستخدمة للوصول إلى موقعك. عندما يتعلق الأمر بتعزيز أمان قاعدة البيانات الخاصة بك ، فهذا يعني أن تكون على دراية جيدة بحقن SQL.
كما ناقشنا في هذا المنشور ، يمكن أن يكون لحقن SQL تأثيرات ضارة على موقع WordPress الخاص بك ، من الكشف عن البيانات الحساسة إلى فقدان المحتوى والإيرادات. لحسن الحظ ، هناك عدد قليل من الخطوات التي يمكنك اتخاذها لاكتشاف هجمات الحقن وإزالتها ومنعها.
لا يوجد موقع ويب آمن تمامًا على الإطلاق ، ولكن باتباع النصائح والتقنيات المذكورة أعلاه ، يمكنك تقليل فرص وقوعك ضحية لحقن SQL بشكل كبير.