Security+ Academy · درس

إصدارات TLS ومجموعات التشفير والسرية الأمامية التامة

اضبطوا TLS 1.2/1.3، واختاروا مجموعات تشفير قوية، ومكّنوا السرية الأمامية التامة لضمان استحالة فك تشفير حركة المرور الملتقطة بأثر رجعي.

الدرس 2 من 413 خطوة

إصدارات TLS ومجموعات التشفير والسرية الأمامية التامة درس مجاني في Security+ Academy على CoddyKit. هذا هو الدرس 2 من أصل 4. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في Security+ Academy، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة Security+ Academy 4 دروس في المجموع.

نظرة عامة على بروتوكول TLS

يُعد TLS (أمان طبقة النقل) البروتوكول التشفيري الذي يؤمّن معظم الاتصالات عبر الإنترنت؛ إذ تعتمد عليه جميعًا من HTTPS وSMTPS وIMAPS وLDAPS والشبكات الافتراضية الخاصة (VPNs). يوفر TLS ثلاث خصائص أمنية: السرية (يمنع التشفير التنصّت)، والتكامل (يمنع MAC العبث)، والمصادقة (تتحقق الشهادات من هوية الخادم). تطور TLS من SSL (طبقة المقابس الآمنة)، الذي أصبح مهجورًا الآن. الإصداران الحاليان هما TLS 1.2 (المنتشر على نطاق واسع) وTLS 1.3 (الأسرع والأكثر أمانًا، والموصى به لجميع عمليات النشر الجديدة).

سجل إصدارات TLS والإصدارات المهجورة

مرّ TLS بعدة إصدارات، احتوت الإصدارات الأقدم منها على ثغرات خطيرة. SSL 2.0/3.0: مهجوران ومعرضان لهجمات POODLE وDROWN. TLS 1.0: مهجور وفقًا لـ NIST وPCI-DSS منذ عام 2020 (ومعرض لهجومي BEAST وPOODLE على شفرات الكتل). TLS 1.1: مهجور بالتزامن مع TLS 1.0. TLS 1.2: الحد الأدنى الحالي للمعيار؛ ويكون آمنًا عند تهيئته بشكل صحيح باستخدام مجموعات تشفير قوية. TLS 1.3: صدر عام 2018؛ ويزيل جميع الخوارزميات الضعيفة، ويفرض السرية إلى الأمام، ويوفر مصافحة أسرع بكثير (1-RTT بدلًا من 2-RTT)، ويمنع هجمات خفض الإصدار. يتطلب PCI-DSS 4.0 استخدام TLS 1.2 كحد أدنى، ويوصي بـ TLS 1.3.

# TLS version timeline
SSL 2.0   1995  DEPRECATED (DROWN)
SSL 3.0   1996  DEPRECATED (POODLE)
TLS 1.0   1999  DEPRECATED 2020 (BEAST, POODLE)
TLS 1.1   2006  DEPRECATED 2020 (no improvements over 1.0)
TLS 1.2   2008  MINIMUM STANDARD (strong ciphers required)
TLS 1.3   2018  RECOMMENDED (mandatory PFS, faster, secure)

# Check which TLS versions a server supports
nmap --script ssl-enum-ciphers -p 443 example.com
# Or:
openssl s_client -connect example.com:443 -tls1_2
openssl s_client -connect example.com:443 -tls1_3

مجموعات التشفير

‏مجموعة التشفير هي مجموعة من الخوارزميات التشفيرية التي تُستخدم معًا في جلسة TLS. تحدد كل مجموعة تشفير: خوارزمية تبادل المفاتيح (كيفية إنشاء مفاتيح الجلسة)، وخوارزمية المصادقة (كيفية التحقق من الخادم)، وخوارزمية التشفير الكلي (ما يُستخدم لتشفير البيانات)، وخوارزمية رمز مصادقة الرسائل (MAC) (كيفية التحقق من التكامل). يتفاوض العميل والخادم على مجموعة التشفير التي سيستخدمانها أثناء مصافحة TLS، ويختار الخادم أقوى مجموعة يدعمها الطرفان.

# TLS cipher suite naming format (TLS 1.2)
# TLS_[KeyExchange]_WITH_[Cipher]_[MAC]
TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384
  ECDHE     = Elliptic Curve Diffie-Hellman Ephemeral
  RSA       = Server certificate authentication
  AES_256_GCM = 256-bit AES in Galois/Counter Mode
  SHA384    = HMAC with SHA-384 for integrity

# TLS 1.3 simplified format (fewer components)
TLS_AES_256_GCM_SHA384
TLS_CHACHA20_POLY1305_SHA256
TLS_AES_128_GCM_SHA256

