Skip to content
KitploitKITPLOIT
أدواتالمدونة
إرسال
أدواتالمدونة
إرسال

أدوات الاختراق واختبار الاختراق والأمن السيبراني لترسانتك الأمنية!

Kitploit هو دليل لأدوات الاختراق والأمن السيبراني واختبار الاختراق. اكتشف آخر تحديثات المشاريع للعثور على الثغرات وتحليل الأنظمة وأتمتة الاختبارات وتعزيز أمنك.

··الخلاصات·اتصال·الخصوصية·© 2026 Kitploit

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
tarian — عامل أمن وقت التشغيل قائم على eBPF لـ Kubernetes يكتشف العمليات غير المعروفة وتغييرات الملفات، ويفرض القيود المسجلة مسبقًا، ويقوم بأتمتة حذف البود أو التنبيه للتخفيف من هجمات الفدية والهجمات الأخرى. | Kitploit
أدوات/GitHubGitHub/kube-tarian/tarian
أمن الحاوياتتحليل البرمجيات الخبيثةأمن السحابةDevSecOpsاستخبارات التهديداتكشف التسلل
GitHubkube-tarian/tarian

tarian

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

عرض المستودع
5815منذ 2 سنواتتمت المراجعة من قبل Kitploit

الأكثر شعبية

عرض الكل →

اكتشف الأدوات الأكثر استخدامًا من قبل مجتمعنا.

استكشف جميع الأدوات

تصفح مجموعتنا من الأدوات

عرض جميع الأدوات →
مشاركة

تاريان

احمِ تطبيقاتك التي تعمل على Kubernetes من الهجمات الضارة عن طريق التسجيل المسبق للعمليات الموثوقة وتوقيعات الملفات الموثوقة. سيكتشف تاريان العمليات غير المعروفة والتغييرات في الملفات المسجلة، ثم سيرسل تنبيهات ويتخذ إجراءً آليًا. أنقذ بيئة K8s الخاصة بك من برامج الفدية!

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

Build status Go Report Card codecov


كيف يعمل تاريان؟

يعمل وكيل مجموعة تاريان (Cluster Agent) في مجموعة Kubernetes ويكتشف العمليات غير المعروفة والتغييرات غير المعروفة في الملفات، ويبلغ بها إلى خادم تاريان، ويمكنه اتخاذ إجراء اختياري: حذف البود المخالف. يستخدم eBPF لاكتشاف العمليات الجديدة. بالنسبة لاكتشاف تغييرات الملفات، يقوم وكيل مجموعة تاريان بحقن حاوية جانبية (sidecar) في بود تطبيقك الرئيسي، والتي ستتحقق من المجاميع الاختبارية للملفات في المسار المكوّن وتقارنها مع المجاميع الاختبارية المسجلة في خادم تاريان. سيكون تاريان جزءًا من بود تطبيقك من بيئة التطوير إلى بيئة الإنتاج، وبالتالي يمكنك التسجيل في قاعدة بيانات تاريان الخاصة بك ما يفترض حدوثه وتشغيله في الحاوية الخاصة بك + توقيعات الملفات التي يجب مراقبتها + ما يمكن إخطاره + الإجراء الذي سيتم اتخاذه (تدمير البود ذاتيًا) بناءً على التغييرات المكتشفة. انقل آلية الكشف الخاصة بك إلى اليسار!

ماذا لو حدث تغيير غير معروف داخل الحاوية ليس في قاعدة بيانات تسجيل تاريان، كيف سيتفاعل تاريان معه؟

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

كيف تساعد مساهمة المجتمع في مكافحة التهديدات عبر تاريان؟

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

ما نوع الإجراءات التي سيتخذها تاريان بناءً على التهديدات المعروفة؟

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

لماذا أداة أمنية جديدة أخرى عندما تتوفر بالفعل العديد من الأدوات، مثل Falco وKube-Hunter وKube-Bench وCalico Enterprise Security وغيرها الكثير من الأدوات الأمنية (مفتوحة المصدر والتجارية) التي يمكنها اكتشاف التهديدات ومنعها على مستوى الشبكة والبنية التحتية والتطبيق؟ لماذا تاريان؟

السبب الرئيسي وراء إنشاء تاريان هو مكافحة التهديدات في Kubernetes معًا كمجتمع. سبب آخر هو، ماذا لو كان لا يزال هناك هجوم متطور قادر على اختراق كل طبقة من طبقات الأمان الخاصة بك، وقادر على الوصول إلى تطبيق وقت التشغيل (Remote Code Execution) وأحجام التخزين الخاصة بك، وقادر على الانتشار لإتلاف أو قفل البنية التحتية والبيانات الخاصة بك؟! ماذا تريد أن تفعل حيال مثل هذه الهجمات، خاصة تلك التي تتحول إلى برامج فدية. تم تصميم تاريان لتقليل هذه المخاطر، من خلال اتخاذ إجراءات. نحن نعلم أن تاريان ليس الحل الأمثل، لكننا واثقون من أنه يمكن أن يساعد في تقليل المخاطر خاصة عند مشاركة المعرفة باستمرار من قبل المجتمع. من منظور تقني، يمكن لتاريان المساعدة في تقليل المخاطر عن طريق تدمير الموارد المصابة.

