يستجيب Matt Mullenweg للتشدق الأمني: التوقيعات الرقمية لتحديثات WordPress مهمة ولكنها ليست أولوية

نشرت: 2017-02-16

نشر Scott Arciszewski ، كبير مسؤولي التطوير في Paragon Initiative Enterprises ، المعروف على نطاق واسع بعمله في هندسة التشفير ، منشورًا على موقع Medium ينتقد فيه Matt Mullenweg ، أحد مؤسسي مشروع برنامج WordPress مفتوح المصدر ، لعدم اهتمامه بدرجة كافية بالأمان. قام Arciszewski منذ ذلك الحين بسحب المنشور ولكن يمكنك قراءته عبر Wayback Machine.

يعمل Arciszewski في مشروع يُعرف باسم libsodium ، وهو امتداد أساسي لـ PHP 7.2 والذي يسمح بالتشفير وفك التشفير والتوقيعات وتجزئة كلمة المرور والمزيد. هدفها هو تمكين المطورين من بناء أدوات تشفير عالية المستوى.

يتم التعامل مع نظام التحديث التلقائي لـ WordPress من خلال api.wordpress.org. نظرًا لأن التحديثات لا تحتوي على توقيع رقمي ، في حالة اختراق api.wordpress.org ، يمكن للمهاجمين إرسال تحديثات ضارة إلى آلاف أو ملايين المواقع. كان هذا السيناريو في طليعة أذهان الناس أواخر العام الماضي بعد أن نشر Wordfence تفاصيل عن ثغرة أمنية معقدة كان من الممكن أن تعرض خوادم التحديث للخطر.

يقترح Arciszewski توقيع الكود دون اتصال بالإنترنت وتشفير المنحنى البيضاوي كحلول ، "لا يتم تخزين المفتاح الذي يمكن أن ينتج توقيعًا صالحًا لملف على الخادم (يتم تخزين الملف نفسه والتوقيع الصالح فقط) ، لذلك حتى إذا تعرض الخادم للاختراق ، لا يمكن للمهاجمين فقط إضافة البرامج الضارة لحصان طروادة إلى الملف ".

OpenSSL هو امتداد لـ PHP ويستخدم بشكل شائع كتشفير بالمفتاح العام ولكنه يدعم فقط RSA الذي يراه Arciszewski غير مناسب. نظرًا لأن WordPress مكتوب بلغة PHP ويدعم الإصدارات من 5.2 إلى 7 + ، فقد احتاج Arciszewski لإنشاء حل متوافق تمامًا. وقد ألهمه ذلك لإنشاء sodium_compat الذي يضيف التحقق من توقيع Ed25519 إلى التحديث التلقائي لـ WordPress.

أرسل Arciszewski عددًا من التصحيحات إلى WordPress ولكن أخبره Dion Hulse ، مطور WordPress الأساسي ، أنه لا يمكن دمج مكتبة sodium_compat في مركز حتى اجتازت تدقيقًا أمنيًا بواسطة طرف ثالث. يمكن أن تكلف عمليات التدقيق الكثير من المال ، لذا كانت خطة Arciszewski هي معرفة ما إذا كان بإمكان Automattic تحمل بعض التكلفة أو جمع الأموال من الجمهور. ومع ذلك ، تم تعليق مشروعه بعد أن أبلغ Mullenweg Hulse بالتوقف عن العمل على الميزة لأنها لا تتعلق بمجالات التركيز الأساسية الثلاثة للمحرر والمخصص وواجهة برمجة تطبيقات REST.

وصف Arciszewski القرار بأنه غير مسؤول وأن كل مستخدم لديه سبب للقلق ، "لقد أظهر فريق WordPress أنهم ليسوا مسؤولين بما يكفي للتحكم في ملكيتهم الرائعة للإنترنت (باستثناء بعض الأشخاص العاجزين عن تصحيح مسار المؤسسة )،" هو قال. "هذا الإهمال سيضع بقية الويب في طريق الأذى."

توقيع التحديث مهم ولكنه ليس أولوية

رد Mullenweg على المنشور على موقع Medium.com بواحد خاص به وكرر التزام فريق تطوير WordPress بالأمان.

قال "كل شخص معني يأخذ مسؤوليته على محمل الجد ، ونمو WordPress يعني أن العديد من الأشخاص المدروسين الذين يعملون بجد قد شاركوا وفكروا في أمان مواقع WP بشكل شامل ، من كل زاوية".

أوضح Mullenweg أيضًا ما هي الهجمات التي سيتم إيقافها عن طريق تطبيق التوقيعات الرقمية على تحديثات WordPress.

