
एंटरप्राइज़ स्तर पर रीयल-टाइम, कंटेनर-आधारित फ़ाइल स्कैनिंग
रिलीज़ | दस्तावेज़ीकरण | पुल अनुरोध | मुद्दे
स्ट्रेल्का एक रीयल-टाइम, कंटेनर-आधारित फ़ाइल स्कैनिंग सिस्टम है जिसका उपयोग खतरे की खोज, खतरे का पता लगाने और घटना प्रतिक्रिया के लिए किया जाता है। मूल रूप से लॉकहीड मार्टिन के लाइका बॉस और इसी तरह की परियोजनाओं (देखें: संबंधित परियोजनाएँ) द्वारा स्थापित डिज़ाइन पर आधारित, स्ट्रेल्का का उद्देश्य उद्यम स्तर पर फ़ाइल निष्कर्षण और मेटाडेटा संग्रह करना है।
स्ट्रेल्का अपनी सहयोगी परियोजनाओं से कई महत्वपूर्ण तरीकों से भिन्न है:
स्ट्रेल्का एक मॉड्यूलर डेटा स्कैनिंग प्लेटफ़ॉर्म है, जो उपयोगकर्ताओं या सिस्टम को फ़ाइल सामग्री और मेटाडेटा का विश्लेषण, निष्कर्षण और रिपोर्ट करने के उद्देश्य से फ़ाइलें सबमिट करने की अनुमति देता है। एक SIEM के साथ जोड़ा गया, स्ट्रेल्का एकत्र करने, अलर्ट करने और विश्लेषकों को प्रत्यक्ष डेटा संग्रह या समय लेने वाले फ़ाइल विश्लेषण किए बिना अपने वातावरण को बेहतर ढंग से समझने की क्षमता प्रदान करने में सक्षम है।

स्ट्रेल्का के माध्यम से एक फ़ाइल चलाना सरल है। इस अनुभाग में, एक बार के विश्लेषण के लिए स्ट्रेल्का की निष्कर्षण और विश्लेषण क्षमताओं का प्रदर्शन किया गया है।
कृपया उद्यम वातावरण में स्ट्रेल्का को ठीक से बनाने और तैनात करने के विवरण के लिए दस्तावेज़ीकरण की समीक्षा करें।
# Ubuntu 23.04
sudo apt install -y wget git docker docker-compose golang jq && \
sudo usermod -aG docker $USER && \
newgrp docker
git clone https://github.com/target/strelka.git && \
cd strelka
rm configs/python/backend/yara/rules.yara && \
git clone https://github.com/Yara-Rules/rules.git configs/python/backend/yara/rules/ && \
echo 'include "./rules/index.yar"' > configs/python/backend/yara/rules.yara
नोट: आप go build प्रक्रिया को छोड़ सकते हैं और फ़ाइलों का विश्लेषण करने के लिए http://0.0.0.0:9980 पर Strelka UI का उपयोग कर सकते हैं।
docker compose -f build/docker-compose-no-build.yaml up -d && \
go build github.com/target/strelka/src/go/cmd/strelka-oneshot
नोट: आप go build प्रक्रिया को छोड़ सकते हैं और फ़ाइलों का विश्लेषण करने के लिए http://0.0.0.0:9980 पर Strelka UI का उपयोग कर सकते हैं।
docker compose -f build/docker-compose.yaml build && \
docker compose -f build/docker-compose.yaml up -d && \
go build github.com/target/strelka/src/go/cmd/strelka-oneshot
कोई भी मैलवेयर नमूना, या कोई अन्य फ़ाइल जिसका आप स्ट्रेल्का से विश्लेषण करना चाहते हैं, का उपयोग करें।
wget https://github.com/ytisf/theZoo/raw/master/malware/Binaries/Win32.Emotet/Win32.Emotet.zip -P samples/
./strelka-oneshot -f samples/Win32.Emotet.zip -l - | jq
संक्षिप्तता के लिए निम्नलिखित आउटपुट को संपादित किया गया है।
{
"file": {
"depth": 0,
"flavors": {
"mime": ["application/zip"],
"yara": ["encrypted_zip", "zip_file"]
},
"scanners": [
"ScanEncryptedZip",
"ScanEntropy",
"ScanFooter",
"ScanHash",
"ScanHeader",
"ScanYara",
"ScanZip"
]
},
"scan": {
"encrypted_zip": {
"cracked_password": "infected",
"elapsed": 0.114269,
"total": {"extracted": 1, "files": 1}
}
}
}
{
"file": {
"depth": 1,
"flavors": {
"mime": ["application/x-dosexec"],
"yara": ["mz_file"]
},
"name": "29D6161522C7F7F21B35401907C702BDDB05ED47.bin",
"scanners": [
"ScanEntropy",
"ScanFooter",
"ScanHash",
"ScanHeader",
"ScanPe",
"ScanYara"
]
},
"scan": {
"pe": {
"address_of_entry_point": 5168,
"base_of_code": 4096,
"base_of_data": 32768,
"checksum": 47465,
"compile_time": "2015-03-31T08:53:51",
"elapsed": 0.013076,
"file_alignment": 4096,
"file_info": {
"company_name": "In CSS3",
"file_description": "Note: In CSS3, the text-decoration property is a shorthand property for text-decoration-line, text-decoration-color, and text-decoration-style, but this is currently.",
"file_version": "1.00.0065",
"fixed": {"operating_systems": ["WINDOWS32"]},
"internal_name": "Callstb",
"original_filename": "NOFAstb.exe",
"product_name": "Goodreads",
"product_version": "1.00.0065",
"var": {"character_set": "Unicode", "language": "U.S. English"}
}
},
"yara": {
"elapsed": 0.068918,
"matches": [
"SEH__vba",
"SEH_Init",
"Big_Numbers1",
"IsPE32",
"IsWindowsGUI",
"HasOverlay",
"HasRichSignature",
"Microsoft_Visual_Basic_v50v60",
"Microsoft_Visual_Basic_v50",
"Microsoft_Visual_Basic_v50_v60",
"Microsoft_Visual_Basic_v50_additional",
"Microsoft_Visual_Basic_v50v60_additional"
],
"tags": [
"AntiDebug",
"SEH",
"Tactic_DefensiveEvasion",
"Technique_AntiDebugging",
"SubTechnique_SEH",
"PECheck",
"PEiD"
]
}
}
}
यदि स्ट्रेल्का को आपके वातावरण में तैनात किया गया था और फ़ाइलों को अंतर्ग्रहित कर रहा था, तो आप इन घटनाओं को अपने SIEM में एकत्र कर रहे होंगे। इस विश्लेषण के साथ, आप एक नियम लिख सकते हैं जो संदिग्ध yara टैग से मेल खाने वाली घटनाओं की खोज करता है, जो आपको संभावित दुर्भावनापूर्ण फ़ाइल के प्रति सचेत करता है।
scan.yara.tags:("Technique_AntiDebugging" && "SubTechnique_SEH")
स्ट्रेल्का का UI तब उपलब्ध होता है जब आप प्रदान किए गए कंटेनरों का निर्माण करते हैं। यह वेब इंटरफ़ेस आपको स्ट्रेल्का में फ़ाइलें अपलोड करने और घटनाओं को कैप्चर करने की अनुमति देता है, जो स्थानीय रूप से संग्रहीत होती हैं।
http://localhost:9980/ पर जाएं और लॉगिन strelka/strelka का उपयोग करें।

