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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
ehids-agent — نظام كشف التسلل قائم على المضيف لنظام Linux يعتمد على eBPF. | Kitploit
أدوات/GitHubGitHub/gojue/ehids-agent
أدوات دفاعيةالتحليل الديناميكي (عزل)تخطيط الشبكةكشف التسللالأوراق والأبحاثالتعلم والتعليمتحليل DNSالهروب من الحاوية
GitHubgojue/ehids-agent

ehids-agent

نظام كشف التسلل قائم على المضيف لنظام Linux يعتمد على eBPF.

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

الأكثر شعبية

عرض الكل →

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

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

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

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

الإنجليزية | 中文介绍

مقدمة إلى eHIDS

HIDS demo مطبَّق باستخدام تقنية نواة eBPF.

تحذير مجرد DEMO يعتمد على eBPF، يُرجى استخدام Tetragon / Tracee / falco بدلاً من ذلك.

التطبيقات والوظائف:

  1. التقاط بيانات شبكة TCP
  2. التقاط بيانات شبكة UDP
  3. التقاط معلومات DNS في وضع uprobe
  4. التقاط بيانات العمليات
  5. طريقة Uprobe لتحقيق التقاط أحداث مشهد تنفيذ أوامر JAVA RASP
  6. تنفيذ إطار عمل Go لـ eBPF، تطبيق مجرد لأحداث متعددة الأنواع لطريقة التثبيت kprobe\uprobe.
  7. يحتاج المطورون فقط إلى تنفيذ ثلاثة ملفات:
    • ملف C في وضع النواة.
    • ملف go في وضع المستخدم.
    • هيكل رسالة الحدث في وضع المستخدم، وسيقوم الإطار تلقائيًا بالتحميل والتنفيذ.
  8. يمكن للمستخدمين تنفيذ الإبلاغ عن البيانات ومعالجتها وفقًا لواجهة المسجل (logger)، مثل الإبلاغ إلى مراكز السجلات مثل ES\kafka وغيرها.

المبدأ

المرجع: موقع eBPF الرسمي

  1. في وضع النواة، يُكتب كود eBPF بلغة C، ويتم تجميع llvm إلى بايت كود eBPF.
  2. وضع المستخدم مكتوب بلغة golang، باستخدام مكتبة cilium/ebpf النقية للغة Go، تحميل النواة لبايت كود eBPF، ربط kprobe/uprobe بالدالة المقابلة.
  3. يستخدم وضع المستخدم golang لقراءة الأحداث وفك تشفيرها ومعالجتها.

التخطيط

الجدولة

يقوم المؤلف بتحليل منتجات حماية أمان وقت التشغيل المطبَّقة بواسطة تقنيات eBPF السحابية الأصلية مثل cilium وdatadog وtracee وfalco وkubeArmor من منظور شفرة المصدر. بعد الانتهاء من التحليل، سأستمر في مشاركة تصميم وأفكار ووظائف هذا المنتج.

التقدم الحالي والتغييرات

  • 【تم】2021-12-09 تحليل شفرة مصدر آلية تنفيذ Cilium eBPF
  • 【تم】2021-12-19 تحليل آلية الكشف الأمني لـ datadog باستخدام eBPF
  • 【تم】2021-12-30 برنامج eBPF في وضع النواة لتنفيذ هروب الحاوية وإخفاء روتكيت الحساب
  • 【قيد التنفيذ】2022-1-31 تحليل شفرة مصدر آلية تنفيذ eBPF في tracee
  • ...

ميزات المنتج

  1. وظائف كاملة (شبكة، عمليات، ملفات، أحداث)
  2. المراقبة
  3. التنبيه
  4. الدمج
  5. الإحصائيات
  6. المصالحة
  7. الإدارة والتحكم الموحدان

التعليمات

  1. جزء وضع النواة هو كود برمجة ebpf المطبق بواسطة مكتبة الفئات الأصلية للينكس، ويستخدم clang (llvm) لتجميع البايت كود.
  2. جزء وضع المستخدم مكتوب لمكتبة cilium/ebpf للغة golang، والتي تنفذ وظائف مثل تحميل بايت كود eBPF إلى النواة، والتثبيت على نقاط الربط (hook points)، وقراءة الأحداث.
  3. يستخدم هذا المشروع kprobe و uprobe على التوالي لتحقيق التقاط أحداث الشبكة لـ TCP و UDP.

