أوريون الأمن
.
- “الأمن من خلال الغموض ليس الكثير من الأمن على الإطلاق.”
- أمان البنية الأساسية لـ Orion
- تأمين تطبيق Orion
- SSR العام هو رائحة .
- إدارة قائمة التحكم بالوصول
- OpenIDC تأمين تسجيل الدخول الموحد
- تشفير كلمات مرور الإصدار الفرعي
- حماية البيانات الملوثة
- قضايا ويكي
- سياسات تأمين المحتوى
- مشاركة الموارد عبر الأصول
- تبعيات الطرف الثالث
- الفهرس
“الأمن من خلال الغموض ليس الكثير من الأمن على الإطلاق.”
إعادة صياغة شعبية للأقفال الأمريكية ألفرد تشارلز هوبز في عام 1851، اختار بسهولة أقفال كريستال بالاس خلال معرض لندن في ذلك العام. نتفق تمامًا، وهذا هو السبب في أن مخططاتنا لمحرك أتمتة Oracle Cloud Infrastructure (OCI) لدينا هي متاح على GitHub.
أمان البنية الأساسية لـ Orion
متوافق مع FIPS 140-3 مع التشفير الثلاثي MFA للخدمات ذات الميناء العكسي (HTTPS/SSH/IPsec). الحزام والمعلقين والركاب!
RBAC نموذج، فلفل مع مقوس تحديات OTP/TOTP
يتطلب كل الوصول إلى حساب البنية الأساسية توفير بيانات اعتماد التصديق متعدد العوامل، بما في ذلك حسابات OCI. لا توجد أبواب خلفية لهذه السياسة، حسب التصميم.
يتطلب وصول جميع الموظفين إلى أجهزة الشركة YubiKey تكامل PKI مع المفاتيح الخاصة للتصريح ECDSA-SHA-2-NISTP-256 المخزنة في فتحات PKCS11 على Yubikey، أو تكامل البطاقة الذكية المباشر مع مفاتيح ED25519-sk.
لا توجد كلمات مرور ثابتة مخزنة على الأقراص. هذا يحد من أتمتة بدون رأس من استخدام sudo / RBAC، لسبب وجيه. ومع ذلك، لدينا الأدوات للقضاء على كعب الاستجابة لمطالبات من أنواع مختلفة.
تنفيذ وضع الحماية لعمليات الإنشاء واسكربتات CGI
نشرنا “لا شيء مشترك” إنشاء المناطق، مع تعيين القيمة الافتراضية على عدم توفر الشبكة. وهذا يعني أن الأشياء الوحيدة التي يمكن للعميل الوصول إليها أو تعديلها هي أصوله الخاصة، وليس تلك التي يمتلكها أي عميل آخر، أو أي مسارات نظام أخرى في المنطقة نفسها (بالإضافة إلى ذلك) /tmp). علاوة على ذلك، يمكن لعملاء الأعمال والمؤسسات فقط الوصول إلى الإنترنت أثناء عمليات الإنشاء الخاصة بهم، لأنهم يستخدمون مناطق سولاريس الفريدة الخاصة بهم والتي يمكن تصميمها خصيصًا وفقًا لمتطلبات الإنشاء الخاصة بهم.
Ditto لبرامج CGI النصية، والتي يتم تأمينها بالكامل من حيث الوصول للكتابة إلى أي شيء آخر غير /tmp.
التشفير الطرفي
TLS 1.3 (+FS) AES (256) SHA (256) لاتصالات HTTPS FIPS 140-3
SSHv2 ED25519 FIPS 140-3 / مفاتيح متوافقة مع NIST للمضيف المتقاطع
سلسلة الجمل البرمجيةإعادة توجيه الموانئ العكسيةIPsec/IKEv2/PFS AES(256) للشبكة الافتراضية الخاصة عبر المناطق
AES(256) لتشفير ZFS
جوانب الثقة الصفرية
الفرضية الأساسية بنية الثقة الصفرية هو تجنب تصميم أمن شبكتك حول فسيولوجيا التشويش: من الصعب على الخارج، ولكن لينة وفضفاضة بمجرد دخولك. لذلك نحن لا’t do that; كل منفذ شبكة ذات امتيازات ذات مغزى داخل مختلف نقاط التواجد (POP) LANs يتعرض فقط إلى الجهاز بدون المعادن’واجهة جهاز الاسترجاع s lo0، وهو ذو معنى فقط في سياق منفذ (عكسي) تم توجيه اتصال SSH إليه **.
نستخدم وكلاء TCP، وليس وكلاء HTTP، ولا توجد واجهات خلفية لـ MSA، لذلك المضيف الوحيد الذي يرى حركة مرور ويب TLS غير المشفرة هو المضيف الذي يفك تشفيرها. تنطبق نفس القواعد على حركة مرور الإصدار الفرعي — لا ترى سوى حركة مرور TLS المشفرة المباشرة والشاملة إلى نقطة انتهاء الخدمة بياناتك غير المشفرة على السلك.
حظا سعيدا مع طبقات MSA وطبقات التعرض للبيانات الخاصة مع البائعين الآخرين. عدو “هندسة غير وظيفية” هو تعقيد. من الأسهل بكثير تقديم وعود أمنية ذات مغزى عندما يكون منتجك عبارة عن متحد موحد بدلاً من حقل ألغام MSA ضخم، وهو عامل تمييز آخر بين أوريون ومجال منافسيها.
هذه البنية التحتية مؤتمتة بالكامل بمجرد إحضار منطقة عبر الإنترنت، ولكن ذلك’كل ما يمكننا مشاركته علناً حول العمارة (موازنة الشفافية الهوبسية مع الشعار العسكري) “سفن غرق الشفاه” الفن أكثر من العلم). مطمئن — ما وراء كسر antispoofing lo0 الحماية داخل سولاريس 11’تقوم حزمة (BSD) بتصفية نفسها، ولا توجد وسيلة ذات مغزى للوصول إلى هذه الخدمات، حتى بالنسبة لحسابات العملاء.
حتى إذا تم اختراق حساب تحكم OCI الرئيسي، فإن السرية والسلامة لجميع أصول العملاء لا تزال تنتهك. كل ما يمكن القيام به هو إحداث فوضى مع موقع العميل التوافر. على وجه الخصوص، لا يمكنهم الوصول إلى سجلات بيانات خدمة الإصدار الفرعي. يمكننا إعادة بناء البنية التحتية الكاملة لـ OCI من البداية في غضون 48 إلى 72 ساعة بمجرد تفاحة سيئة’تم إنهاء وصول OCI.
التسجيل والمراقبة والتدقيق
نحن نشجع عملاء Enterprise على إنشاء حساب Splunk، وسنقوم بتسليم مدونات الويب في الوقت الفعلي تقريبًا إلى حسابك من كل POP عالمي تحتاجه. كما يتم توفير سجلات الأخطاء لسكريبت CGI من جانب الخادم لـ Splunk.
نراقب توافر الخدمة من جميع نقاط POP في OCI على مستوى العالم، ونشغل HA (نطاق التوفر)، أو أحداث تجاوز الفشل الإقليمية إذا استمر انقطاع الخادم لأكثر من 30 ثانية.
يمكن إجراء تدقيق ACL ببساطة عن طريق إنشاء موقع ويب’s رأس التخريب باستخدام أباتشي المرخصة أوريون SSG كتابة السيناريو وفحص البناء الناتج إلى www/.acl ملف في دليل الخروج الخاص بك، في أي وقت تريد. عادة ما تستغرق عملية الإنشاء أقل من 10-15 ثانية على الأجهزة الحديثة.
كما يمكن تخصيص خطافات التثبيت من جانب الخادم وفقًا لمخاوفك المتعلقة بالإشراف. من مرسل بريد التثبيت البسيط إلى الوصول الآمن إلى محرك svnpubsub الخاص بنا، هناك أي عدد من التكوينات المخصصة المتاحة.
تأمين تطبيق Orion
SSR العام هو رائحة.
إدارة قائمة التحكم بالوصول
أوريون’تتم إدارة نموذج الأمان مركزيًا بواسطة الإعدادات الواردة في @path::acl كما يحجم في lib/path.pm. يتم إنشاء ملفات تكوين خادم Offshoot ديناميكيًا في كل تغيير تم إنشاؤه.
إذا كنت تفهم نموذج أمان نظام ملفات POSIX، فستكون على حق في المنزل مع Orion’ss mod_dav_svn نموذج التفويض وخادم ويب Apache HTTPd’s .htaccess الضوابط التي يتم إنشاؤها تلقائيا من موقع الويب الخاص بك’ss lib/acl.yml تكوين YAML.
OpenIDC تأمين تسجيل الدخول الموحد
جميع ملفات تعريف الارتباط الخاصة بجلسة عمل OpenID هي HttpOnly وتم وضع علامة آمن عليها، لذلك يتم تحييد محاولات سرقة جلسة عمل جافا سكريبت بشكل فعال من قبل محرر Orion Online.
كل تخزين بيانات اعتماد ملفات تعريف الارتباط مشفر أيضًا AES-256 تحت شفرة هاش HMAC SHA-1.
تشفير كلمات مرور الإصدار الفرعي
عدد التقريبات القابل للتعديل (يتم افتراضه حاليًا على 5).
حماية البيانات الملوثة
تحتوي جميع أوقات تشغيل Perl لدينا على فحوصات عيب إلزامية ممكّنة بعلامة -T ؛ حارس بيرل قوي وفريد ضد استغلالات Remote Shell.
قضايا ويكي
يتضمن أمن ويكي عدة عوامل:
تأمين واجهة المستخدم/واجهة برمجة التطبيقات
أمان البرامج الوسيطة/الواجهة الخلفية
حماية اجتياز القالب
توافق قائمة التحكم بالوصول لمحرك البحث
نحن نتعمق في هذه القضايا فيما يتعلق بـ Orion أدناه.
محرر مباشر
يدعم المحرر عبر الإنترنت واجهة مستخدم JSON ببساطة عن طريق تعيين وكيل المستخدم الخاص بك’s اقبل رأسك لتفضيل تطبيق/json نوع MIME، بحيث تكون عناصر التحكم في الأمان متماثلة لكل من واجهة المستخدم وواجهة برمجة التطبيقات.
لا توجد واجهة مستخدم إدارية/واجهة برمجة تطبيقات خارج الوصول المباشر للإصدار الفرعي.
تتحكم قوائم ACL للإصدار الفرعي في الوصول إلى قراءة نسخة العمل من جانب الخادم
يتم فحص كل مورد نسخة عمل متوفر من خلال واجهة المستخدم بشكل متقاطع مقابل قوائم ACL الخاصة بالإصدار الفرعي قبل تقديمها إلى المستخدم. وبهذه الطريقة نضمن منع الوصول للقراءة إلى الموارد غير المصرح بها للأصول الخاضعة لمراقبة الإصدار (المعروفة باسم كل شيء).
يتم التحكم في الوصول إلى التثبيت مباشرةً باستخدام قوائم التحكم بالوصول للإصدار الفرعي
لا يمكن إنشاء أي شيء وعرضه لاحقًا عبر الشبكة بدون تثبيت الإصدار الفرعي المعتمد المقابل. المشكلة الرئيسية هنا هي التحكم في المعلومات المتاحة لمؤلف صفحة wiki’عمليات التحرير المثبتة والمبنية.
إذا سمحت بالمعالجة المسبقة للقالب في صفحات مصدر تخفيض السعر، يجب أن تكون على دراية بكيفية إتاحة وسائط القالب لمحتويات الملفات الأخرى في الشجرة كمتغيرات لمصدر الصفحة التي تم تحريرها.
في كثير من الأحيان، إذا تم تكوينها للقيام بذلك، يمكن للصفحة المحررة أن تعلن ملفات التبعية الخاصة بها في رؤوس الصفحة، وهو شيء يجب التفكير فيه أثناء وزن مجموعات الميزات مقابل عناصر التحكم في الأمان في ويكي الخاص بك.’s هندسة المعلومات.
بينما يمكننا تقديم التوجيه والدعم لتلبية احتياجاتك،’الأمر متروك لك حقًا لتحديد كيفية موازنة المقاييس لمؤسستك’شركة wiki.
انظر القسم أدناه على عناصر التحكم في حقن التبعية/ACL لمزيد من التفاصيل، وتسجيل الخروج من هذا المثال المباشر لمدى سهولة ACL’يمكن تكوين s مركزيًا في lib/acl.yml:
- path: content
rules:
"@staff": rw
"@svnadmin": rw
"*": r
- path: content/orion
rules:
"@marketing": rw
"@staff": rw
"@svnadmin": rw
"*": r
- path: lib
rules:
"@svnadmin": rw
"@devops": rw
- path: lib/acl.yaml
rules:
"@svnadmin": rw
"@security": rw
- path: templates
rules:
"@svnadmin": rw
"@frontend": rw
- path: cgi-bin/search.pl
rules:
"@svnadmin": rw
"*":
يمكن لمؤلفي المحتوى تكوين قيود الصفحة في الصفحة’ss ترويسات:
Title: Orion Security
Dependencies: *.md.en api/index.md.en
ACL: @staff=rw, *=r, joe=rw
Keywords: security,infosec,appsec,ipsec,devsecops,it,acl,svnauthz,zerotrust
كملاحظة جانبية، لا يمكن نسخ الموارد المحمية إلى فرع من قبل موظفين غير مصرح لهم، حتى دون وضع أي ضوابط إضافية لقائمة التحكم بالوصول على إنشاء الفرع وتعديله. وبعبارة أخرى، سيدعم النظام تجربة الفرع دون أي ضوابط إضافية من جانبك لضمان حماية الأصول المحمية في جميع أنحاء كل فرع.’دورة الحياة الطبيعية.
هل تريد إنشاء قوائم التحكم بالوصول للنظام؟
نظام البناء هو رؤية شاملة ومعرفة، ولكن يمكننا ضمان أن أصولك المبنية والمحمية مرئية فقط للفرق التي تديرها وتتحكم في قوائم ACL للإصدار الفرعي.
سيكشف نظام الإنشاء عن قائمة أسماء الملفات التي تم إنشاؤها من خلال IDE المتصفح عند التثبيت، ولكن هذه القائمة تعتمد فقط على مستخدم’وصول القراءة إلى الموارد التي تعتمد على المستخدم’إضافة أو تحديث أو حذف إجراءات المحتوى في الالتزام.
عناصر التحكم في اجتياز النموذج
راجع sanitize_relative_path:
sub sanitize_relative_path {
for (@_) {
s#^[\\/]+##g;
s/^\w+://g; #Windows GRR
s#([\\/])+#$1#g;
s#/\./#/#g;
1 while s#[\\/][^\\/]+[\\/]\.\.[\\/]#/#;
s#^(?:\.\.?[\\/])+##;
}
}
تفرض هذه التعليمة البرمجية القواعد التالية في هذا القسم.
تضمين العلامات وتمديدها
كل الملفات الهدف موجودة في مجلد فرعي من /القوالب/ المجلد، ويجب الإشارة إليه كمسارات مطلقة متجذرة في هذا المجلد.
علامة Ssi
كل الملفات الهدف موجودة في مجلد فرعي من /المحتوى/ المجلد، ويجب الإشارة إليه كمسارات مطلقة متجذرة في هذا المجلد.
إذا لم يتم تكوين المسار الهدف في @path::النماذج مع إعداد مطابق يسمح لأرشفة المسار الهدف المعني أو تصنيفه، تسي ستفشل العملية.
وذلك لأن تسي الدعم هو شرط مسبق لمجموعات الميزات هذه، للحفاظ على موقعك’s taget permalinks.
عناصر التحكم في حقن التبعية/ACL
خاضع للتحكم بواسطة lib/path.pm الواردات.
مكتبة{مسار، عرض}.pm قوائم التحكم في الوصول للإصدار الفرعي
إنها’من الحكمة التحكم في الوصول الكتابي إلى هذه الموارد، من خلال قصرها على الأشخاص المختصين في قاعدة التعليمات البرمجية والمصرح لهم بتنفيذ ضوابط الأمان لمجموعة كاملة من الأصول الخاضعة لمراقبة الإصدار (المعروفة باسم *كل شيء *).
من الجيد أيضًا تضمين @svnadmin المجموعة بين أولئك الذين لديهم وصول للقراءة والكتابة، لكنها’ليس من الضروري للغاية حتى لو كنت بحاجة إلينا لإعادة تعيين قوائم ACL الخاصة بالإصدار الفرعي يدويًا.
قواعد تم إنشاؤها ديناميكيًا عبر @مسار::acl
نظام البناء يأخذ علما الخاص بك lib/path.pm تستورد إما (أو كليهما) من seed_file_deps() وseed_file_acl()، وتحمل هذا الخيار إلى الأمام في معالجته الداخلية للإصدار الفرعي، وتلتزم بالتغييرات التي تؤدي إلى بناء تزايدي.
تتبع ترحيل المحتوى الخاضع للتحكم
عند عرض تاريخ التحكم الكامل في الإصدار للمستخدمين، يجب توخي الحذر للحفاظ على عناصر التحكم في الاعتماد في الموقع الأصلي للمواد الخاضعة للتحكم.
خلاف ذلك، يمكن أن تتعرض المادة عن غير قصد لباحث تاريخي بدون الأذونات المطلوبة.
أوريون CMS’يتعامل منطق تتبع النقل/الحذف مع هذا بسلاسة.
عناصر التحكم المخصصة في استخدام seed_file_deps() وseed_file_acl() في lib/path.pm
ما وراء استيراد هذه الرموز إلى lib/path.pm، هناك أيضًا خيار في كيفية تنفيذ كتلة التعليمات البرمجية walk_content_tree () والملفات التي ترغب في تطبيقها عليها. بعد كل شيء، فإنه’ليس فقط ملف تكوين، ولكن قاعدة تعليمات برمجية، مع جميع ميزات Turing الكاملة بيرل نحن’تعال لتعرف وتقدر!
يتم مزامنة ملفات .htaccss للموقع المبني وملفات اعتماد الإصدار الفرعي مع @المسار::acl على الفور عند الالتزام
حماية ACL التلقائية لعمليات إنشاء الفروع المؤقتة. لا يلزم تكوين إضافي.
التحكم المدمج في محرك بحث PCRE
نفس موقف واجهة المستخدم للأغراض العامة: يتم إجراء فحوصات متقاطعة مقابل خادم Subversion من واجهة المستخدم.
في الموقع المباشر، سيعمل محرك البحث بنفس الطريقة عند تمكين عمليات البحث عن تخفيض السعر (شجرة المصدر). خلاف ذلك، سيتم تشغيل طلبات httpd الفرعية إلى موقعك المباشر لاختبار ما إذا كان المستخدم مصرحًا له بالوصول إلى هذا الملف المباشر (على افتراض أن لديك محرك بحث محمي بكلمة مرور بحيث يكون لديه بيانات مستخدم للعمل معه).
سياسات تأمين المحتوى
- [س] قيود التحليلات
جوجل و/أو LinkedIn.
- [س] قيود البيانات
يجب تسليم البيانات من خوادمنا.
- [س] قيود المحتوى
يجب تسليم المحتوى من خوادمنا.
- [س] قيود الرمز
يجب تسليم رمز جافا سكريبت من خوادمنا.
- [س] قيود النمط
يجب تسليم CSS من خوادمنا.
- [س] قيود البرنامج الإضافي
PDF الحالي’s فقط.
مشاركة الموارد عبر الأصول
[س] يمكن لجميع المستخدمين الذين لديهم حساب استخدام واجهات برمجة التطبيقات/واجهة المستخدم من مكان آخر باستخدام بيانات اعتماد تسجيل الدخول الخاصة بهم.
[س] يمكن لعملاء الأعمال والمؤسسات التعامل مع أوريون كـ نظام إدارة المحتوى بدون واجهة إذا كانوا يريدون إنشاء واجهة المستخدم الخاصة بهم من JSON Subversion الخزف أو بحث JSON واجهات برمجة التطبيقات.
تبعيات الطرف الثالث
تبعيات قصيرة ومختبرة زمنيًا بشكل ملحوظ ؛ يتم تغطية مكوناتها الرئيسية على تقنية أوريون الصفحة.
قائمة مواد البرامج (SBOM) المتاحة عند الطلب
اتصل بنا لمزيد من التفاصيل.
الفهرس
ميزات أوريون — نفس محرك عرض رمز جافا سكريبت في كل من المستعرض الخاص بك وفي سكريبت إنشاء markdown.js (القائم على node.js)…
SunStar أوريون الأنظمة — منصة ويكي Enterprise Jamstack لإنشاء وإدارة وتقديم صفحات ويب ثابتة باستخدام تقنية Jamstack للحصول على ميزات ديناميكية فيها…
خطط أوريون — خصومات التسعير المقدمة السنوية المتاحة (خصم يصل إلى 20% من تكاليف الفوترة الشهرية)…
Orion سياسة الخصوصية — إنها’نظام اشتراك متوافق مع GDPR. في الزيارة الأولى إلى أوريون ™ CMS / IDE، سيتم توجيهك إلى صفحة جوجل تطلب منك التصريح…
مرجع أوريون — تلك الرموز قلم رصاص الساخنة الوردي
في أعلى اليمين جنبا إلى جنب مع فتات الخبز سوف تعطيك مظاهرة حية…تقنية أوريون — الآن مع mod_perl v2.0.13 w/ ithreads و httpd v2.4.58 w/ event mpm….
أوريون API — تقوم هذه الصفحة بفهرسة البحث والمحرر عبر الإنترنت ومكتبة قوالب Django وواجهات برمجة تطبيقات نظام الإنشاء…