
عامل أمن وقت التشغيل قائم على eBPF لـ Kubernetes يكتشف العمليات غير المعروفة وتغييرات الملفات، ويفرض القيود المسجلة مسبقًا، ويقوم بأتمتة حذف البود أو التنبيه للتخفيف من هجمات الفدية والهجمات الأخرى.

احمِ تطبيقاتك التي تعمل على Kubernetes من الهجمات الضارة عن طريق التسجيل المسبق للعمليات الموثوقة وتوقيعات الملفات الموثوقة. سيكتشف تاريان العمليات غير المعروفة والتغييرات في الملفات المسجلة، ثم سيرسل تنبيهات ويتخذ إجراءً آليًا. أنقذ بيئة K8s الخاصة بك من برامج الفدية!
نريد الحفاظ على هذا كمشروع مفتوح المصدر لمكافحة الهجمات على نظام Kubernetes البيئي المفضل لدينا. من خلال المساهمة المستمرة، يمكننا مواجهة التهديدات معًا كمجتمع.
كيف يعمل تاريان؟
يعمل وكيل مجموعة تاريان (Cluster Agent) في مجموعة Kubernetes ويكتشف العمليات غير المعروفة والتغييرات غير المعروفة في الملفات، ويبلغ بها إلى خادم تاريان، ويمكنه اتخاذ إجراء اختياري: حذف البود المخالف. يستخدم eBPF لاكتشاف العمليات الجديدة. بالنسبة لاكتشاف تغييرات الملفات، يقوم وكيل مجموعة تاريان بحقن حاوية جانبية (sidecar) في بود تطبيقك الرئيسي، والتي ستتحقق من المجاميع الاختبارية للملفات في المسار المكوّن وتقارنها مع المجاميع الاختبارية المسجلة في خادم تاريان. سيكون تاريان جزءًا من بود تطبيقك من بيئة التطوير إلى بيئة الإنتاج، وبالتالي يمكنك التسجيل في قاعدة بيانات تاريان الخاصة بك ما يفترض حدوثه وتشغيله في الحاوية الخاصة بك + توقيعات الملفات التي يجب مراقبتها + ما يمكن إخطاره + الإجراء الذي سيتم اتخاذه (تدمير البود ذاتيًا) بناءً على التغييرات المكتشفة. انقل آلية الكشف الخاصة بك إلى اليسار!
ماذا لو حدث تغيير غير معروف داخل الحاوية ليس في قاعدة بيانات تسجيل تاريان، كيف سيتفاعل تاريان معه؟
إذا حدث تغيير غير معروف، يمكن لتاريان ببساطة إخطار فريق الأمان لديك بالتحليلات المرصودة. بعد ذلك، يمكن لمهندسي الأمن لديك تسجيل هذا التغيير في قاعدة بيانات تاريان سواء اعتبر تهديدًا أم لا. أيضًا، بناءً على تحليلهم، يمكنهم تكوين الإجراء الذي يجب اتخاذه عند حدوث هذا التغيير مرة أخرى.
كيف تساعد مساهمة المجتمع في مكافحة التهديدات عبر تاريان؟
أي اكتشاف جديد يتم تحليله ووضع علامة عليه كتهديد من قبل خبراء الأمن لديك، إذا اختاروا ذلك، يمكن مشاركته مع قاعدة بيانات مجتمع تاريان مفتوحة المصدر مع جميع السجلات والسلاسل النصية التي يجب البحث عنها والملاحظات والشفافية والإجراءات التي يجب تكوينها... بشكل أساسي أي شيء يريد الخبراء التحذير منه ومشاركته مع المجتمع. يمكنك استخدام هذه المعلومات كمستخدم لتاريان وتكوين الإجراءات في تطبيق تاريان المستخدم في بيئتك. هذه بآلية أساسية لمشاركة المعلومات حول التهديدات وما يجب فعله بها. يساعد هذا الجميع الذين يستخدمون تاريان على اتخاذ الإجراءات معًا في بيئات K8s الخاصة بهم من خلال مشاركة معرفتهم وخبراتهم.
ما نوع الإجراءات التي سيتخذها تاريان بناءً على التهديدات المعروفة؟
سيدمر تاريان ببساطة البود الذي يعمل عليه ذاتيًا. إذا انتشر البرنامج الضار/الفيروس إلى بقية البيئة، فأنت تعرف ما يحدث. لذلك، تم تصميم تاريان بشكل أساسي للمساعدة في تقليل المخاطر قدر الإمكان عن طريق تدمير البودات. سيتم التعامل مع توفير بود جديد من خلال نشر K8s. سيقوم تاريان فقط بتدمير البودات إذا أخبرته بذلك. إذا كنت لا تريد حدوث أي إجراءات، فلا يتعين عليك تكوين أو تشغيل أي منها؛ يمكنك ببساطة إخبار تاريان بإخطارك فقط. يقوم تاريان بما تريده لتقليل المخاطر.
لماذا أداة أمنية جديدة أخرى عندما تتوفر بالفعل العديد من الأدوات، مثل Falco وKube-Hunter وKube-Bench وCalico Enterprise Security وغيرها الكثير من الأدوات الأمنية (مفتوحة المصدر والتجارية) التي يمكنها اكتشاف التهديدات ومنعها على مستوى الشبكة والبنية التحتية والتطبيق؟ لماذا تاريان؟
السبب الرئيسي وراء إنشاء تاريان هو مكافحة التهديدات في Kubernetes معًا كمجتمع. سبب آخر هو، ماذا لو كان لا يزال هناك هجوم متطور قادر على اختراق كل طبقة من طبقات الأمان الخاصة بك، وقادر على الوصول إلى تطبيق وقت التشغيل (Remote Code Execution) وأحجام التخزين الخاصة بك، وقادر على الانتشار لإتلاف أو قفل البنية التحتية والبيانات الخاصة بك؟! ماذا تريد أن تفعل حيال مثل هذه الهجمات، خاصة تلك التي تتحول إلى برامج فدية. تم تصميم تاريان لتقليل هذه المخاطر، من خلال اتخاذ إجراءات. نحن نعلم أن تاريان ليس الحل الأمثل، لكننا واثقون من أنه يمكن أن يساعد في تقليل المخاطر خاصة عند مشاركة المعرفة باستمرار من قبل المجتمع. من منظور تقني، يمكن لتاريان المساعدة في تقليل المخاطر عن طريق تدمير الموارد المصابة.

