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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
LDAP-Monitoring-Watchdog — LDAP Watchdog: أداة مراقبة LDAP متوافقة مع لينكس وفي الوقت الفعلي لاكتشاف التغييرات في الدليل، مما يوفر رؤية للإضافات والتعديلات والحذف للمسؤولين والباحثين في مجال الأمن. | Kitploit
أدوات/GitHubGitHub/megamansec/ldap-monitoring-watchdog
استخبارات التهديداتالاستجابة للحوادثتحليل السجلاتArchived
GitHubmegamansec/ldap-monitoring-watchdog

LDAP-Monitoring-Watchdog

LDAP Watchdog: أداة مراقبة LDAP متوافقة مع لينكس وفي الوقت الفعلي لاكتشاف التغييرات في الدليل، مما يوفر رؤية للإضافات والتعديلات والحذف للمسؤولين والباحثين في مجال الأمن.

عرض المستودع

الأكثر شعبية

عرض الكل →

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

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

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

عرض جميع الأدوات →
مشاركة
19416منذ 4 أشهرتمت المراجعة من قبل Kitploit

LDAP Watchdog

نظرة عامة

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

هذا البرنامج من كتابة Joshua Rogers.

إذا كنت مهتمًا بأي مما يلي، فإن LDAP Watchdog هو ما تبحث عنه:

  • معرفة ما يحدث في دليل LDAP الخاص بك عند الطلب مع تكامل webhook الخاص بـ Slack.
  • رؤية الموظفين الجدد والمغادرين والترقيات عند ظهورهم في LDAP.
  • مراقبة متى وماذا تفعل الموارد البشرية.
  • اكتشاف التغييرات غير المصرح بها في LDAP.
  • مراقبة تسرب البيانات عن طريق الخطأ.
  • اكتشاف عندما يقوم المستخدمون بتسجيل الدخول والخروج من LDAP.

بالإضافة إلى مراقبة التعديلات والإضافات والإزالات في دليل LDAP، يمكن تكوينه لتجاهل سمات محددة، أو حتى ضبطه بدقة لتجاهل السمات الدقيقة اعتمادًا على قيمها القديمة/الجديدة.

يمكن إعادة توجيه التغييرات التي تتم مراقبتها إما إلى webhook من Slack أو إخراجها إلى الطرفية (أو كليهما). يتم دعم الإخراج الملون الاختياري أيضًا.

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

أمثلة (بدون تصفية)

ملاحظة: في الأمثلة أدناه، يمكن تجاهل entryCSN و modifyTimestamp تمامًا عن طريق تعيين LDAP_WATCHDOG_IGNORED_ATTRIBUTES=entryCSN,modifyTimestamp.

إخراج الطرفية (ملون):

مثال على الإخراج من LDAP Watchdog

إخراج Slack:

مثال على الإخراج من LDAP Watchdog في Slack

الميزات

  1. المراقبة في الوقت الفعلي: يراقب LDAP Watchdog باستمرار دليل LDAP بحثًا عن تغييرات في إدخالات المستخدمين والمجموعات.

  2. مقارنة التغييرات: تقارن الأداة التغييرات بين عمليات البحث المتتالية في LDAP، مع إبراز الإضافات والتعديلات والحذف.

  3. التحقق من المستخدم الضابط: يدعم LDAP Watchdog آلية مستخدم ضابط، مما يؤدي إلى حدوث خطأ إذا لم يتم العثور على تغييرات المستخدم الضابط.

  4. تصفية LDAP المرنة: يمكن للمستخدمين تخصيص تصفية LDAP باستخدام متغير البيئة LDAP_WATCHDOG_SEARCH_FILTER للتركيز على فئات أو سمات كائن محددة.

  5. تكامل Slack: تلقي إشعارات في الوقت الفعلي على Slack للإدخالات المضافة أو المعدلة أو المحذوفة في LDAP.

  6. إخراج قابل للتخصيص: يوفر إخراج وحدة التحكم مؤشرات واضحة وملونة للإضافات والتعديلات والحذف لسهولة الرؤية.

  7. الإدخالات والسمات المتجاهلة: يمكن للمستخدمين تحديد UUIDs وسمات يتم تجاهلها أثناء عملية المقارنة.

  8. السمات المتجاهلة المشروطة: تسمح التصفية المشروطة للمستخدمين بتجاهل سمات محددة بناءً على نوع التغيير (إضافات، تعديلات، حذف).

المتطلبات

  • Python 3.7+.
  • حزمة ldap3. إذا كنت تستخدم webhook من Slack، فإن حزمة requests مطلوبة أيضًا.

التثبيت

PyPI

root@kitploit:~
pip install LDAP-Monitor

