Logstash

जानें AWS हैकिंग को शून्य से हीरो तक htARTE (HackTricks AWS Red Team Expert) के साथ!

HackTricks का समर्थन करने के अन्य तरीके:

Logstash

Logstash का उपयोग लॉग इकट्ठा, परिवर्तन और भेजने के लिए किया जाता है जिसे पाइपलाइन नामक एक प्रणाली के माध्यम से किया जाता है। ये पाइपलाइन इनपुट, फ़िल्टर, और आउटपुट स्थानों से बने होते हैं। एक दिलचस्प पहलू उत्पन्न होता है जब Logstash एक कंप्रोमाइज़्ड मशीन पर काम करता है।

पाइपलाइन कॉन्फ़िगरेशन

पाइपलाइन्स को फ़ाइल /etc/logstash/pipelines.yml में कॉन्फ़िगर किया जाता है, जो पाइपलाइन कॉन्फ़िगरेशन के स्थानों की सूची देता है:

# Define your pipelines here. Multiple pipelines can be defined.
# For details on multiple pipelines, refer to the documentation:
# https://www.elastic.co/guide/en/logstash/current/multiple-pipelines.html

- pipeline.id: main
path.config: "/etc/logstash/conf.d/*.conf"
- pipeline.id: example
path.config: "/usr/share/logstash/pipeline/1*.conf"
pipeline.workers: 6

यह फ़ाइल बताती है कि .conf फ़ाइलें कहाँ स्थित हैं, जिसमें पाइपलाइन कॉन्फ़िगरेशन होती है। Elasticsearch output module का उपयोग करते समय, पाइपलाइन में Elasticsearch क्रेडेंशियल्स शामिल करना सामान्य है, जो अक्सर Logstash की आवश्यकता के कारण Elasticsearch को डेटा लिखने की व्यापक अधिकारों के साथ होते हैं। कॉन्फ़िगरेशन पथ में वाइल्डकार्ड का उपयोग करने से Logstash को निर्धारित निर्देशित निर्देशिका में सभी मिलने वाली पाइपलाइन को निष्पादित करने की अनुमति होती है।

लिखने योग्य पाइपलाइन के माध्यम से विशेषाधिकार

विशेषाधिकार का प्रयास करने के लिए, पहले यह खोजें कि Logstash सेवा किस उपयोगकर्ता के तहत चल रही है, आम तौर पर logstash उपयोगकर्ता होता है। सुनिश्चित करें कि आपमें से किसी एक योग्यता है:

  • पाइपलाइन .conf फ़ाइल में लेखन अधिकार हो या

  • /etc/logstash/pipelines.yml फ़ाइल एक वाइल्डकार्ड का उपयोग करती है, और आप लक्षित फ़ोल्डर में लिख सकते हैं

इसके अतिरिक्त, इनमें से किसी एक शर्त को पूरा किया जाना चाहिए:

  • Logstash सेवा को पुनः आरंभ करने की क्षमता या

  • /etc/logstash/logstash.yml फ़ाइल में config.reload.automatic: true सेट है

कॉन्फ़िगरेशन में वाइल्डकार्ड दिया जाने पर, इस वाइल्डकार्ड के मिलने वाली फ़ाइल बनाने से कमांड का निष्पादन संभव होता है। उदाहरण के लिए:

input {
exec {
command => "whoami"
interval => 120
}
}

output {
file {
path => "/tmp/output.log"
codec => rubydebug
}
}

यहाँ, अंतराल सेकंड में निष्पादन अक्षमता निर्धारित करता है। दिए गए उदाहरण में, whoami कमांड हर 120 सेकंड में चलता है, जिसका आउटपुट /tmp/output.log में निर्देशित होता है।

/etc/logstash/logstash.yml में config.reload.automatic: true के साथ, Logstash स्वचालित रूप से नए या संशोधित पाइपलाइन कॉन्फ़िगरेशन को पहचानेगा और लागू करेगा बिना पुनरारंभ की आवश्यकता के। यदि कोई वाइल्डकार्ड नहीं है, तो मौजूदा कॉन्फ़िगरेशन में संशोधन किए जा सकते हैं, लेकिन अवरोधों से बचने के लिए सावधानी बरतने की सलाह दी जाती है।

संदर्भ

htARTE (HackTricks AWS Red Team Expert) के साथ जीरो से हीरो तक AWS हैकिंग सीखें

HackTricks का समर्थन करने के अन्य तरीके:

Last updated