सबसे सामान्य फ़ाइल प्रकारों (जैसे, exe, docx, js, zip) के लिए 50 से अधिक फ़ाइल स्कैनर के साथ, स्ट्रेल्का उपयोगकर्ताओं को अपने होस्ट, नेटवर्क या उद्यम पर फ़ाइलों में नई अंतर्दृष्टि प्राप्त करने की क्षमता प्रदान करता है। जबकि स्ट्रेल्का स्वयं एक डिटेक्शन इंजन नहीं है (हालाँकि यह YARA का उपयोग करता है), यह संदिग्ध या दुर्भावनापूर्ण फ़ाइलों की पहचान करने के लिए पर्याप्त मेटाडेटा प्रदान कर सकता है। स्ट्रेल्का के कुछ संभावित उपयोगों में शामिल हैं:

स्ट्रेल्का के बारे में अधिक दस्तावेज़ीकरण README में पाया जा सकता है, जिसमें शामिल हैं:
योगदान देने के दिशा-निर्देश यहाँ पाए जा सकते हैं।
उपयोगकर्ताओं को इष्टतम प्रदर्शन के लिए और रनटाइम के दौरान संभावित समस्याओं से बचने के लिए अपने YARA नियमों को पूर्व-संकलित करने की सलाह दी जाती है। पूर्व-संकलित YARA फ़ाइलों का उपयोग करने से लोड समय और संसाधन उपयोग को कम करने में मदद मिलती है, विशेष रूप से बड़े नियमों वाले वातावरण में। पूर्व-संकलित नियम फ़ाइल को इंगित करने के लिए स्ट्रेल्का कॉन्फ़िगरेशन में संकलित विकल्प का उपयोग करना सुनिश्चित करें।
किसी भी अतिरिक्त मुद्दे के लिए ट्रैकर में bug लेबल वाले मुद्दे देखें।
स्ट्रेल्का और इससे जुड़ा कोड Apache 2.0 लाइसेंस की शर्तों के तहत जारी किया गया है।