| البيئة | حالة العمل | ملاحظات |
|---|---|---|
| Kind v0.14.0 | ✔️ | |
| Minikube v1.26.0 | ✔️ | |
| Linode Kubernetes Engine (LKE) 1.22 | ✔️ | |
| Digital Ocean Kubernetes Engine (DOKS) 1.22 | ✔️ | |
| Google Kubernetes Engine (GKE) 1.22 | ✔️ | |
| Amazon Elastic Kubernetes Engine (EKS) | ➖ | kernel < 5.8 |
| Azure Kubernetes Service (AKS) | ➖ | kernel < 5.8 |
kubectl create namespace tarian-system
يمكنك استخدام أي خيار تثبيت Dgraph طالما يمكن الوصول إليه من خادم تاريان.
helm repo add tarian https://kube-tarian.github.io/helm-charts
helm repo update
helm upgrade -i tarian-server tarian/tarian-server --devel -n tarian-system --set server.dgraph.address=DGRAPH_ADDRESS:PORT
helm upgrade -i tarian-cluster-agent tarian/tarian-cluster-agent --devel -n tarian-system
kubectl wait --for=condition=ready pod --all -n tarian-system
kubectl exec -ti deploy/tarian-server -n tarian-system -- ./tarian-server dgraph apply-schema
قم بتنزيل ملف tarianctl الثنائي من صفحة إصدارات GitHub.
شغّل:
tarianctl install
يمكنك استخدام العلامات التالية لتخصيص التثبيت الخاص بك.
تثبيت تاريان على Kubernetes.
الاستخدام:
tarianctl install [flags]
العلامات:
--agents-values strings مسار ملف قيم Helm لوكيل مجموعة تاريان ووكيل العقدة.
--charts string مسار دليل مخططات Helm الخاصة بتاريان.
--dgraph-values strings مسار ملف قيم Helm لـ DGraph.
-h, --help مساعدة للتثبيت
-n, --namespace string المساحة الاسمية لتثبيت تاريان. (الافتراضي "tarian-system")
--nats-values strings مسار ملف قيم Helm لـ Nats.
--server-values strings مسار ملف قيم Helm لخادم تاريان.