خوارزميات تبادل المفاتيح

تنشئ مرحلة تبادل المفاتيح مفتاح الجلسة من دون إرساله. تبادل مفاتيح RSA (في TLS 1.2): يشفّر العميل سرًا سابقًا للمفتاح باستخدام المفتاح العام للخادم؛ وإذا كُشف المفتاح الخاص لاحقًا، يمكن فك تشفير جميع الجلسات السابقة. DHE (Diffie-Hellman Ephemeral): ينشئ زوج مفاتيح جديدًا لكل جلسة؛ ويوفر السرية إلى الأمام، لكنه بطيء. ECDHE (Elliptic Curve DHE): يحقق السرية نفسها إلى الأمام التي يوفرها DHE، ولكن بأحجام مفاتيح أصغر وأداء أفضل؛ ولذلك فهو تبادل المفاتيح المفضل في كل من TLS 1.2 وTLS 1.3. يفرض TLS 1.3 استخدام ECDHE أو DHE، ويلغي تبادل مفاتيح RSA بالكامل.

السرية التامة إلى الأمام (PFS)

تضمن السرية التامة إلى الأمام (PFS) أنه حتى إذا كُشف المفتاح الخاص طويل الأمد للخادم لاحقًا، فلا يمكن فك تشفير الجلسات السابقة التي جرى تسجيلها. تتحقق PFS باستخدام تبادل المفاتيح المؤقت (ECDHE أو DHE)، حيث يُنشأ زوج مفاتيح مؤقت جديد لكل جلسة ثم يُتخلص منه بعد الاستخدام. ومن دون PFS (عند استخدام تبادل مفاتيح RSA)، يستطيع المهاجم تسجيل جميع جلسات TLS المشفرة اليوم، ثم فك تشفيرها بأثر رجعي عندما يحصل في النهاية على المفتاح الخاص. تفترض استراتيجية المراقبة لدى NSA، المسماة «اجمع الآن وفك التشفير لاحقًا»، أن الأهداف ستنتقل في النهاية إلى مفاتيح أقوى أو أن الحواسيب الكمّية ستكسر المفاتيح الحالية.

# Cipher suites WITH perfect forward secrecy
TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384     # Good
TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256   # Good
TLS_DHE_RSA_WITH_AES_256_CBC_SHA256        # OK (slower)

# Cipher suites WITHOUT perfect forward secrecy
TLS_RSA_WITH_AES_256_CBC_SHA256  # NO PFS - avoid
TLS_RSA_WITH_3DES_EDE_CBC_SHA    # NO PFS + weak

# Key: look for ECDHE or DHE prefix
# RSA alone as key exchange = no forward secrecy

خوارزميات التشفير الضعيفة التي يجب تجنبها

تعرضت عدة مكونات تشفير قديمة للكسر من الناحية التشفيرية، ولذلك يجب تعطيلها. شفرات NULL: لا توفر أي تشفير على الإطلاق. شفرات مستوى التصدير (هجوم FREAK): أُضعفت عمدًا للامتثال للوائح التصدير الأمريكية في تسعينيات القرن الماضي. RC4: شفرة تدفق تحتوي على انحيازات إحصائية استُغلت في الهجمات. DES و3DES: شفرات كتل ذات أحجام كتل صغيرة جدًا (هجوم SWEET32) أو أطوال مفاتيح غير كافية. MD5 وSHA-1 المستخدمة مع MAC: معرضة لثغرات التصادم. الشفرات المجهولة (aNULL): لا توفر مصادقة للخادم. يجب أن تسمح تهيئات TLS الحديثة فقط باستخدام AES-GCM وChaCha20-Poly1305 وAES-CCM كشفرات كلية.

# nginx: disable weak ciphers, enforce strong only
ssl_protocols TLSv1.2 TLSv1.3;
ssl_ciphers 'ECDHE-ECDSA-AES256-GCM-SHA384:
             ECDHE-RSA-AES256-GCM-SHA384:
             ECDHE-ECDSA-CHACHA20-POLY1305:
             ECDHE-RSA-CHACHA20-POLY1305:
             ECDHE-ECDSA-AES128-GCM-SHA256:
             ECDHE-RSA-AES128-GCM-SHA256';
ssl_prefer_server_ciphers on;

# Explicitly disable weak ciphers in Apache
SSLCipherSuite 'HIGH:!aNULL:!MD5:!3DES:!RC4:!EXPORT'

تحسينات TLS 1.3