لتضمين دعم webhook من Slack:

root@kitploit:~
pip install LDAP-Monitor[slack]

Docker

root@kitploit:~
docker pull megamansec/ldap-monitor

أو من GitHub Container Registry:

root@kitploit:~
docker pull ghcr.io/megamansec/ldap-monitoring-watchdog

من المصدر

root@kitploit:~
git clone https://github.com/MegaManSec/LDAP-Monitoring-Watchdog.git
cd LDAP-Monitoring-Watchdog
pip install ".[slack]"

الاستخدام

التشغيل باستخدام pip install

root@kitploit:~
export LDAP_WATCHDOG_SERVER='ldaps://ldaps.intra.lan'
export LDAP_WATCHDOG_BASE_DN='dc=mouse,dc=com'
export LDAP_WATCHDOG_USERNAME='Emily'
export LDAP_WATCHDOG_PASSWORD='qwerty123'
ldap-watchdog

أو باستخدام python -m:

root@kitploit:~
python -m ldap_watchdog

التشغيل باستخدام Docker

root@kitploit:~
docker run -d \
  -e LDAP_WATCHDOG_SERVER='ldaps://ldaps.intra.lan' \
  -e LDAP_WATCHDOG_BASE_DN='dc=mouse,dc=com' \
  -e LDAP_WATCHDOG_USERNAME='Emily' \
  -e LDAP_WATCHDOG_PASSWORD='qwerty123' \
  -e SLACK_WEBHOOK_URL='https://hooks.slack.com/services/[...]' \
  -e LDAP_WATCHDOG_IGNORED_ATTRIBUTES='modifyTimestamp,phoneNumber,officeLocation,gecos' \
  megamansec/ldap-monitor

تثبيت Systemd (توزيعات Debian)

يتم توفير سكريبت تثبيت لتوزيعات Debian، install.sh. عند تشغيله كجذر، يقوم هذا السكريبت بـ:

  1. إنشاء (إذا لزم الأمر) بيئة Python افتراضية في /opt/ldap-watchdog.
  2. تثبيت LDAP Watchdog من PyPI داخل تلك البيئة الافتراضية.
  3. إنشاء ملف بيئة في /etc/ldap-watchdog.env للتكوين.
  4. تثبيت وتمكين خدمة systemd (/etc/systemd/system/ldap-watchdog.service) التي تشغل ldap-watchdog في الخلفية.
  5. تكوين التسجيل في /var/log/ldap-watchdog.log و /var/log/ldap-watchdog-error.log.
  6. إعداد تدوير السجلات في /etc/logrotate.d/ldap-watchdog.

يمكنك اختياريًا تمرير وسيطة واحدة إلى install.sh لتعيين SLACK_WEBHOOK_URL:

root@kitploit:~
sudo ./install.sh "https://hooks.slack.com/services/[...]"

بعد التثبيت، قم بتحرير /etc/ldap-watchdog.env لتكوين إعدادات اتصال LDAP، ثم أعد تشغيل الخدمة:

root@kitploit:~
sudo systemctl restart ldap-watchdog

التكوين

يتم جميع التكوين عبر متغيرات البيئة. المتغيرات التالية مدعومة:

الإعدادات العامة

المستخدم الضابط

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

تكامل Slack

متغير البيئةالوصفالافتراضي
SLACK_WEBHOOK_URL

الإدخالات والسمات المتجاهلة

السمات المتجاهلة المشروطة

يقبل متغير البيئة LDAP_WATCHDOG_CONDITIONAL_IGNORED_ATTRIBUTES سلسلة JSON حيث تكون المفاتيح هي أسماء السمات والقيم هي قوائم من القيم التي سيتم تجاهلها:

root@kitploit:~
export LDAP_WATCHDOG_CONDITIONAL_IGNORED_ATTRIBUTES='{
  "objectClass": ["posixAccount"],
  "memberOf": ["cn=mailing-list-user,ou=Accessgroups,dc=mouse,dc=com", "cn=interns,ou=Accessgroups,dc=mouse,dc=com"],
  "organizationalStatus": ["researcher"]
}'

مثال للتكوين

