راستلز
Rustls (تُنطق " راستلز " [ 2 ] ) هي تطبيق مفتوح المصدر لبروتوكول أمان طبقة النقل (TLS) مكتوب بلغة البرمجة Rust . يُعدّ TLS أساسيًا لأمن الإنترنت ، ويهدف Rustls إلى تمكين اتصالات TLS آمنة وسريعة . يستخدم Rustls آلية Rust لفرض أمان الذاكرة لتقليل مخاطر الثغرات الأمنية . وهو جزء من الجهود المبذولة لتحسين أمن الإنترنت من خلال استبدال مكتبات البرامج غير الآمنة للذاكرة ، مثل OpenSSL ، ببدائل آمنة للذاكرة.
الفريق والتمويل
بدأ جو بير-بيكستون مشروع Rustls في عام 2016، ولا يزال المطور الرئيسي له حتى عام 2024. [ 1 ] ترعى مجموعة أبحاث أمن الإنترنت (ISRG)، وهي منظمة غير ربحية مقرها الولايات المتحدة، المشروع منذ عام 2021 كجزء من مبادرة Prossimo. [ 3 ] [ 4 ] تهدف ISRG إلى جعل Rustls بديلاً عمليًا لـ OpenSSL ، الذي يُستخدم على نطاق واسع من قِبل خوادم الإنترنت ، ولكنه صعب الاستخدام بشكل صحيح، ويعاني من ثغرات أمنية ، مثل Heartbleed ، الناتجة عن استخدام غير آمن للذاكرة. [ 3 ] [ 5 ]
دفعت ISRG لعدد من المبرمجين للعمل على Rustls، بمن فيهم بير-بيكستون، ودانيال مكارني، وديركجان أوشتمان، بتمويل من جوجل وشركات ومنظمات أخرى. [ 3 ] [ 6 ] في عام 2023، منحت مبادرة ألفا-أوميغا التابعة لمؤسسة أمن المصادر المفتوحة ISRG مبلغ 530,000 دولار أمريكي لتطوير خيار استخدام واجهات خلفية تشفيرية مختلفة، ولمشروع Rust for Linux المنفصل . [ 7 ] [ 8 ] جاء هذا التمويل من جوجل، وخدمات أمازون السحابية ، ومايكروسوفت . [ 9 ] كما منحت خدمات أمازون السحابية ISRG مليون دولار أمريكي في عام 2023 لمشاريع أمان الذاكرة، بما في ذلك Rustls. [ 10 ] وقدّم صندوق التكنولوجيا السيادي ، المدعوم من الحكومة الألمانية، 1.5 مليون دولار أمريكي لـ ISRG في عام 2023 للعمل على Rustls ومشاريع أخرى توفر إصدارات آمنة للذاكرة من أدوات المصادر المفتوحة الضرورية لأمن الإنترنت. [ 11 ] [ 12 ] منحت مؤسسة كريج نيومارك الخيرية 100,000 دولار أمريكي لمجموعة أبحاث سلامة الذاكرة (ISRG) لمشاريع سلامة الذاكرة في عام 2024. [ 13 ] وجاء تمويل إضافي من Fly.io، [ 14 ] وهي منصة سحابية تستخدم لغة Rustls. [ 15 ]
شجع مكتب المدير الوطني للأمن السيبراني بالولايات المتحدة العمل على برمجيات أمنية آمنة للذاكرة [ 16 ] وأشاد بفريق Rustls. [ 14 ] منحت جوجل مكافآت نظير المصادر المفتوحة لبير-بيكستون وأوتشتمان لعملهما على Rustls. [ 17 ]
الهندسة المعمارية والميزات
Rustls هي مكتبة برمجية منخفضة المستوى تركز على تطبيق بروتوكول TLS . [ 18 ] وهذا يعني أنها لا تدعم بروتوكولات الإنترنت الأخرى بشكل مباشر، مثل HTTPS ، ولكن يمكن للبرامج التي تُطبّق بروتوكولات أخرى استخدام Rustls كمكوّن. [ 18 ]
يستخدم Rustls افتراضيًا أدوات التشفير الأساسية من مكتبة Amazon Web Services Libcrypto for Rust ( aws-lc-rs )، التي تدعم معايير معالجة المعلومات الفيدرالية (FIPS) . [ 19 ] يسمح Rustls باستخدام مكتبات تشفير بديلة بدلًا من aws-lc-rs ، مثل ring . [ 19 ] يدعم المشروع تجريبيًا التشفير ما بعد الكمومي : وهو أسلوب لتبادل المفاتيح مع آلية تغليف مفاتيح خاصة ( Kyber ). [ 20 ]
يستخدم Rustls نسخةً معدلةً من مكتبة webpki للتحقق من شهادات البنية التحتية للمفاتيح العامة ، وهي خطوةٌ في عملية المصافحة لبروتوكول TLS . [ 2 ] [ 21 ] يدعم Rustls مؤشر اسم الخادم (SNI)، الذي يسمح لخادم الويب بعرض مواقع HTTPS متعددة على نفس عنوان IP بشهادات مختلفة. [ 22 ] كما يدعم شهادات TLS التي تحتوي على عناوين IP بدلاً من أسماء النطاقات . [ 23 ]
يمكن لبرامج C استخدام Rustls من خلال واجهة برمجة تطبيقات الوظائف الخارجية rustls -ffi . [ 2 ] [ 5 ] على سبيل المثال، cURL أداة شائعة مكتوبة بلغة C، وتتيح استخدام Rustls من خلال rustls-ffi . [ 24 ] [ 25 ] كما تحتوي Rustls على طبقة توافق مع OpenSSL تسمح بتهيئة خادم الويب Nginx واسع الانتشار لاستخدام Rustls بدلاً من OpenSSL. [ 14 ] [ 26 ]
يتوفر Rustls بموجب تراخيص برمجيات حرة متعددة : Apache 2.0 و MIT و ISC . [ 1 ]
التقييمات
في عام 2020، مولت مؤسسة الحوسبة السحابية الأصلية تدقيقًا أمنيًا لـ Rustls ومكتبتين من مكتبات Rust التي تستخدمها، وهما ring و webpki ، وقد أسفر ذلك عن نتائج إيجابية. [ 27 ]
في عام 2019، أظهرت الاختبارات المعيارية التي أجراها مطورو Rustls أداءً أفضل من OpenSSL . [ 28 ] وفي عام 2024، أجرى المشروع مقارنات أداء جديدة مع أحدث إصدار من OpenSSL، والتي أظهرت بعض الحالات التي كان فيها Rustls أسرع أو أكثر كفاءة، وحالات أخرى كان فيها أداء OpenSSL أفضل. [ 29 ]
الاستخدامات
كما هو الحال مع تطبيقات TLS الأخرى، قد يستخدم مستخدم الحاسوب Rustls دون علمه، كجزء أساسي من تطبيق أو موقع ويب. ويمكن للمبرمج استخدام Rustls مباشرةً أو عن طريق تهيئة مكتبة أو أداة ذات مستوى أعلى لاستخدامه. ويُستخدم Rustls تحديدًا في بعض المشاريع التي تسعى لضمان أمان سلسلة توريد البرمجيات لديها . [ 30 ] وقد أوصت وكالة الأمن السيبراني وأمن البنية التحتية الأمريكية باستخدام المنتجات المكتوبة بلغات آمنة للذاكرة كجزء من مبادرتها "الأمان بالتصميم". [ 31 ]
تدعم بعض المكتبات Rustls كأحد الخيارات المتاحة لتطبيقات TLS. توفر مكتبة عميل HTTP reqwest خيار استخدام Rustls لبروتوكول TLS بدلاً من مكتبة TLS الافتراضية للنظام (على سبيل المثال، في نظام Windows ، المكتبة الافتراضية هي واجهة موفر دعم الأمان ). [ 32 ] [ 33 ] في عام 2020، مكّن مهندس برمجيات في ISRG استخدام Rustls كخادم TLS خلفي لـ cURL . [ 34 ] [ 35 ] يدعم s2n-quic، وهو تطبيق لبروتوكول شبكة QUIC مكتوب بلغة Rust، كلاً من Rustls و s2n-tls لبروتوكول TLS. [ 36 ]
في عام ٢٠٢١، موّلت جوجل إنشاء mod_tls ، وهي وحدة TLS جديدة لخادم Apache HTTP باستخدام Rustls. [ ٣٧ ] [ ٣٨ ] تهدف هذه الوحدة الجديدة إلى أن تكون خليفةً لوحدة mod_ssl التي تستخدم OpenSSL، كخيار افتراضي أكثر أمانًا. [ ٣٧ ] [ ٣٩ ] اعتبارًا من أغسطس ٢٠٢٤، أصبحت mod_tls متاحة في أحدث إصدار من Apache، ولكنها لا تزال مصنفة كوحدة تجريبية. [ ٤٠ ] تقترح جمعية الإنترنت ، وهي منظمة غير ربحية تُدافع عن إنترنت مفتوح وآمن ، أن تستخدم المؤسسات هذه الوحدة كخطوة نحو تعزيز أمان الذاكرة. [ ٤١ ]
يُعدّ Rustls تطبيق TLS الافتراضي في بعض التطبيقات. يستخدم برنامج cargo_audit، الذي يتحقق من تبعيات مشاريع Rust بحثًا عن الثغرات الأمنية، Rustls. [ 42 ] يتضمن Linkerd ، الذي "يُضيف الأمان والمراقبة والموثوقية لأي مجموعة Kubernetes "، خادم وكيل مبنيًا باستخدام Rustls. [ 43 ] يستخدم Wolfi، وهو أداة لإنشاء حاويات Linux آمنة من حيث الذاكرة، Rustls. [ 44 ] [ 45 ] في عام 2024، أعلنت ISRG عن خطط لبدء استبدال OpenSSL بـ Rustls في Let's Encrypt ، وهي هيئة إصدار الشهادات المجانية التابعة لها والتي يستخدمها مئات الملايين من مواقع الويب. [ 14 ] [ 46 ]
انظر أيضاً
مراجع
- 1 2 3 4 "Rustls README" . GitHub . 30 يوليو 2024. تم الاطلاع عليه في 20 أغسطس 2024 .
- 1 2 3 إيدج، جيك (4 مايو 2021). "راستلس: أمان الذاكرة لبروتوكول TLS" . LWN.net . تم الاطلاع عليه في 20 أغسطس 2024 .
- 1 2 3 ميلانسون، مايك (23 أبريل 2021). "Rustls تسعى لتوفير بديل آمن للذاكرة لـ OpenSSL" . The New Stack . Insight Partners . تم الاطلاع عليه في 20 أغسطس 2024 .
- ↑ آس، جوش (20 أبريل 2021). "إعداد Rustls لاعتماد أوسع" . بروسيمو . مجموعة أبحاث أمن الإنترنت . تم الاطلاع عليه في 20 أغسطس 2024 .
- 1 2 فوغان-نيكولز، ستيفن ج. (2 نوفمبر 2021). "بروسيمو: جعل ذاكرة الإنترنت آمنة" . ذا نيو ستاك . إنسايت بارتنرز . تم الاسترجاع في 20 أغسطس 2024 .
- ↑ "Rustls" . Prossimo . مجموعة أبحاث السلامة على الإنترنت . تم الاطلاع عليه بتاريخ 21 أغسطس 2024 .
- ↑ غران، سارة (18 سبتمبر 2023). "تطوير Rustls وRust لنظام Linux بدعم من OpenSSF" . مؤسسة أمن المصادر المفتوحة (OpenSSF) . مؤسسة Linux . تم الاطلاع عليه في 20 أغسطس 2024 .
- ↑ "مؤسسة OpenSSF ترحب بأعضاء جدد لدعم تأمين البرمجيات مفتوحة المصدر" . ITSecurityWire . ١٨ سبتمبر ٢٠٢٣. تم الاطلاع عليه في ٣ سبتمبر ٢٠٢٤ .
- ↑ "تعليق من أمازون ويب سيرفيسز (بشأن: رد على طلب معلومات حول أمن البرمجيات مفتوحة المصدر، أمازون ويب سيرفيسز)" . Regulations.gov . 8 نوفمبر 2023. تم الاطلاع عليه في 22 أغسطس 2024 .
- ↑ آس، جوش (11 مايو 2023). "تخصيص AWS مليون دولار لتعزيز أمان الذاكرة في الأجزاء الحيوية من الويب" . بروسيمو . مجموعة أبحاث أمان الإنترنت . تم الاطلاع عليه بتاريخ 22 أغسطس 2024 .
- ↑ غران، سارة (11 يوليو 2023). "1.5 مليون دولار من صندوق التكنولوجيا السيادي لدعم أمن الذاكرة" . مجموعة أبحاث أمن الإنترنت . تم الاطلاع عليه في 20 أغسطس 2024 .
- ↑ تاراكيي، تارا (22 مايو 2024). "حول لغة رست، وأمان الذاكرة، والبنية التحتية مفتوحة المصدر" . صندوق التكنولوجيا السيادية . تم الاطلاع عليه في 20 أغسطس 2024 .
- ↑ غران، سارة (12 مارس 2024). "البيت الأبيض وكريغ نيومارك يدعمان برنامج Memory Safe" . مجموعة أبحاث أمن الإنترنت . تم الاطلاع عليه في 3 سبتمبر 2024 .
- 1 2 3 4 آس، جوش (8 مايو 2024). "Rustls يكتسب توافقًا مع OpenSSL وNginx" . بروسيمو . مجموعة أبحاث أمن الإنترنت . تم الاسترجاع في 20 أغسطس 2024 .
- ↑ "تطبيقات الرعاية الصحية على فلاي" . فلاي . تم الاطلاع عليه بتاريخ 22 أغسطس 2024 .
- ↑ وانغ، دانا؛ أراساراتنام، أومخار (26 فبراير 2024). "مؤسسة OpenSSF تدعم جهود البيت الأبيض لبناء برمجيات أكثر أمانًا وقابلية للقياس" . مؤسسة أمن المصادر المفتوحة (OpenSSF) . مؤسسة لينكس . تم الاطلاع عليه في 22 أغسطس 2024 .
- ↑ تاباك، ماريا (22 مارس 2022). "مكافأة المساهمين في لغة Rust بمكافآت الأقران" . مدونة جوجل مفتوحة المصدر . تم الاطلاع عليه في 22 أغسطس 2024 .
- 1 2 "صدأ الصناديق" . Docs.rs. تم الاطلاع عليه في 21 أغسطس 2024 .
- 1 2 آس، جوش (29 فبراير 2024). "Rustls يستخدم الآن مكتبة AWS Libcrypto للغة Rust، ويحصل على دعم FIPS" . بروسيمو . مجموعة أبحاث أمن الإنترنت . تم الاطلاع عليه في 20 أغسطس 2024 .
- ↑ آس، جوش (26 مارس 2024). "مكتبة Rustls TLS تضيف دعمًا لتبادل المفاتيح بعد الحوسبة الكمومية" . بروسيمو . مجموعة أبحاث أمن الإنترنت . تم الاطلاع عليه في 21 أغسطس 2024 .
- ↑ "Rustls webpki README" . GitHub . ١٨ سبتمبر ٢٠٢٣. تم الاطلاع عليه في ٢٢ أغسطس ٢٠٢٤ .
- ↑ "ServerName in rustls::pki_types" . Docs.rs . تم الاطلاع عليه بتاريخ 21 أغسطس 2024 .
- ↑ آس، جوش (29 مارس 2023). "إصدار Rustls 0.21.0 مع ميزات جديدة مثيرة" . بروسيمو . مجموعة أبحاث أمن الإنترنت . تم الاطلاع عليه في 22 أغسطس 2024 .
- ↑ ستينبرغ، دانيال (9 فبراير 2021). "curl يدعم rustls" . daniel.haxx.se . تم الاطلاع عليه في 21 أغسطس 2024 .
- ↑ "مكتبات TLS" . كل شيء عن curl . تم الاسترجاع في 22 أغسطس 2024 .
- ↑ لارابيل، مايكل (11 مايو 2024). "يمكن الآن لـ Rustls العمل مع Nginx عبر طبقة توافق OpenSSL الجديدة" . فورونيكس . تم الاطلاع عليه في 21 أغسطس 2024 .
- ↑ بير-بيكستون، جوزيف (14 يونيو 2010). "تدقيق طرف ثالث لـ rustls" . jbp.io. تم الاطلاع عليه في 22 أغسطس 2024 .
- ↑ سيمبانو، كاتالين (19 يوليو 2019). "مكتبة TLS مبنية على لغة Rust تتفوق على OpenSSL في جميع الفئات تقريبًا" . ZDNET . تم الاطلاع عليه في 20 أغسطس 2024 .
- ↑ أوتشاغافيا، أدولفو (4 يناير 2024). "تأمين الويب: Rustls على المسار الصحيح لتفوقه على OpenSSL" . بروسيمو . مجموعة أبحاث أمن الإنترنت . تم الاطلاع عليه في 20 أغسطس 2024 .
- ↑ لورنس، دان؛ كونيل، أريادني (24 يناير 2023). "بناء أول توزيعة آمنة للذاكرة" . تشين جارد . تم الاسترجاع في 20 أغسطس 2024 .
- ↑ مور، مات (8 مايو 2024). "التوقيع على تعهد الأمن بالتصميم الصادر عن وكالة الأمن السيبراني وأمن البنية التحتية" . تشين جارد . تم الاطلاع عليه في 3 سبتمبر 2024 .
- ↑ بالميري، لوكا (14 مارس 2022). من الصفر إلى الإنتاج في لغة رست: مقدمة لتطوير الواجهة الخلفية بلغة رست . لوكا بالميري. ص 214. ISBN 979-8-8472-1143-7.
- ↑ "RustLS" . كتاب غوس . تم الاطلاع عليه في 21 أغسطس 2024 .
- ↑ آس، جوش (9 أكتوبر 2020). "تقنية 'curl' الآمنة للذاكرة من أجل إنترنت أكثر أمانًا" . مجموعة أبحاث أمن الإنترنت . تم الاطلاع عليه في 20 أغسطس 2024 .
- ↑ دي سيمون، سيرجيو (25 أكتوبر 2020). "مكتبة Rust Hyper HTTP ستساهم في جعل Curl أكثر أمانًا" . InfoQ . تم الاطلاع عليه في 20 أغسطس 2024 .
- ↑ كامباناكيس، بانوس (17 فبراير 2022). "تقديم s2n-quic، وهو تطبيق جديد مفتوح المصدر لبروتوكول QUIC مكتوب بلغة Rust" . مدونة AWS الأمنية . تم الاطلاع عليه بتاريخ 22 أغسطس 2024 .
- 1 2 سيمبانو، كاتالين (2 فبراير 2021). "جوجل تمول مشروعًا لتأمين خادم الويب أباتشي بمكون جديد مكتوب بلغة رست" . ZDNET . تم الاطلاع عليه في 20 أغسطس 2024 .
- ↑ إيسينغ، ستيفان (1 مارس 2022). "تطبيق بروتوكول TLS الآمن للذاكرة على خادم Apache httpd" . بروسيمو . مجموعة أبحاث أمن الإنترنت . تم الاطلاع عليه في 20 أغسطس 2024 .
- ↑ كلابورن، توماس (2 فبراير 2021). "في لغة رست نثق: دعم أباتشي، مجموعة أبحاث نظم المعلومات تتخلى عن لغة سي، وتتجه إلى لغة عبقرية لوحدة تشفير TLS الجديدة" . ذا ريجستر . تم الاسترجاع في 2 سبتمبر 2024 .
- ↑ "خادم Apache HTTP الإصدار 2.4: وحدة Apache mod_tls" . مشروع خادم Apache HTTP . مؤسسة برمجيات Apache . تم الاطلاع عليه بتاريخ 22 أغسطس 2024 .
- ↑ "كيفية التحدث مع مديرك بشأن سلامة الذاكرة" . جمعية الإنترنت . 10 أكتوبر 2023. تم الاطلاع عليه في 22 أغسطس 2024 .
- ↑ دافيدوف، سيرجي "شناتسيل" (4 سبتمبر 2023). "الحفاظ على أمان مشاريع Rust باستخدام cargo-audit 0.18: تحسينات في الأداء والتوافق والأمان" . مدونة Inside Rust . تم الاطلاع عليه في 21 أغسطس 2024 .
- ↑ وايزمان، إليزا (23 يوليو 2020). "نظرة معمقة على وكيل Rust المتطور من Linkerd، Linkerd2-proxy" . Linkerd . مؤسسة الحوسبة السحابية الأصلية . تم الاطلاع عليه في 20 أغسطس 2024 .
- ↑ ليفكوفيتش، جاكوب (29 سبتمبر 2023). "مشروع الأسبوع مفتوح المصدر في صحيفة إس دي تايمز: وولفي" . صحيفة إس دي تايمز . تم الاطلاع عليه في 20 أغسطس 2024 .
- ↑ كلابورن، توماس (26 يناير 2023). "أمان الذاكرة هو التوجه الجديد، عصري ومناسب لأي مناسبة: تتزايد الدعوات لتجنب لغة C/C++ واعتماد لغة Rust" . ذا ريجستر . تم الاطلاع عليه في 20 أغسطس 2024 .
- ↑ آس، جوش (24 يونيو 2024). "مزيد من أمان الذاكرة لـ Let's Encrypt: نشر ntpd-rs" . Let's Encrypt . مجموعة أبحاث أمن الإنترنت . تم الاطلاع عليه في 21 أغسطس 2024 .
روابط خارجية
- برامج أمان مجانية
- برنامج مجاني مكتوب بلغة Rust
- تطبيق أمان طبقة النقل
- برنامج يستخدم ترخيص أباتشي
- برنامج مرخص بموجب ترخيص MIT
- البرامج التي تستخدم ترخيص ISC