مخطط العمارة

Arch. Diagram

المتطلبات

  • إصدار Kubernetes مدعوم (حاليًا 1.22+)
  • إصدار النواة >= 5.8
  • نواة تحتوي على معلومات BTF لدعم eBPF CO-RE. تأتي بعض توزيعات Linux الرئيسية مع BTF النواة مدمجة بالفعل. إذا كانت نواتك لا تحتوي على BTF مدمجًا، فستحتاج إلى بناء نواة مخصصة. راجع BPF CO-RE.

تم اختباره على بيئات/خدمات Kubernetes الشائعة:

إعداد المساحات الاسمية

root@kitploit:~
kubectl create namespace tarian-system

إعداد قاعدة بيانات Dgraph

يمكنك استخدام أي خيار تثبيت Dgraph طالما يمكن الوصول إليه من خادم تاريان.

تثبيت تاريان

  1. تثبيت تاريان باستخدام Helm
root@kitploit:~
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
  1. انتظر حتى تصبح جميع البودات جاهزة
root@kitploit:~
kubectl wait --for=condition=ready pod --all -n tarian-system
  1. تطبيق مخطط Dgraph
root@kitploit:~
kubectl exec -ti deploy/tarian-server -n tarian-system -- ./tarian-server dgraph apply-schema

تثبيت تاريان باستخدام واجهة سطر الأوامر tarianctl

قم بتنزيل ملف tarianctl الثنائي من صفحة إصدارات GitHub.

شغّل:

root@kitploit:~
tarianctl install

يمكنك استخدام العلامات التالية لتخصيص التثبيت الخاص بك.

root@kitploit:~
تثبيت تاريان على 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 لخادم تاريان.

العلامات العامة:
  -k, --kubeconfig string                   مسار ملف kubeconfig للاستخدام
  -e, --log-formatter string                منسق السجل الصحيح: json, text(default) (الافتراضي "text")
  -l, --log-level string                    مستويات السجل الصحيحة: debug, info(default), warn/warning, error, fatal (الافتراضي "info")
  -s, --server-address string               عنوان خادم تاريان للاتصال به (الافتراضي "localhost:50051")
  -c, --server-tls-ca-file string           ملف CA الذي يستخدمه الخادم لاتصال TLS
  -t, --server-tls-enabled                  إذا تم تمكينه، سيتواصل مع الخادم باستخدام TLS
  -i, --server-tls-insecure-skip-verify     إذا تم تعيينه على true، فسيتخطى التحقق من سلسلة شهادات الخادم واسم المضيف (الافتراضي true)

التكوين

راجع قيم مخطط Helm لـ

  • tarian-server
  • tarian-cluster-agent

تكوين خاص بالسحابة / البائع

مجموعة GKE الخاصة

تقوم مجموعة GKE الخاصة افتراضيًا بإنشاء قواعد جدار الحماية لتقييد الاتصال من السيد إلى العقد فقط على المنفذين 443 و 10250. لحقن حاوية tarian-pod-agent، يستخدم تاريان خطاف قبول متحول (mutating admission webhook). يعمل خادم الويب هوك على المنفذ 9443. لذلك، نحتاج إلى إنشاء قاعدة جدار حماية جديدة للسماح بالدخول من نطاق عنوان IP للسيد إلى العقد على منفذ TCP 9443.

لمزيد من التفاصيل، راجع وثائق GKE حول هذا الموضوع: https://cloud.google.com/kubernetes-engine/docs/how-to/private-clusters#add_firewall_rules.

الاستخدام

استخدام tarianctl للتحكم في خادم تاريان

  1. قم بالتنزيل من صفحة الإصدارات على GitHub
  2. قم بفك ضغط الملف وانسخ tarianctl إلى دليل PATH الخاص بك
  3. قم بتعريض خادم تاريان لجهازك، من خلال Ingress أو port-forward. في هذا المثال، سنستخدم port-forward:
root@kitploit:~
kubectl port-forward svc/tarian-server -n tarian-system 41051:80
  1. قم بتكوين عنوان الخادم باستخدام متغير بيئة
root@kitploit:~
export TARIAN_SERVER_ADDRESS=localhost:41051

لعرض أحداث الانتهاك

root@kitploit:~
tarianctl get events

إضافة قيد عملية

