إصدار OpenSSH 8.0

بعد خمسة أشهر من التطوير المقدمة الإفراج عن OpenSSH 8.0، تطبيق مفتوح للعميل والخادم للعمل عبر بروتوكولي SSH 2.0 وSFTP.

التغييرات الرئيسية:

  • تمت إضافة الدعم التجريبي لطريقة تبادل المفاتيح المقاومة لهجمات القوة الغاشمة على الكمبيوتر الكمي إلى ssh وsshd. تعد أجهزة الكمبيوتر الكمومية أسرع بشكل جذري في حل مشكلة تحليل الأعداد الطبيعية إلى عوامل أولية، والتي تكمن وراء خوارزميات التشفير غير المتماثلة الحديثة ولا يمكن حلها بفعالية باستخدام المعالجات الكلاسيكية. تعتمد الطريقة المقترحة على الخوارزمية NTRU برايم (الدالة ntrup4591761)، التي تم تطويرها لأنظمة التشفير ما بعد الكم، وطريقة تبادل المفاتيح ذات المنحنى الإهليلجي X25519؛
  • في sshd، لم تعد توجيهات الاستماع وPermitOpen تدعم صيغة "المضيف/المنفذ" القديمة، والتي تم تنفيذها في عام 2001 كبديل لـ "المضيف: المنفذ" لتبسيط العمل مع IPv6. في الظروف الحديثة، تم إنشاء بناء الجملة "[::6]:1" لـ IPv22، وغالبًا ما يتم الخلط بين "المضيف/المنفذ" والإشارة إلى الشبكة الفرعية (CIDR)؛
  • يدعم الآن كل من ssh وssh-agent وssh-add المفاتيح ECDSA في رموز PKCS#11؛
  • في ssh-keygen، تمت زيادة حجم مفتاح RSA الافتراضي إلى 3072 بت، وفقًا لتوصيات NIST الجديدة؛
  • يسمح ssh باستخدام الإعداد "PKCS11Provider=none" لتجاوز توجيه PKCS11Provider المحدد في ssh_config؛
  • يوفر sshd عرض سجل للمواقف التي يتم فيها إنهاء الاتصال عند محاولة تنفيذ الأوامر المحظورة بواسطة تقييد "ForceCommand=internal-sftp" في sshd_config؛
  • في ssh، عند عرض طلب لتأكيد قبول مفتاح مضيف جديد، بدلاً من الاستجابة "نعم"، يتم الآن قبول بصمة المفتاح الصحيحة (استجابة للدعوة لتأكيد الاتصال، يمكن للمستخدم نسخ يتم استلام التجزئة المرجعية بشكل منفصل عبر الحافظة، حتى لا تتم مقارنتها يدويًا)؛
  • يوفر ssh-keygen زيادة تلقائية لرقم تسلسل الشهادة عند إنشاء التوقيعات الرقمية لشهادات متعددة في سطر الأوامر؛
  • تمت إضافة خيار جديد "-J" إلى scp وsftp، وهو ما يعادل إعداد ProxyJump؛
  • في ssh-agent وssh-pkcs11-helper وssh-add، تمت إضافة معالجة خيار سطر الأوامر "-v" لزيادة محتوى المعلومات للمخرجات (عند تحديده، يتم تمرير هذا الخيار إلى العمليات الفرعية، من أجل على سبيل المثال، عند استدعاء ssh-pkcs11-helper من ssh-agent );
  • تمت إضافة الخيار "-T" إلى ssh-add لاختبار مدى ملاءمة المفاتيح في ssh-agent لإجراء عمليات إنشاء التوقيع الرقمي والتحقق منه؛
  • يطبق sftp-server دعمًا لامتداد البروتوكول "lsetstat at openssh.com"، الذي يضيف دعمًا لعملية SSH2_FXP_SETSTAT لـ SFTP، ولكن دون اتباع الروابط الرمزية؛
  • تمت إضافة خيار "-h" إلى sftp لتشغيل أوامر chown/chgrp/chmod مع الطلبات التي لا تستخدم روابط رمزية؛
  • يوفر sshd إعداد متغير البيئة $SSH_CONNECTION لـ PAM؛
  • بالنسبة إلى sshd، تمت إضافة وضع مطابقة "المطابقة النهائية" إلى ssh_config، وهو مشابه لـ "المطابقة الأساسية"، ولكنه لا يتطلب تمكين تسوية اسم المضيف؛
  • تمت إضافة دعم للبادئة "@" إلى sftp لتعطيل ترجمة مخرجات الأوامر المنفذة في الوضع الدفعي؛
  • عند عرض محتويات الشهادة باستخدام الأمر
    يعرض الآن "ssh-keygen -Lf /path/certificate" الخوارزمية المستخدمة بواسطة CA للتحقق من صحة الشهادة؛

  • تحسين الدعم لبيئة Cygwin، على سبيل المثال توفير مقارنة غير حساسة لحالة الأحرف بين أسماء المجموعات والمستخدمين. تم تغيير عملية sshd في منفذ Cygwin إلى cygsshd لتجنب التداخل مع منفذ OpenSSH الذي توفره Microsoft؛
  • تمت إضافة القدرة على البناء باستخدام فرع OpenSSL 3.x التجريبي؛
  • مستبعد عالي التأثر (CVE-2019-6111) في تنفيذ الأداة المساعدة scp، والتي تسمح بالكتابة فوق الملفات العشوائية في الدليل الهدف من جانب العميل عند الوصول إلى خادم يتحكم فيه مهاجم. المشكلة هي أنه عند استخدام scp، يقرر الخادم الملفات والأدلة التي سيتم إرسالها إلى العميل، ويتحقق العميل فقط من صحة أسماء الكائنات التي تم إرجاعها. يقتصر التحقق من جانب العميل على حظر السفر خارج الدليل الحالي ("../") فقط، ولكنه لا يأخذ في الاعتبار نقل الملفات بأسماء مختلفة عن تلك المطلوبة في الأصل. في حالة النسخ العودي (-r)، بالإضافة إلى أسماء الملفات، يمكنك أيضًا معالجة أسماء الدلائل الفرعية بطريقة مماثلة. على سبيل المثال، إذا قام المستخدم بنسخ الملفات إلى الدليل الرئيسي، فيمكن للخادم الذي يتحكم فيه المهاجم إنتاج ملفات بالأسماء .bash_aliases أو .ssh/authorized_keys بدلاً من الملفات المطلوبة، وسيتم حفظها بواسطة الأداة المساعدة scp في ملف المستخدم. الدليل الرئيسي.

    في الإصدار الجديد، تم تحديث الأداة المساعدة scp للتحقق من المراسلات بين أسماء الملفات المطلوبة وتلك المرسلة بواسطة الخادم، والتي يتم إجراؤها من جانب العميل. قد يتسبب هذا في حدوث مشكلات في معالجة القناع، حيث قد تتم معالجة أحرف توسيع القناع بشكل مختلف على جانب الخادم والعميل. في حالة تسبب هذه الاختلافات في توقف العميل عن قبول الملفات في scp، تمت إضافة الخيار "-T" لتعطيل التحقق من جانب العميل. لتصحيح المشكلة بشكل كامل، يلزم إعادة صياغة مفاهيمية لبروتوكول scp، وهو في حد ذاته قديم بالفعل، لذا يوصى باستخدام بروتوكولات أكثر حداثة مثل sftp وrsync بدلاً من ذلك.

المصدر: opennet.ru

إضافة تعليق