يقدم TLS 1.3 تحسينات أمنية مهمة عديدة مقارنةً بالإصدار 1.2. فرض PFS: أُلغي تبادل مفاتيح RSA، وتستخدم جميع الجلسات ECDHE أو DHE. عدد أقل من مجموعات التشفير: لا يُسمح إلا بخمس مجموعات تشفير AEAD، ولا يمكن التفاوض على تشفير ضعيف. مصافحة أسرع: رحلة ذهاب وإياب واحدة (1-RTT) مقابل رحلتين في TLS 1.2، و0-RTT لاستئناف الجلسة (مع أن 0-RTT ينطوي على اعتبارات تتعلق بهجمات إعادة الإرسال). مصافحة مشفّرة: تُشفّر شهادة الخادم أثناء المصافحة، ما يمنع المراقبين السلبيين من تحديد الشهادة التي يتصل العميل بموقعها، وبالتالي تحديد الموقع نفسه.

# TLS 1.3 handshake (simplified)
Client -> Server: ClientHello (supported ciphers, key shares)
Server -> Client: ServerHello (chosen cipher, key share)
                  {EncryptedExtensions}
                  {Certificate}
                  {CertificateVerify}
                  {Finished}
Client -> Server: {Finished}

# Both sides now have session keys
# Total: 1 round-trip before application data
# (TLS 1.2 required 2 round trips)

# Note: {} = encrypted (cert is hidden from observers)

هجمات خفض الإصدار وPOODLE

تخدع هجمات خفض الإصدار خادم TLS وعميله لاستخدام إصدار TLS أو مجموعة تشفير أقدم وأضعف من تلك التي يدعمها الطرفان. استغل POODLE (Padding Oracle On Downgraded Legacy Encryption) حقيقة أن تطبيقات TLS كانت تعود إلى SSL 3.0 عند حدوث أخطاء في الاتصال. وكان الإجراء الوقائي هو تعطيل SSL 3.0. استغل كل من FREAK وLogjam شفرات مستوى التصدير. أما TLS_FALLBACK_SCSV فهي مجموعة تشفير زائفة يدرجها العملاء للإشارة إلى أن «هذا ليس الإصدار المفضل لدي»؛ فإذا رأى الخادم هذه الإشارة وكان يدعم إصدارًا أعلى، فإنه يجهض محاولة خفض الإصدار.

التحقق من الشهادات وتثبيتها

تعتمد مصادقة خادم TLS على تحقق العميل من سلسلة شهادة الخادم وصولًا إلى مرجع مصدّق موثوق. وتشمل الفحوص المهمة: انتهاء الصلاحية (يجب أن تكون الشهادة ضمن فترة الصلاحية)، والإلغاء (يؤكد فحص CRL أو OCSP أن الشهادة لم تُلغَ)، واسم المضيف (يجب أن يطابق SAN أو CN النطاق الذي يجري الاتصال به)، وسلسلة التوقيع (يجب أن تكون توقيعات المرجع المصدّق الوسيط والمرجع المصدّق الجذر صالحة). ويتطلب شفافية الشهادات (CT) تسجيل جميع الشهادات الموثوقة للعامة في سجلات CT التي لا تسمح إلا بالإضافة، ما يتيح اكتشاف الشهادات الصادرة بشكل خاطئ خلال دقائق من إصدارها.

# Check TLS certificate details
openssl s_client -connect example.com:443 \
  -showcerts 2>/dev/null | openssl x509 -noout \
  -text | grep -E 'Subject:|Issuer:|Not After:|SAN'

# Verify certificate chain
openssl verify -CAfile /etc/ssl/certs/ca-certificates.crt \
  server.crt

# Check OCSP status
openssl ocsp -issuer intermediate.crt \
  -cert server.crt \
  -url http://ocsp.ca.example.com \
  -text -noverify

اختبار SSL Labs وتهيئة الإعدادات

تُعد Qualys SSL Labs (ssllabs.com/ssltest) الأداة المعيارية لتقييم تهيئة TLS لخادم الويب. وتمنح الخوادم تصنيفًا يتراوح من A+ (ممتاز) إلى F (مشكلات خطيرة)، استنادًا إلى إصدارات TLS المدعومة، وقوة مجموعة التشفير، وصلاحية الشهادة، وتهيئة HSTS، ودعم السرية إلى الأمام، ومقاومة الهجمات المعروفة. يتطلب تصنيف A+: استخدام TLS 1.2 أو أحدث فقط، وجميع شفرات ECDHE، وشهادة صالحة، وتهيئة HSTS مع التحميل المسبق. ينبغي للمؤسسات إجراء اختبارات SSL Labs بعد التهيئة الأولية، ثم تكرارها بعد أي تغييرات على حزمة TLS. وتتطلب العديد من أطر الامتثال، مثل PCI-DSS، إجراء تقييمات دورية لتهيئة TLS.