root@kitploit:~
tarianctl add constraint --name nginx --namespace default \
  --match-labels run=nginx \
  --allowed-processes=pause,tarian-pod-agent,nginx 
root@kitploit:~
tarianctl get constraints

إضافة قيد ملف

root@kitploit:~
tarianctl add constraint --name nginx-files --namespace default \
  --match-labels run=nginx \
  --allowed-file-sha256sums=/usr/share/nginx/html/index.html=38ffd4972ae513a0c79a8be4573403edcd709f0f572105362b08ff50cf6de521
root@kitploit:~
tarianctl get constraints

تشغيل وكيل تاريان في بود

بعد إنشاء القيود، نقوم بحقن tarian-pod-agent في البود عن طريق إضافة تعليق توضيحي (annotation):

root@kitploit:~
metadata:
  annotations:
    pod-agent.k8s.tarian.dev/threat-scan: "true"

سيكون للبود مع هذا التعليق التوضيحي حاوية إضافية محقونة (tarian-pod-agent). ستقوم حاوية tarian-pod-agent بفحص بيئة وقت التشغيل بشكل مستمر بناءً على القيود المسجلة. سيتم الإبلاغ عن أي انتهاك، وسيكون قابلاً للوصول باستخدام tarianctl get events.

عرض توضيحي: جرب بودًا ينتهك القيود

root@kitploit:~
kubectl apply -f https://raw.githubusercontent.com/kube-tarian/tarian/main/dev/config/monitored-pod/configmap.yaml
kubectl apply -f https://raw.githubusercontent.com/kube-tarian/tarian/main/dev/config/monitored-pod/pod.yaml

# انتظر حتى يصبح جاهزًا
kubectl wait --for=condition=ready pod nginx

# محاكاة تشغيل عملية غير معروفة
kubectl exec -ti nginx -c nginx -- sleep 15

# يجب أن تراها تم الإبلاغ عنها في تاريان
tarianctl get events

تكامل Alert Manager

يأتي تاريان مع Prometheus Alert Manager افتراضيًا. إذا كنت تريد استخدام مثيل آخر من Alert Manager:

root@kitploit:~
helm install tarian-server tarian/tarian-server --devel \
  --set server.alert.alertManagerAddress=http://alertmanager.monitoring.svc:9093 \
  --set alertManager.install=false \
  -n tarian-system

لتعطيله، يمكنك تعيين قيمة alertManagerAddress على فارغة.

استكشاف الأخطاء وإصلاحها

راجع docs/troubleshooting.md

التسجيل التلقائي للقيود

عندما يعمل tarian-pod-agent في وضع التسجيل، بدلاً من الإبلاغ عن العمليات والملفات غير المعروفة كانتهاكات، يقوم بتسجيلها تلقائيًا كقيد جديد. هذا مناسب لتوفير الوقت من التسجيل يدويًا.

لتمكين تسجيل القيد، يجب تكوين وكيل المجموعة.

root@kitploit:~
helm install tarian-cluster-agent tarian/tarian-cluster-agent --devel -n tarian-system \
  --set clusterAgent.enableAddConstraint=true
root@kitploit:~
metadata:
  annotations:
    # سجل كلاً من العمليات والمجاميع الاختبارية للملفات
    pod-agent.k8s.tarian.dev/register: "processes,files"
    # تجاهل مسارات محددة من التسجيل التلقائي
    pod-agent.k8s.tarian.dev/register-file-ignore-paths: "/usr/share/nginx/**/*.txt"

يمكن أيضًا إجراء التسجيل التلقائي للقيود في مجموعة dev/staging، بحيث يكون هناك تغييرات أقل في الإنتاج.

تعليقات توضيحية مدعومة أخرى

root@kitploit:~
metadata:
  annotations:
    # حدد عدد المرات التي يجب أن يتحقق فيها tarian-pod-agent من المجموع الاختباري للملف
    pod-agent.k8s.tarian.dev/file-validation-interval: "1m"

تأمين خادم تاريان باستخدام TLS

لتأمين خادم تاريان باستخدام TLS، قم بإنشاء secret يحتوي على شهادة TLS. يمكنك إنشاء secret يدويًا، أو باستخدام Cert Manager. بمجرد حصولك على secret، يمكنك تمرير الاسم إلى قيمة مخطط Helm:

root@kitploit:~
helm upgrade -i tarian-server tarian/tarian-server --devel -n tarian-system \
  --set server.tlsSecretName=tarian-server-tls

المساهمة

راجع docs/contributing.md

مدونة قواعد السلوك

راجع CODE_OF_CONDUCT.md

قائمة مالكي الكود والمشرفين

راجع MAINTAINERS.md

انضم إلى قناة Slack الخاصة بنا "tarian"

Kube-Tarian-Slack

تنزيل الأداة
البيئةحالة العململاحظات
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