root@kitploit:~
export LDAP_WATCHDOG_CONTROL_UUID='a71c6e4c-8881-4a03-95bf-4fc25d5e6359'
export LDAP_WATCHDOG_SERVER='ldaps://ldaps.intra.lan'
export LDAP_WATCHDOG_BASE_DN='dc=mouse,dc=com'
export LDAP_WATCHDOG_USERNAME='Emily'
export LDAP_WATCHDOG_PASSWORD='qwerty123'
export LDAP_WATCHDOG_USE_SSL='true'
export LDAP_WATCHDOG_REFRESH_RATE='60'
export LDAP_WATCHDOG_DISABLE_COLOR_OUTPUT='false'
export LDAP_WATCHDOG_IGNORED_UUIDS='e191c564-6e6d-42c1-ae51-bda0509fe846,8655e0d9-ecdc-46ce-ba42-1fa3dfbf5faa'
export LDAP_WATCHDOG_IGNORED_ATTRIBUTES='modifyTimestamp,phoneNumber,officeLocation,gecos'
export LDAP_WATCHDOG_CONDITIONAL_IGNORED_ATTRIBUTES='{"objectClass":["posixAccount"],"memberOf":["cn=mailing-list-user,ou=Accessgroups,dc=mouse,dc=com","cn=interns,ou=Accessgroups,dc=mouse,dc=com"],"organizationalStatus":["researcher"]}'
export SLACK_WEBHOOK_URL='https://hooks.slack.com/services/[...]'

ldap-watchdog

القيود

  1. قد يخفي تكوين LDAP_WATCHDOG_CONDITIONAL_IGNORED_ATTRIBUTES للأسف تغييرات مهمة ليس المقصود إخفاؤها. قد يحدث هذا إذا كانت السمة تحتوي على قيمة واحدة تم تغييرها. وذلك لأن السمات المتجاهلة المشروطة ستخفي التغييرات في السمة عندما يتم تغيير القيمة إلى بالإضافة إلى من القيمة المتجاهلة؛ على سبيل المثال، إذا كان المستخدم memberOf cn=mailing-list-user,ou=Accessgroups,dc=mouse,dc=com والتي تم تغييرها إلى cn=super-administrator,ou=Accessgroups,dc=mouse,dc=com، فسيتم تفويتها.
  2. مشابه لـ #1، لا توجد طريقة حقيقية لتحديد ما إذا كان التغيير هو حقًا تغيير في بعض الحالات، أو إزالة ثم إضافة في نفس الوقت. نظريًا، لا يهم حقًا، لكن من المهم ملاحظته.

الترخيص

هذا المشروع مرخص بموجب GPL3.0.

تنزيل الأداة
متغير البيئةالوصفالافتراضي
LDAP_WATCHDOG_SERVERعنوان URL لخادم LDAP (مثل ldaps://ldaps.intra.lan)""
LDAP_WATCHDOG_BASE_DNالاسم المميز الأساسي لعمليات بحث LDAP""
LDAP_WATCHDOG_USERNAMEاسم مستخدم LDAP للمصادقة. اتركه فارغًا للربط المجهول.""
LDAP_WATCHDOG_PASSWORDكلمة مرور LDAP للمصادقة. اتركها فارغة للربط المجهول.""
LDAP_WATCHDOG_USE_SSLاضبط على true لاستخدام SSL، false بخلاف ذلكtrue
LDAP_WATCHDOG_SEARCH_FILTERفلتر LDAP لإدخالات المستخدمين والمجموعات(&(|(objectClass=inetOrgPerson)(objectClass=groupOfNames)))
LDAP_WATCHDOG_SEARCH_ATTRIBUTEقائمة مفصولة بفواصل من السمات لاستردادها. يتم استخدام *,+ افتراضيًا لتضمين السمات التشغيلية.*,+
LDAP_WATCHDOG_REFRESH_RATEالفاصل الزمني بالثواني بين عمليات بحث LDAP المتتالية60
LDAP_WATCHDOG_DISABLE_COLOR_OUTPUTاضبط على true لتعطيل الإخراج الملون للطرفيةfalse
""
LDAP_WATCHDOG_CONTROL_USER_ATTRIBUTEسمة محددة للتحقق من التغييرات في المستخدم الضابط. إذا تم تعيينها، يجب أن تكون هذه السمة قد تغيرت لمستخدم UUID الضابط.""
عنوان URL لـ Slack Webhook للإشعارات. يتطلب حزمة slack الإضافية (pip install LDAP-Monitor[slack]).
None
LDAP_WATCHDOG_SLACK_BULLETPOINTحرف النقطة المستخدم في مخرجات Slack ووحدة التحكم\u2022
متغير البيئةالوصفالافتراضي
LDAP_WATCHDOG_IGNORED_UUIDSقائمة مفصولة بفواصل من UUIDs لتجاهلها أثناء المقارنة""
LDAP_WATCHDOG_IGNORED_ATTRIBUTESقائمة مفصولة بفواصل من السمات لتجاهلها أثناء المقارنة""
LDAP_WATCHDOG_CONDITIONAL_IGNORED_ATTRIBUTESسلسلة JSON من السمات التي سيتم تجاهلها بشكل مشروط (انظر أدناه){}