Skip to content
KitploitKITPLOIT
उपकरणब्लॉग
जमा करें
उपकरणब्लॉग
जमा करें

हैकिंग, पेनटेस्ट और साइबर सुरक्षा उपकरण आपके सुरक्षा शस्त्रागार के लिए!

Kitploit हैकिंग, साइबर सुरक्षा और पेंटेस्टिंग टूल्स की एक निर्देशिका है। कमजोरियों को खोजने, सिस्टम का विश्लेषण करने, परीक्षण को स्वचालित करने और अपनी सुरक्षा को मजबूत करने के लिए नवीनतम प्रोजेक्ट अपडेट खोजें।

··फ़ीड·संपर्क·गोपनीयता·© 2026 Kitploit

टूल निर्देशिका

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
reactor — Elasticsearch पर कस्टम फ़िल्टर चलाता है और मिलानों पर अलर्ट करता है | Kitploit
उपकरण/GitHubGitHub/nccgroup/reactor
रक्षात्मक उपकरणघुसपैठ का पता लगानाघटना प्रतिक्रियाविसंगति का पता लगानालॉग विश्लेषण
GitHubnccgroup/reactor

reactor

Elasticsearch पर कस्टम फ़िल्टर चलाता है और मिलानों पर अलर्ट करता है

रिपॉजिटरी देखें
343 साल पहलेअभी तक समीक्षित नहीं

सबसे लोकप्रिय

सभी देखें →

हमारे समुदाय द्वारा सबसे अधिक उपयोग किए जाने वाले उपकरण खोजें।

सभी उपकरण खोजें

हमारे उपकरणों का संग्रह ब्राउज़ करें

सभी उपकरण देखें →
साझा करें

Reactor

Reactor, ओपन सोर्स प्रोजेक्ट ElastAlert का एक फोर्क (fork) के रूप में शुरू हुआ। इस प्रोजेक्ट के अनुरक्षक (maintainer) को ElastAlert में हुए परिवर्तनों पर करीबी नज़र रखनी चाहिए (उनके अतिरिक्त अलर्टर्स को छोड़कर) और यह सुनिश्चित करना चाहिए कि किसी भी प्रासंगिक बग फिक्स को पैच किया जाए और किसी भी उपयोगी सुविधा को पोर्ट किया जाए।

Reactor एक अलर्टिंग इंजन है जो कस्टम फिल्टर वाले नियमों (rules) का एक सेट लेता है और मिलान (matches) पर अलर्ट करता है। Reactor स्वचालित रूप से साइलेंस किए गए अलर्ट्स को दोहराए जाने वाली अलर्ट जानकारी के साथ अपडेट करता है।

ElastAlert से पैच इतिहास

पहुँच की तिथिकमिटटिप्पणियाँ
2019-10-16325f1dfe7a45f3ca2a2cc00127ab71fcd4f9ceadReactor के पहली बार बनाए जाने से पहले तक वापस गया।
2020-01-09ec5d03b95708ea0aa3d29c065f9794fdd95a82a1हम कवरेज (coverage) का उपयोग नहीं करते।

समर्थित संस्करण

वर्तमान में Reactor ElasticSearch 5.x.x, 6.x.x और 7.x.x का समर्थन करता है। जैसे ही elasticsearch के नए संस्करण उपलब्ध होंगे, Reactor को समर्थन देने के लिए अपडेट किया जाएगा। ElasticSearch के पुराने संस्करणों के लिए समर्थन जोड़ने का कोई इरादा नहीं है। वर्तमान में, ElasticSearch के पुराने संस्करणों के लिए समर्थन हटाने की कोई तिथि नहीं है। यदि ElasticSearch की पायथन लाइब्रेरी समर्थन हटा देती है, तो हम संभवतः उसी का अनुसरण करेंगे।

अनुकूलता

ElasticSearch की पायथन लाइब्रेरी के दिशानिर्देशों के अनुसार, क्लस्टर के समान मेजर संस्करण वाली लाइब्रेरी का संस्करण स्थापित करने की अनुशंसा की जाती है।

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) का उपयोग करें।

कृपया ध्यान दें कि ElasticSearch लाइब्रेरी के संस्करण 6.4.0 में एक ज्ञात बग पेश किया गया था, जिसे 7.0.4 में ठीक किया गया था, लेकिन मेजर संस्करण 6 में नहीं। यह बग scroll_id को क्वेरी पैरामीटर में डालता है, जिससे Elasticsearch मान्य स्क्रॉल आईडी के लिए 400 स्टेटस कोड लौटा सकता है।

विकास

आप निम्न कमांड का उपयोग करके स्थानीय विकास के लिए docker के अंदर एक elasticsearch इंस्टेंस शुरू कर सकते हैं:

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

गिट हुक

यह प्रोजेक्ट उपयोगकर्ता की त्रुटि रोकने के लिए गिट हुक प्रदान करता है। कृपया निम्न कमांड चलाएँ:

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

RAFT नेतृत्व के लिए SSL प्रमाणपत्र बनाएँ

निम्न कमांड का सेट (./certs/ में निष्पादित) localhost पर मॉक क्लस्टर चलाने के लिए एक CA और डिवाइस प्रमाणपत्र का एक सेट बनाएगा:

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
टूल डाउनलोड करें