الفرق بين XSS و SQL Injection

جدول المحتويات:

الفرق بين XSS و SQL Injection
الفرق بين XSS و SQL Injection

فيديو: الفرق بين XSS و SQL Injection

فيديو: الفرق بين XSS و SQL Injection
فيديو: SQL Injection شرح لحقنة السيكول 2024, يوليو
Anonim

الاختلاف الرئيسي بين XSS و SQL Injection هو أن XSS (أو البرمجة النصية عبر الموقع) هي نوع من الثغرات الأمنية التي تحقن رمزًا ضارًا إلى موقع الويب بحيث يتم تشغيل الكود في مستخدمي هذا الموقع من خلال المستعرض بينما يعد حقن SQL آلية أخرى لاختراق مواقع الويب تضيف رمز SQL إلى مربع إدخال نموذج الويب للوصول إلى الموارد أو لإجراء تغييرات على البيانات.

تحتفظ كل منظمة بمواقع الويب ، مما يساعد على تحسين الأعمال والربحية. يحتوي تطبيق الويب على جانب العميل وجانب الخادم. يتضمن جانب العميل واجهات المستخدم للتفاعل مع التطبيق.يتضمن جانب الخادم قاعدة البيانات. عادة ، هناك تهديدات تؤثر على حسن سير التطبيق. اثنان منهم هما XSS و SQL injection.

ما هو XSS؟

يرمز XSS إلى Cross Site Scripting ، وهو أحد أكثر هجمات مواقع الويب شيوعًا. يمكن أن يؤثر ذلك على موقع الويب المحدد هذا بالإضافة إلى مستخدمي هذا الموقع. اللغة الأكثر شيوعًا لكتابة التعليمات البرمجية الضارة لهجوم XSS هي JavaScript. يمكن لـ XSS سرقة ملفات تعريف الارتباط الخاصة بالمستخدم وتغيير إعدادات المستخدم وعرض تنزيلات البرامج الضارة المختلفة وغير ذلك الكثير.

الفرق الرئيسي بين XSS و SQL Injection
الفرق الرئيسي بين XSS و SQL Injection

الشكل 01: XSS

هناك نوعان من XSS. هم XSS المستمر وغير المستمر. في XSS المستمر ، يتم حفظ التعليمات البرمجية الضارة إلى الخادم في قاعدة البيانات. ثم سيتم تشغيله على الصفحة العادية. في XSS غير الدائم ، سيتم إرسال الكود الضار المحقون إلى الخادم عبر طلب HTTP.عادة ، يمكن أن تحدث هذه الهجمات في حقول البحث.

ما هو حقن SQL؟

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

الفرق بين XSS و SQL Injection
الفرق بين XSS و SQL Injection

الشكل 02: حقن SQL

علاوة على ذلك ، بعض الأمثلة على إدخالات SQL هي كما يلي ؛

يمكن أن يكون هناك موقف للبحث عن مستخدم من خلال معرف المستخدم. في حالة عدم وجود طريقة للتحقق من صحة الإدخال ، يمكن للمستخدم إدخال إدخال خاطئ. إذا قام بإدخال معرف المستخدم كـ 100 أو 1=1 ، فسيتم إنشاء عبارة SQL على النحو التالي.

حددمن المستخدمين حيث معرف المستخدم=100 أو 1=1 ؛

يمكن أن تعيد عبارة SQL هذه جميع المستخدمين في قاعدة البيانات لأن 1=1 يكون دائمًا صحيحًا. إذا كان هذا مخترقًا وإذا كانت قاعدة البيانات تحتوي على بيانات سرية مثل كلمات المرور ، فيمكنه الوصول إلى أسماء المستخدمين وكلمات المرور. هذا مثال على حقن SQL.

ما هو الفرق بين XSS و SQL Injection؟

XSS هو نوع من الثغرات الأمنية في تطبيقات الويب التي تمكن المهاجمين من حقن البرامج النصية من جانب العميل في صفحات الويب التي يراها المستخدمون الآخرون. حقن SQL عبارة عن تقنية لحقن التعليمات البرمجية ، والتي تهاجم التطبيقات التي تعتمد على البيانات والتي تقوم بإدراج عبارات SQL في إدخال مقدم للتنفيذ.

يقوم XSS بحقن كود خبيث في موقع الويب ، بحيث يتم تشغيل الكود في مستخدمي هذا الموقع بواسطة المتصفح. من ناحية أخرى ، يضيف حقن SQL كود SQL إلى مربع إدخال نموذج الويب للوصول إلى الموارد أو لإجراء تغييرات على البيانات.هذا هو الفرق الرئيسي بين XSS و SQL Injection. اللغة الأكثر شيوعًا في XSS هي JavaScript بينما يستخدم حقن SQL لغة SQL.

الفرق بين XSS و SQL Injection في شكل جدولي
الفرق بين XSS و SQL Injection في شكل جدولي

ملخص - XSS مقابل حقن SQL

الفرق بين XSS و SQL Injection هو أن XSS يضخ كودًا ضارًا إلى موقع الويب ، بحيث يتم تنفيذ التعليمات البرمجية في مستخدمي هذا الموقع من خلال المتصفح بينما يضيف حقن SQL كود SQL إلى مربع إدخال نموذج الويب إلى الوصول إلى الموارد أو لإجراء تغييرات على البيانات.

موصى به: