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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
reactor — يشغّل عوامل تصفية مخصصة على Elasticsearch ويُطلق تنبيهات عند التطابق | Kitploit
أدوات/GitHubGitHub/nccgroup/reactor
أدوات دفاعيةكشف التسللالاستجابة للحوادثكشف الشذوذتحليل السجلات
GitHubnccgroup/reactor

reactor

يشغّل عوامل تصفية مخصصة على Elasticsearch ويُطلق تنبيهات عند التطابق

عرض المستودع
34منذ 3 سنواتلم تتم المراجعة بعد

الأكثر شعبية

عرض الكل →

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

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

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

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

Reactor

بدأ Reactor كفرع (fork) من المشروع مفتوح المصدر ElastAlert. يجب على القائم على صيانة هذا المشروع أن يتابع عن كثب التغييرات في ElastAlert (باستثناء أدوات التنبيه الإضافية الخاصة به) وأن يضمن تطبيق أي إصلاحات ذات صلة بالأخطاء ونقل أي ميزات مفيدة إليه.

Reactor هو محرك تنبيه يأخذ مجموعة من القواعد مع عوامل تصفية مخصصة ويطلق تنبيهات عند التطابق. يقوم Reactor تلقائيًا بتحديث التنبيهات المكبوتة بمعلومات التنبيه المتكرر.

سجل التصحيحات من ElastAlert

تاريخ الوصولCommitملاحظات
2019-10-16325f1dfe7a45f3ca2a2cc00127ab71fcd4f9ceadتم الرجوع إلى ما قبل إنشاء Reactor لأول مرة.
2020-01-09ec5d03b95708ea0aa3d29c065f9794fdd95a82a1نحن لا نستخدم التغطية.

الإصدارات المدعومة

يدعم Reactor حاليًا ElasticSearch 5.x.x و6.x.x و7.x.x. عندما تتوفر إصدارات جديدة من elasticsearch، سيتم تحديث Reactor لدعمها. لا توجد نية لإضافة دعم للإصدارات الأقدم من ElasticSearch. حاليًا، لا يوجد موعد محدد لإزالة دعم الإصدارات الأقدم من ElasticSearch. إذا أزالت مكتبة بايثون الخاصة بـ ElasticSearch الدعم، فمن المرجح أن نحذو حذوها.

التوافق

وفقًا لإرشادات مكتبة بايثون الخاصة بـ ElasticSearch، يُنصح بتثبيت إصدار المكتبة الذي يتطابق مع نفس الإصدار الرئيسي للعنقود (cluster).

بالنسبة إلى Elasticsearch 7.0 والإصدارات الأحدث، استخدم الإصدار الرئيسي 7 (elasticsearch<8.0.0,>=7.0.0).

بالنسبة إلى Elasticsearch 6.0 والإصدارات الأحدث، استخدم الإصدار الرئيسي 6 (elasticsearch<7.0.0,>=6.0.0).

بالنسبة إلى Elasticsearch 5.0 والإصدارات الأحدث، استخدم الإصدار الرئيسي 5 (elasticsearch<6.0.0,>=5.0.0).

يُرجى ملاحظة وجود خطأ معروف تم تقديمه في الإصدار 6.4.0 من مكتبة ElasticSearch وتم إصلاحه في 7.0.4 ولكن ليس في الإصدار الرئيسي 6. يضع هذا الخطأ scroll_id في معامل الاستعلام، مما قد يؤدي إلى إرجاع Elasticsearch لرمز حالة 400 لمعرفات التمرير الصالحة.

التطوير

يمكنك تشغيل مثيل من elasticsearch داخل docker للتطوير المحلي باستخدام الأمر التالي:

root@kitploit:~
$ docker run -d -p 9200:9200/tcp --name elasticsearch docker.elastic.co/elasticsearch/elasticsearch:<version>

والتكوين التالي في config.yaml:

root@kitploit:~
writeback_index: reactor
alert_alias: reactor_alerts

elasticsearch: &elasticsearch
  host: localhost
  port: 9200