أفضل ممارسات إدارة شهادات TLS

تتسبب شهادات TLS منتهية الصلاحية في انقطاع الخدمات وتحذيرات بشأن ثقة المستخدم، وهي أمور يستغلها المهاجمون. وتشمل إدارة دورة حياة الشهادات: تتبع جميع الشهادات في جرد الشهادات، وتهيئة تنبيهات انتهاء الصلاحية قبل 30 يومًا على الأقل من الانتهاء، وأتمتة التجديد باستخدام بروتوكول ACME (Let's Encrypt وCertbot)، واستخدام فترات صلاحية قصيرة للشهادات (90 يومًا للشهادات العامة) لتقليل نافذة المخاطر الناتجة عن الاختراق، واستخدام شهادات أحرف البدل بحذر (*.example.com)، لأن اختراق شهادة أحرف البدل يؤثر في جميع النطاقات الفرعية. تعمل منصات إدارة الشهادات (Venafi وDigiCert CertCentral) على أتمتة الاكتشاف وإدارة دورة الحياة عبر مخزونات الشهادات الكبيرة.

# Auto-renew Let's Encrypt cert with Certbot
# Install Certbot
apt install certbot python3-certbot-nginx

# Issue certificate
certbot --nginx -d example.com -d www.example.com

# Certbot auto-renewal (runs twice daily via systemd timer)
systemctl status certbot.timer

# Test renewal without actually renewing
certbot renew --dry-run

# Verify cert expiry date
openssl x509 -enddate -noout -in /etc/ssl/certs/example.crt
# Output: notAfter=Feb 20 12:00:00 2025 GMT

اختبار سريع

اختبر مدى فهمكم لمفاهيم CompTIA Security+ (SY0-701) الواردة في هذا الدرس.

مراجعة الدرس

لقد تعلمتم في هذا الدرس أن TLS 1.0/1.1 مهجوران وأن TLS 1.2 هو الحد الأدنى للمعيار، بينما يُفضّل TLS 1.3 الذي يفرض PFS ويستخدم مصافحات مشفّرة، وأن مجموعات التشفير تحدد تبادل المفاتيح (مع تفضيل ECDHE)، والتشفير الكلي (AES-GCM وChaCha20)، وخوارزميات MAC، وأن السرية التامة إلى الأمام تتطلب تبادل مفاتيح مؤقتًا (DHE/ECDHE) بحيث لا يمكن فك تشفير الجلسات السابقة حتى بعد كشف المفتاح. بعد ذلك سنستكشف DNS الآمن: DNSSEC وDNS عبر HTTPS.

البدء مجانًا

تعلم Security+ Academy مع معلم ذكاء اصطناعي — مجانًا

اكتب وقم بتشغيل أكوادك الفعلية في المتصفح، واحصل على مساعدة فورية من معلم ذكاء اصطناعي متاح 24/7، واستمر من حيث توقفت على الويب أو في التطبيق.

الدورات
30
الدروس
120

الأسئلة الشائعة

هل درس «إصدارات TLS ومجموعات التشفير والسرية الأمامية التامة» مجاني؟

نعم — نص درس «إصدارات TLS ومجموعات التشفير والسرية الأمامية التامة» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة Security+ Academy، انتقل إلى CoddyKit PRO. تتضمن دورة Security+ Academy 4 دروس في المجموع.

ماذا ستتعلم في «إصدارات TLS ومجموعات التشفير والسرية الأمامية التامة»؟

اضبطوا TLS 1.2/1.3، واختاروا مجموعات تشفير قوية، ومكّنوا السرية الأمامية التامة لضمان استحالة فك تشفير حركة المرور الملتقطة بأثر رجعي. تتمرن على Security+ Academy مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.

هل أحتاج إلى خبرة سابقة لأبدأ Security+ Academy؟

لا تُشترط خبرة سابقة. Security+ Academy على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 2 من أصل 4.

كم من الوقت يستغرق درس «إصدارات TLS ومجموعات التشفير والسرية الأمامية التامة»؟

معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.

هل يمكنني كتابة وتشغيل أكواد في درس Security+ Academy هذا؟

نعم. كل درس في Security+ Academy يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.

جميع الدروس في هذه الدورة

  1. استبدال البروتوكولات غير الآمنة: Telnet مقابل SSH وFTP مقابل SFTP
  2. إصدارات TLS ومجموعات التشفير والسرية الأمامية التامة
  3. نظام DNS الآمن: DNSSEC وDNS عبر HTTPS (DoH)
  4. IPsec وبروتوكولات VPN وأمان الوصول عن بُعد
← العودة إلى Security+ Academy