
सुरक्षा घटना सहसंबंध इंजन ELK स्टैक के लिए
Dsiem एक सुरक्षा घटना सहसंबंध इंजन (security event correlation engine) है जो ELK स्टैक के लिए है, जो प्लेटफॉर्म को समर्पित और पूर्ण-सुविधाओं वाली SIEM प्रणाली के रूप में उपयोग करने की अनुमति देता है।
Dsiem सामान्यीकृत लॉग/ईवेंट के लिए OSSIM-शैली का सहसंबंध प्रदान करता है, खतरा खुफिया और भेद्यता जानकारी स्रोतों के लिए लुकअप/क्वेरी करता है, और जोखिम-समायोजित अलार्म उत्पन्न करता है।

flowchart TB
l1 --> |Normalized Logs/Events| e1
l1 --> |Alarms|e1
l1 --> |Normalized Logs/Events| d1
f1 --> |Logs| l1
s1 --> |Logs| f1
s2 --> |Logs| f1
s3 --> |Logs| f1
d1 --> |Alarms| d2
d2 --> |Alarms| l1
d1 --> |Query| d3
subgraph Elasticsearch
e1[Elasticsearch]
end
subgraph Logstash
l1[Logstash]
end
subgraph Filebeat
f1[Syslog/Filebeat]
end
subgraph Log Sources
s1[IDS]
s2[Firewall]
s3[OS]
end
subgraph Dsiem
d1[Dsiem]
d2[Dsiem-filebeat]
d3[Threat-Intel/Vulnerability-Info-Sources]
end
उपरोक्त आरेख में:
लॉग स्रोत अपने लॉग को Syslog/Filebeat पर भेजते हैं, जो फिर उन्हें एक अद्वितीय पहचान फ़ील्ड के साथ Logstash को भेजता है। Logstash लॉग स्रोतों के प्रकार के आधार पर विभिन्न फिल्टर का उपयोग करके लॉग को पार्स करता है, और परिणाम Elasticsearch को भेजता है, आमतौर पर प्रत्येक लॉग प्रकार के लिए एक इंडेक्स पैटर्न बनाता है (जैसे, Suricata IDS से प्राप्त लॉग के लिए suricata-*, SSH लॉग के लिए ssh-*, आदि)।
Dsiem एक विशेष प्रयोजन के लिए logstash कॉन्फिग फ़ाइल का उपयोग करता है जो लॉग स्रोतों से आने वाले ईवेंट को क्लोन करता है, जब Logstash ने इसे पार्स कर लिया होता है। उसी कॉन्फ़िग फ़ाइल के माध्यम से, नया क्लोन किया गया ईवेंट (मूल ईवेंट से स्वतंत्र रूप से) Dsiem के आवश्यक फ़ील्ड्स जैसे शीर्षक, स्रोत IP, गंतव्य IP, आदि को इकट्ठा करने के लिए उपयोग किया जाता है।
उपरोक्त चरण के आउटपुट को Normalized Event कहा जाता है क्योंकि यह एकल प्रारूप में कई अलग-अलग स्रोतों से लॉग का प्रतिनिधित्व करता है जिसमें सामान्य फ़ील्ड्स का एक सेट होता है। ये ईवेंट तब Logstash HTTP आउटपुट प्लगइन के माध्यम से Dsiem को भेजे जाते हैं, और इंडेक्स नाम पैटर्न siem_events-* के तहत Elasticsearch को भेजे जाते हैं।
Dsiem कॉन्फ़िगर किए गए निर्देशिका नियमों के आधार पर आने वाले सामान्यीकृत ईवेंट को सहसंबंधित करता है, खतरा खुफिया और भेद्यता लुकअप करता है, और यदि नियमों की शर्तें पूरी होती हैं तो अलार्म उत्पन्न करता है। अलार्म तब एक स्थानीय लॉग फ़ाइल में लिखा जाता है, जिसे एक स्थानीय Filebeat द्वारा चुना जाता है जो अपनी सामग्री Logstash को भेजने के लिए कॉन्फ़िगर किया गया है।
Logstash के अंत में, एक और Dsiem विशेष कॉन्फ़िग फ़ाइल है जो उन सबमिट किए गए अलार्म को पढ़ता है और उन्हें Elasticsearch में अंतिम SIEM अलार्म इंडेक्स पर धकेलता है।
उपरोक्त प्रक्रियाओं का अंतिम परिणाम यह है कि अब हम केवल एक Elasticsearch इंडेक्स की निगरानी करके नए अलार्म और मौजूदा अलार्म में अपडेट देख सकते हैं।
आप Dsiem को स्थापित करने के लिए Docker Compose या रिलीज़ बाइनरी का उपयोग कर सकते हैं। विवरण के लिए स्थापना गाइड देखें।
वैकल्पिक रूप से, एक Docker Compose या वर्चुअल मशीन-आधारित डेमो वातावरण भी है जिसका उपयोग आप एक सरल वेब इंटरफ़ेस से सभी Dsiem एकीकरण का मूल्यांकन करने के लिए कर सकते हैं।
वर्तमान में उपलब्ध दस्तावेज़ यहाँ स्थित हैं।
कृपया एक नया Github मुद्दा खोलकर बग और समस्या रिपोर्ट सबमिट करें। सुरक्षा-संवेदनशील जानकारी, जैसे संभावित सुरक्षा बग का विवरण, [email protected] पर भी भेजा जा सकता है। उस पते के लिए GPG सार्वजनिक कुंजी यहाँ पाई जा सकती है।
योगदान का बहुत स्वागत है! बग फिक्स और अतिरिक्त परीक्षणों के लिए PR सबमिट करें, लॉगस्टैश कॉन्फ़िग फ़ाइलों (डिवाइस ईवेंट को पार्स करने के लिए), SIEM निर्देशिका नियमों, या एक नए खतरा खुफिया/भेद्यता लुकअप प्लगइन के लिए Gist सबमिट करें।
यदि आप किसी विशेष मामले पर क्या करना है, इसके बारे में निश्चित नहीं हैं, तो बेझिझक एक मुद्दा खोलें और पहले चर्चा करें।
यह परियोजना GPLv3 के तहत लाइसेंस प्राप्त है। योगदानकर्ताओं को किसी भी प्रकार के CAA/CLA या इसी तरह के दस्तावेज़ पर हस्ताक्षर करने की आवश्यकता नहीं है: हम Github सेवा की शर्तों के इस खंड की उनकी स्वीकृति को पर्याप्त मानते हैं।