it-swarm.asia

لماذا تعتبر مصادقة نظام التشغيل أمانًا ضعيفًا لقواعد بيانات Oracle؟

تقوم Oracle بإيقاف مصادقة نظام التشغيل وفقًا لـ Oracle Security Security Guide ، الذي يقول

كن على علم بأن معلمة REMOTE_OS_AUTHENT قد تم تجاهلها في Oracle Database 11g الإصدار 1 (11.1) ، ويتم الاحتفاظ بها فقط للتوافق مع الإصدارات السابقة.

بالإضافة إلى ذلك ، تعتبر معظم معلومات وأدوات الأمان مصادقة نظام التشغيل (خارجي) مشكلة أمان. أحاول أن أفهم لماذا هذا هو الحال. فيما يلي بعض المزايا التي أراها لمصادقة نظام التشغيل:

  1. بدون تطبيقات مصادقة نظام التشغيل ، يجب تخزين كلمات المرور في مجموعة متنوعة من التطبيقات لكل منها نموذج الأمان ونقاط الضعف الخاصة بها.
  2. يجب أن تكون مصادقة المجال آمنة بالفعل لأنه إذا لم يكن الأمر كذلك ، فإن أمان قاعدة البيانات يبطئ الوصول إلى قاعدة البيانات ، ولكن لا يمكنه منعها.
  3. يمكن للمستخدمين الذين يتوجب عليهم تذكر كلمة مرور مجال واحدة فقط إنشاء كلمات مرور مجال أكثر أمانًا بشكل أسهل من إنشاء كلمات مرور قاعدة بيانات أقل أمانًا نظرًا لزيادة عدد قواعد البيانات المختلفة التي يجب عليهم الاتصال بها.
29
Leigh Riffel

خذ بعين الاعتبار السيناريو التالي:

  1. يوجد مستخدم Unix باسم gaius على خادم Oracle بمصادقة خارجية ، لذلك في Oracle يوجد مستخدم مقابل يسمى ops$gaius. عند تسجيل الدخول إلى Shell ، يمكنني أيضًا تسجيل الدخول مباشرة إلى مخطط Oracle الخاص بي ، ولا تحتاج وظائف cron الخاصة بي إلى كلمة مرور مضمنة في البرنامج النصي أيضًا.
  2. يُسمح بمصادقة نظام التشغيل عن بُعد ، بافتراض أن شبكة LAN آمنة بنسبة 100٪ ويمكن الوثوق بالعملاء (مثل rlogin/rsh المستخدمة عادة المسموح بها)
  3. يهاجم أحد المهاجمين الكمبيوتر المحمول الخاص به على شبكة LAN بأي وسيلة ، ويعلم أنني أعمل هناك ، وينشئ مستخدمًا محليًا على الكمبيوتر المحمول يدعى gaius ويقوم بتشغيل SQL * Plus بصفته هذا المستخدم
  4. يرى Oracle (أي OSUSER في V$SESSION) هو gaius ويسجل هذا المستخدم البعيد باسم ops$gaius

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

المبدأ العام هو أنه من الصعب للغاية الدفاع في البرمجيات عندما يكون لدى المهاجم حق الوصول المادي. ولا تثق بالعميل أبدًا.

16
Gaius

إنه يزيد من نقاط الفشل المفردة ويوسع سطح الخطر لبياناتك.

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

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

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

8
Brian Ballsun-Stanton

لقد أشار Gaius بالفعل إلى سبب مصادقة نظام التشغيل عن بُعد (على عكس مصادقة نظام تشغيل Vanilla حيث تسمح لمستخدمي الجهاز المحليين بالوصول إلى قاعدة البيانات دون تحديد كلمة مرور منفصلة) غير آمنة نسبيًا.

أتوقع أن أوراكل تتحرك في هذا الاتجاه لأنها تريد تشجيع الأشخاص على استخدام مستخدمي المؤسسة (أو مجموعة إدارة الهوية الكاملة) بدلاً من المستخدمين المصادق عليهم من نظام التشغيل عن بُعد. يتمتع مستخدمو المؤسسات بالميزات نفسها التي يتمتع بها المستخدمون المصادق عليهم من نظام التشغيل عن بُعد ، لكن Oracle تخرج بالفعل وتضرب خادم Active Directory لمصادقة المستخدم. ستحصل على نفس مزايا تسجيل الدخول الفردي دون ترك فحص الأمان لجهاز العميل.

4
Justin Cave

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

إذا سمحت بالاتصالات عن بُعد بقاعدة البيانات (أو خادم الويب ، أو أي شيء يقوم بالمصادقة) ، فسوف تتجاهل بعض أنظمة التشغيل القواعد التي قد يتم تعيينها لتجعل من الصعب فرض حسابات قوية (على سبيل المثال ، حظر عناوين IP التي تأتي منها المحاولات الفاشلة ؛ قفل المستخدمين لفترة بعد عدد معين من الأخطاء ، وما إلى ذلك). عادة ، ترتبط هذه القواعد بـ sshd ، و not نظام المصادقة ككل.

لذلك ، إذا تمكن شخص ما من الاتصال بقاعدة البيانات/خادم الويب/أيًا كان عن بعد ، فيمكنه أن يفرض كلمة المرور بقوة ، لأن قواعد البيانات لا تميل إلى أن يكون لديها نفس الآليات لإبطاء المحاولات ، ثم ssh بمجرد العثور على أوراق الاعتماد اللازمة.

4
Joe