الأمان

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

نقطة الانطلاق

نشر حزمة يعني تشغيل شفرة على جهاز كل مهندس يثبّتها. وكل قرار أمني في هذا المنتج وُزن أولًا في مقابل سؤال واحد: هل يجعل هذا التغيير النشرَ غير المصرّح به أسهل؟

  • الحزم موقّعة (ECDSA P-256)

    ملف التوقيع يسافر داخل الحزمة. والموقَّع هو بيان يحتوي على قيم تجزئة كل ملف وهوية الحزمة وإصدارها — لا قيمة تجزئة مجردة للأرشيف.

    لو وُقِّعت قيمة التجزئة وحدها لأمكن إدراج أرشيف قديم توقيعه صحيح تحت رقم إصدار جديد: فيجتاز التوقيع الفحص، ويثبّت المستخدم أداة معروفة الثغرة على أنها «تحديث».

  • المفتاح الخاص ليس على الخادم

    الخادم يتحقق فقط. أما التوقيع فيجري على جهاز الناشر نفسه بأداة منفصلة.

    لو كان المفتاح على الخادم لاستطاع من يستولي عليه أن يعدّل حزمة ويعيد توقيعها — وهذا يجعل التوقيع كله بلا معنى.

  • العميل يتحقق أيضًا

    تتحقق الإضافة الموجودة على جهاز المهندس من التوقيع باستقلال، وقائمة المفاتيح الموثوقة التي تستخدمها لا تأتي من الخادم.

    التوقيع موجود أصلًا لأن الخادم لا يُؤخذ على كلامه. وجلب قائمة الثقة من الخادم نفسه يلغي ذلك الافتراض بهدوء.

  • سجل تدقيق لا يمكن حذفه

    كل عملية نشر وكل تغيير صلاحية وكل قرار بشأن القنوات يُكتب بصفة دائمة. ولا يوجد مسار للتعديل أو الحذف عن قصد، ولا يمسّه تنظيف مدد الحفظ.

    سؤال «كيف وصلت هذه الأداة إلى هنا» يُطرح عادة بعد أشهر. وفي ذلك اليوم، السجل الذي كان يمكن حذفه هو سجل لم يوجد أصلًا.

  • مبدأ الموافقة المزدوجة، إن أردتم

    ترقية إصدار إلى قناة أوسع يمكن أن تشترط موافقة مسؤول ثانٍ، ولا يحق لمقدّم الطلب أن يوافق على طلبه هو. أما التراجع فلا يحتاج موافقة أبدًا.

    الإعداد الافتراضي معطّل. ففي فريق من ثلاثة أشخاص تتحول تلك البوابة خلال أسابيع إلى رسالة يُوافَق عليها دون أن تُقرأ؛ وضابط يُظنّ أنه يحمي وهو لا يحمي أسوأ من غياب الضوابط كلها.

  • استخراج الأرشيف نفسه سطح هجوم

    تُفحص الأرشيفات المرفوعة ضد تجاوز المسار (zip-slip) وضد قنابل فك الضغط، ويُقيَّد حجمها بعد الاستخراج.

    يبدو استخراج أرشيف أمرًا بريئًا. لكن أرشيفًا مصنوعًا بقصد يستطيع كتابة ملفات خارج المجلد المقصود أو ملء قرص الخادم بالكامل.

  • تسجيل الدخول بلا كلمة مرور

    يسجّل المستخدمون الدخول برمز يُستخدم مرة واحدة ويصل إلى بريدهم الإلكتروني. وتعمل الجلسة على رمز قصير العمر؛ ورمز التجديد لا تراه شفرة المتصفح أبدًا.

    حين لا توجد مجموعة كلمات مرور تُدار، لا توجد قاعدة بيانات كلمات مرور يمكن أن تتسرّب. كما يُعدّ إعادة استخدام رمز تجديد مُبطَل إشارةَ سرقة: فتُقطع الجلسة.

  • ترون ما الذي تثبّتونه

    يأتي مجلد التثبيت ومعه قائمة مكونات (SBOM بصيغة CycloneDX) يمكن قراءتها آليًا، ونصوص ترحيل لمحرّكَي قواعد البيانات معًا.

    ينبغي أن يستطيع فريق تقنية المعلومات لديكم فحص ما سيصعد إلى الخادم قبل أن يصعد. وحين يُعلَن عن ثغرة في أحد المكونات يتحول سؤال «هل نستخدمه» إلى بحث في الملفات.

ما لا نستطيع حمايته

هذه ليست ثغرات، بل حدود. وهي نتيجة البنية نفسها، وادّعاء غير ذلك يكون كذبًا.

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

الإبلاغ عن ثغرة أمنية

إن وجدتم ثغرة فاكتبوا إلينا. نتعامل مع البلاغات بجدية، ولا نقصي المبلِّغ عن مسار المعالجة، ونخبركم متى صدر الإصلاح.

security@ypcad.com