"يمكن أن يوقف هذا هجوم رجل في المنتصف ، حيث يقوم شخص ما بتعديل ملفات التحديث على الشبكة بين مدونتك و WordPress.org ، أو يمكن أن يوقف الموقف الذي يتم فيه اختراق جزء .org الذي يقدم التحديث ولكن التوقيع الجزء ليس كذلك ، وقرر شخص ما إرسال تحديثات على الرغم من علمه أنه سيتم رفضه ".

الفريق ليس على علم بأي مواقع WordPress تمت مهاجمتها بهذه الطريقة. في حين أن الاحتمال موجود ، من المرجح أن يكون مدى الضرر محدودًا. تتم مراقبة خوادم التحديث على مدار الساعة ونظرًا لأن العديد من شركات الاستضافة على الويب تقوم تلقائيًا بفحص مواقع عملائها بحثًا عن البرامج الضارة ، فمن المحتمل أن يتم اكتشاف التحديث الضار بسرعة.

يصف Mullenweg ما سيحدث إذا تم اختراق خادم التحديث.

قال: "سنقوم بإيقاف تشغيله بسرعة كبيرة ، وإخطار العالم بوجود مشكلة ، وإصلاح المشكلة ، وإعادة تشغيلها ، وإخطار المواقع أو المضيفين المعينين بقدر الإمكان". على الرغم من أن WordPress يدعم 27.5 ٪ من أفضل 10 ملايين موقع تتبعها Alexa ، فمن غير المرجح أن يتم اختراق عدد من المواقع.

ومضى يقول إن هناك طرقًا أسهل لتسوية موقع WordPress وأدرج أكبر المشكلات في أمان WordPress بناءً على التأثير.

  1. لا يتم تحديث المواقع الأساسية.
  2. المواقع لا تقوم بتحديث المكونات الإضافية.
  3. المواقع لا تقوم بتحديث الموضوعات.
  4. كلمات مرور ضعيفة ، بدون حماية قوية أو مصادقة ثنائية.
  5. لا يقوم المضيفون (المهنيون أو المخصصون) بفحص المواقع وإصلاحها.
  6. القضايا الافتراضية التي لم تتم رؤيتها في الممارسة ، والتي تصرف الانتباه عن الأولويات الحالية المذكورة أعلاه.

يؤكد Mullenweg أنه عرض التبرع لمراجعة sodium_compat قبل يوم واحد من نشر Arciszewski لمنشورته. حتى إذا اجتازت المكتبة تدقيقًا ، فلا يمكن إضافة الكود على الفور إلى المركز الأساسي ، "ستحتاج أيضًا إلى القيام ببعض الأعمال المهمة على جانب الخادم لعزل التوقيع عن خادم التحديث ، لذلك من المفيد في المقام الأول ،" هو قال.

وإذا تمت إضافة الكود إلى core ، فلن تتمكن من الاستفادة منه إلا المواقع التي تم تحديثها إلى الإصدار الذي يحتوي على مكتبة التشفير والتحقق من التحديث. سيظل WordPress.org بحاجة إلى إرسال التحديثات إلى الإصدارات القديمة التي لا تحتوي على فحص للتحديثات. ستظل هذه المواقع عرضة لتلقي تحديث ضار.

يقول Mullenweg أن التوقيعات الرقمية وتوقيع التحديث سينتهي بهما المطاف في WordPress في النهاية ، لكنها ليست أولوية نظرًا لوجود مشكلات أمنية أخرى أمامها ، "نحن نعطي الأولوية لهذه المشكلات فوق جهد دفاعي جيد ، " هو قال.

"الأسلوب الجيد هو بناء جانب الخادم أولاً ، لأن القيام بذلك بشكل صحيح ، على سبيل المثال باستخدام HSM ، هو الجزء الصعب والمهم ؛ ثم التوقيع على الطرود ؛ ثم اختبر التحقق في مكون إضافي لأننا لا نريد كسر التحديثات التلقائية ؛ ثم دمجها أخيرًا في النظام الأساسي وضبط العميل على رفض التحديثات غير الموقعة. من جانب العميل ، نحتاج إلى اختيار مكتبة تشفير وإجراء تدقيق لها ".

أنهى Mullenweg رسالته موضحًا سبب نشر رده على موقع Medium بدلاً من موقعه الشخصي. "يبدو أنه المكان الأكثر شعبية لمثل هذه الأحداث الصاخبة. كما أردت تجربة محرر ميديوم الشهير.

ما التالي بالنسبة لـ sodium_compat

في حين أن التوقعات لا تبدو جيدة لإضافتها مكتبته إلى WordPress في عام 2017 ، يقول Arciszewski أن هناك الكثير من مشاريع PHP الأخرى التي يمكن أن تستفيد منها ، "من أجلها ، ما زلت أميل بشدة إلى متابعة- تدقيق التشفير للحزب ، ومحاولة التمويل الجماعي للتكلفة ، "قال.