بيئة التطوير

  • خادم UBUNTU 21.04
  • go version go1.17.2 linux/amd64
  • Ubuntu clang version 12.0.0-3ubuntu1~21.04.2
  • openjdk version "1.8.0_292"

خطوات تثبيت البيئة

انظر أيضًا: بيئة تطوير eBPF لـ CFC4N

  • sudo apt-get install -y make gcc libssl-dev bc libelf-dev libcap-dev clang gcc-multilib llvm libncurses5-dev git pkg-config libmnl-dev bison flex graphviz
  • sudo apt-get install -y make gcc clang llvm git pkg-config dpkg-dev gcc-multilib
  • cd ~/download/
  • sudo apt update
  • sudo apt-get source linux-image-$(uname -r)
  • sudo apt-get source linux-image-unsigned-$(uname -r)
  • sudo apt install libbfd-dev libcap-dev zlib1g-dev libelf-dev libssl-dev

التجميع والتشغيل

التجميع

root@kitploit:~
git clone https://github.com/ehids/ehids-agent.git
cd ehids
make
./bin/ehids-agent

التشغيل

افتح صدفة أخرى، ونفذ أوامر الشبكة، وقم بتشغيل سلوك الشبكة

root@kitploit:~
wget www.cnxct.com

أو قم بتجميع وتشغيل مثال تنفيذ أوامر java لاختبار وظيفة java RASP. يقوم Uprobe بتثبيت دالة JDK_execvpe الخاصة بـ libjava.so، وعنوان الإزاحة المقابل هو 0x19C30. للإصدارات الأخرى، يُرجى تحديد عنوان الإزاحة بنفسك.

root@kitploit:~
cd examples
javac Main.java
java Main

معلومات إصدار JAVA JDK

~$java -version

openjdk version "1.8.0_292"

OpenJDK Runtime Environment (build 1.8.0_292-8u292-b10-0ubuntu1-b10)

OpenJDK 64-Bit Server VM (build 25.292-b10, mixed mode)

النتائج

root@kitploit:~
root@vmubuntu:/home/cfc4n/project/ehids# ./bin/ehids
2021/12/01 19:27:08 start to run EBPFProbeUJavaRASP probe
2021/12/01 19:27:08 start to run EBPFProbeKTCP probe
2021/12/01 19:27:08 start to run EBPFProbeKTCPSec probe
2021/12/01 19:27:08 start to run EBPFProbeKUDP probe
2021/12/01 19:27:08 start to run EBPFProbeUDNS probe
2021/12/01 19:27:08 probeName:EBPFProbeKTCPSec, probeTpye:kprobe, start time:07:23:49, PID:864, UID:101, AF:2, TASK:5systemd-resolv
2021/12/01 19:27:08 probeName:EBPFProbeKUDP, probeTpye:kprobe, PID:0, comm:systemd-resolve, qname:57.22.91.101.in-addr.arpa, qclass:1, qtype:12.
2021/12/01 19:27:09 probeName:EBPFProbeKTCP, probeTpye:kprobe, start time:19:31:19, family:AF_INET, PID:409744, command:curl, UID:0, rx:67408, tx:79, dest:118.31.44.218:20480, source:172.16.71.4, type:OUT, result:True
2021/12/01 19:27:10 probeName:EBPFProbeUJavaRASP, probeTpye:uprobe, JAVA RASP exec and fork. PID:409049, command:ifconfig, mode:MODE_VFORK

المراجع

  • https://ebpf.io
  • https://github.com/trichimtrich/dns-tcp-ebpf
  • https://github.com/p-/socket-connect-bpf

آلية الاستغلال الخبيث والكشف عن eBPF

تمت مشاركة المقال حول آلية الاستغلال الخبيث والكشف المستندة إلى eBPF على حساب WeChat العام لـ مركز الاستجابة للطوارئ الأمنية في Meituan، الاستغلال الخبيث وآلية الكشف عن eBPF

مجموعة WeChat

ملاحظات

هذا ليس المستودع الرسمي لـ Meituan، وهو مساهمة فقط من قبل المهندسين.

لا يحتوي المستودع على إصدار HIDS الكامل المستخدم بواسطة Meituan، بل هو عرض توضيحي مبسط. إذا كنت بحاجة إلى رؤية شفرة المصدر الكاملة بالتفصيل، يرجى النقر: https://www.cnxct.com/jobs/

تنزيل الأداة