تم إصدار curl 7.71.0 لإصلاح اثنتين من نقاط الضعف

متاح إصدار جديد من الأداة المساعدة لاستقبال وإرسال البيانات عبر الشبكة - حليقة 7.71.0، والذي يوفر القدرة على صياغة الطلب بمرونة عن طريق تحديد المعلمات مثل ملف تعريف الارتباط وuser_agent والمرجع وأي رؤوس أخرى. يدعم cURL بروتوكولات HTTP وHTTPS وHTTP/2.0 وHTTP/3 وSMTP وIMAP وPOP3 وTelnet وFTP وLDAP وRTSP وRTMP وبروتوكولات الشبكة الأخرى. وفي الوقت نفسه، تم إصدار تحديث لمكتبة libcurl، التي يتم تطويرها بالتوازي، مما يوفر واجهة برمجة تطبيقات لاستخدام جميع وظائف الضفيرة في البرامج بلغات مثل C وPerl وPHP وPython.

يضيف الإصدار الجديد خيار "--retry-all-errors" لإعادة محاولة العمليات في حالة حدوث أي أخطاء ويصلح ثغرتين أمنيتين:

  • عالي التأثر CVE-2020-8177 يسمح لك بالكتابة فوق ملف محلي في النظام عند الوصول إلى خادم يتحكم فيه المهاجم. تظهر المشكلة فقط عند استخدام الخيارات "-J" ("-اسم الرأس البعيد") و"-i" ("—الرأس") في وقت واحد. يتيح لك الخيار "-J" حفظ الملف بالاسم المحدد في الرأس
    "التصرف في المحتوى". إذا كان الملف الذي يحمل نفس الاسم موجودًا بالفعل، فإن برنامج الضفيرة يرفض عادةً إجراء الكتابة الفوقية، ولكن إذا كان الخيار "-i" موجودًا، فسيتم كسر منطق التحقق وتتم الكتابة فوق الملف (يتم إجراء الفحص في المرحلة لتلقي نص الاستجابة، ولكن مع خيار "-i" يتم عرض رؤوس HTTP أولاً ولديها وقت لحفظها قبل البدء في معالجة نص الاستجابة). تتم كتابة رؤوس HTTP فقط في الملف، ولكن يمكن للخادم إرسال بيانات عشوائية بدلاً من الرؤوس وسيتم كتابتها.

  • عالي التأثر CVE-2020-8169 قد يؤدي إلى تسرب بعض كلمات مرور الوصول إلى الموقع (Basic، Digest، NTLM، إلخ) إلى خادم DNS. باستخدام الرمز "@" في كلمة المرور، والذي يُستخدم أيضًا كفاصل لكلمة المرور في عنوان URL، عند تشغيل إعادة توجيه HTTP، سيرسل حليقة جزء كلمة المرور بعد الرمز "@" مع المجال لحلها الاسم. على سبيل المثال، إذا قمت بتوفير كلمة المرور "passw@rd123" واسم المستخدم "dan"، فسيقوم curl بإنشاء عنوان URL "https://dan:passw@"[البريد الإلكتروني محمي]/path" بدلاً من "https://dan:passw%"[البريد الإلكتروني محمي]/path" وسيرسل طلبًا لحل المضيف "[البريد الإلكتروني محمي]" بدلاً من "example.com".

    تظهر المشكلة عند تمكين دعم عمليات إعادة توجيه HTTP النسبية (يتم تعطيله عبر CURLOPT_FOLLOWLOCATION). إذا تم استخدام DNS التقليدي، فيمكن الحصول على معلومات حول جزء من كلمة المرور من خلال موفر DNS ومن خلال مهاجم لديه القدرة على اعتراض حركة مرور شبكة النقل (حتى لو كان الطلب الأصلي عبر HTTPS، نظرًا لأن حركة مرور DNS غير مشفرة). عند استخدام DNS-over-HTTPS (DoH)، يقتصر التسرب على مشغل DoH.

المصدر: opennet.ru

إضافة تعليق