طَبِّقْهاتعلّم المبدأ، وطبّقه بيدكمقرر 243 · أمن الويب
تقييم الدرس 12

تزوير الطلبات CSRF والدفاع عنه

أجب عن الأسئلة ثم اضغط «صحّح ورقتي» في آخر الصفحة. ← العودة إلى الدرس

أسئلة التقييم

تقييم الدرس 12: تزوير الطلبات CSRF والدفاع عنه. إجاباتك تُحفظ تلقائيًّا على هذا الجهاز؛ أجب ثم اضغط «صحّح ورقتي».

1السؤال الأول: اختر الإجابة الصحيحة

1) أساس هجوم CSRF:
2) ماذا يرد هذا الخادم على تحويل برمز CSRF خاطئ؟
const express = require('express');const app = express();app.use(express.json());app.use(express.urlencoded({ extended: false })); const crypto = require('crypto');const csrfTokens = {};                 // لكل جلسة رمز مضاد app.get('/form-token', (req, res) => {  const t = crypto.randomBytes(16).toString('hex');  csrfTokens['sara'] = t;              // يُربط بالجلسة  res.json({ csrfToken: t });}); app.post('/transfer', (req, res) => {  if (req.body.csrfToken !== csrfTokens['sara'])    return res.status(403).json({ error: 'رمز CSRF غير صالح' });   // ✓ الرمز يثبت أن الطلب من صفحتنا  res.json({ ok: true, to: req.body.to });}); app.listen(3000);
3) الفرق الجوهري بين CSRF و XSS:
4) قيمة SameSite الأأمن ضد CSRF:
5) خاصية httpOnly تحمي الكوكي من:

2السؤال الثاني: صح أم خطأ

1) CSRF يحتاج أن تكون مسجّل الدخول في الموقع الهدف.
الصواب: صح
2) SameSite=None يفتح الباب أمام CSRF.
الصواب: صح
3) الرمز المضاد يحمي أيضًا من XSS.
الصواب: خطأ
4) استخدام GET لتنفيذ تحويل مالي ممارسة آمنة.
الصواب: خطأ
5) واجهة برمز في ترويسة Authorization محصّنة ضد CSRF أصلًا.
الصواب: صح

3السؤال الثالث: أكمل الفراغات من القائمة المنسدلة

1) خاصية الكوكي التي تمنع إرساله مع طلبات المواقع الأخرى هي .
الإجابة: SameSite
2) الرمز السرّي ضد تزوير الطلبات يسمّى الرمز .
الإجابة: المضاد (CSRF token)
3) httpOnly يمنع وصول إلى الكوكي.
الإجابة: جافاسكربت

4السؤال الرابع: أسئلة عملية

1) كوكي بخصائص httpOnly و secure و sameSite=strict محصّن ضد XSS والتنصّت و CSRF.
الصواب: صح
2) المهاجم في CSRF يرى محتوى رد البنك على الضحية.
الصواب: خطأ
أجب عن الأسئلة ثم اضغط «صحّح ورقتي».

📝 معلم؟ أرسل ملاحظة للمؤلف عن هذا الدرس