# Global settings to be applied to every run
rule:
  elasticsearch: *elasticsearch

خطافات Git

يوفر هذا المشروع خطافات git لمنع أخطاء المستخدم. يرجى تشغيل الأوامر التالية:

root@kitploit:~
$ cp .git-hooks-pre-push .git/hooks/pre-push

تشغيل الاختبارات

يغطي Reactor بنوعين من الاختبارات: الوحدة والتكامل. اختبارات الوحدة للتأكد من أن الدوال الفردية وتدفقات المنطق تعمل بشكل صحيح؛ واختبارات التكامل للتأكد من أن النظام بأكمله يعمل بتناغم.

اختبارات الوحدة

اختبارات الوحدة مكتوبة باستخدام PyTest. لتشغيل جميع الاختبارات، نفّذ الأمر التالي:

root@kitploit:~
$ py.test

اختبارات التكامل

يتم تنفيذ اختبارات الوحدة في docker وتتطلب ملف .env في الدليل الجذر للمشروع. تتطلب الاختبارات المحتويات التالية داخل ملف .env:

root@kitploit:~
# The ElasticSearch version to be tested, reactor supports >= 5.x.x
ES_VERSION=6.3.2
# Basic configuration information so that reactor can query ElasticSearch
ES_HOST=elasticsearch
ES_USER=elastic
ES_PASSWORD=changeme

يحتوي ملف Docker Compose الخاص باختبارات التكامل test.docker-compose.yml على 3 متغيرات بيئة مطلوبة للإصدار >= v7.x.x وستؤدي إلى كسر الإصدارات الأقدم:

root@kitploit:~
node.name=elasticsearch
discovery.seed_hosts=elasticsearch
cluster.initial_master_nodes=elasticsearch

لتنفيذ اختبارات التكامل، نفّذ الأمر التالي:

root@kitploit:~
$ docker-compose -f docker-compose-test.yml up --abort-on-container-exit --build  reactor elasticsearch

إنشاء شهادات SSL لقيادة RAFT

مجموعة الأوامر التالية (التي يتم تنفيذها في ./certs/) ستنشئ مجموعة من شهادة CA وشهادة جهاز لتشغيل العنقود التجريبي على localhost:

root@kitploit:~
# Only do once: generate the root CA key:
$ openssl genrsa -out transport-ca.key 4096

# Generate the root CA certificate:
## Country Name (2 letter code) []:GB
## State or Province Name (full name) []:.
## Locality Name (eg, city) []:.
## Organization Name (eg, company) []:.
## Organizational Unit Name (eg, section) []:.
## Common Name (eg, fully qualified host name) []:PyRaftLog
## Email Address []:.
$ openssl req -x509 -new -nodes -key transport-ca.key -sha256 -days 1024 -out transport-ca.pem

# Generate device certificates
# Only do once: generate device key:
$ openssl genrsa -out transport-consensus.key 4096

# Generate device certificate signing request:
## Country Name (2 letter code) []:GB
## State or Province Name (full name) []:.
## Locality Name (eg, city) []:.
## Organization Name (eg, company) []:.
## Organizational Unit Name (eg, section) []:.
## Common Name (eg, fully qualified host name) []:localhost
## Email Address []:.
$ openssl req -new -key transport-consensus.key -out transport-consensus.csr

# Generate a signed device certificate:
$ openssl x509 -req -in transport-consensus.csr -CA transport-ca.pem -CAkey transport-ca.key -CAcreateserial -out transport-consensus.crt -days 500 -sha256

بناء التوثيق

لبناء التوثيق:

root@kitploit:~
$ pip install -r requirements-docs.txt
$ cd docs
$ sphinx-build -b html -d build/doctrees -W source build/html

النشر إلى PyPi

  1. pip install --upgrade setuptools wheel
  2. pip install --upgrade twine
  3. python3 setup.py sdist bdist_wheel
  4. twine check dist/*
  5. twine upload --skip-existing dist/* --verbose
تنزيل الأداة