
CVE-2019-19781 के लिए समझौता संकेतक स्कैनर
यह रिपॉजिटरी CVE-2019-19781 से संबंधित Citrix ADC उपकरणों के समझौतों का पता लगाने के लिए एक उपयोगिता रखता है। उपयोगिता और उसके संसाधन, FireEye Mandiant जांच के दौरान एकत्रित समझौता संकेतकों को एनकोड करते हैं। और अधिक जानने के लिए, कृपया इस उपकरण के रिलीज़ की घोषणा करने वाला ब्लॉग पढ़ें।
संक्षेप में, उपकरण निम्नलिखित करेगा:
यह नहीं करेगा:
सामुदायिक प्रतिक्रिया के साथ, यह उपकरण अपने पता लगाने में अधिक गहन हो सकता है। यदि आपको समस्याएँ, विचार या प्रतिक्रिया है, तो कृपया एक मुद्दा खोलें, एक PR सबमिट करें, या लेखकों से संपर्क करें।
यह स्कैनर पहचान सकता है:
CVE-2019-19781 के लिए समझौता संकेतक (IoC) स्कैनर को FireEye Mandiant और Citrix द्वारा संयुक्त रूप से विकसित किया गया था, जो CVE-2019-19781 के शोषण से संबंधित घटना प्रतिक्रिया कार्यों से प्राप्त ज्ञान पर आधारित है। स्कैनर का लक्ष्य उपलब्ध लॉग स्रोतों और सिस्टम फोरेंसिक आर्टिफैक्ट्स का विश्लेषण करके CVE-2019-19781 के सफल शोषण के साक्ष्य की पहचान करना है। उपकरण जो हासिल कर पाएगा उसकी सीमाएँ हैं, और इसलिए, उपकरण को चलाने को यह गारंटी नहीं माना जाना चाहिए कि सिस्टम समझौते से मुक्त है। उदाहरण के लिए, समझौते के साक्ष्य वाले सिस्टम पर लॉग फ़ाइलें छोटी/रोल हो सकती हैं, सिस्टम को रिबूट किया गया हो सकता है, किसी हमलावर ने समझौते के साक्ष्य को हटाने के लिए सिस्टम के साथ छेड़छाड़ की हो सकती है, और/या एक रूटकिट स्थापित की हो सकती है जो समझौते के साक्ष्य को छिपाती है, आदि।
इस उपकरण का आउटपुट तीन श्रेणियों में से एक में आएगा:
समझौते का साक्ष्य। यह डिफ़ॉल्ट है।
इस श्रेणी में आने वाला कोई भी साक्ष्य इंगित करता है कि एक उपकरण सफलतापूर्वक समझौता किया गया था।
यह जानकारी प्रकट करने वाले कमांड निष्पादित करने (जैसे ns.conf या smb.conf कॉन्फ़िगरेशन फ़ाइलें देखना) से लेकर बैकडोर स्थापित करने (जैसे NOTROBIN, एक कॉइन माइनर, आदि) या पर्ल-आधारित वेब शेल गिराने तक कुछ भी हो सकता है।
सफल भेद्यता स्कैनिंग का साक्ष्य (यह अधिकृत सिस्टम प्रशासक या अनधिकृत हमलावर हो सकता है)। इस श्रेणी में आने वाला कोई भी साक्ष्य इंगित करता है कि सिस्टम असुरक्षित स्थिति में था (उदाहरण के लिए, शमन लागू नहीं किया गया था) और CVE-2019-19781 का शोषण करने का कम से कम पहला कदम सफल रहा।
असफल भेद्यता स्कैनिंग का साक्ष्य। इस श्रेणी में आने वाला कोई भी साक्ष्य इंगित करता है कि सिस्टम को स्कैन या शोषण करने के प्रयास विफल रहे।
यह उपकरण समझौते के सभी साक्ष्य, या CVE-2019-19781 से संबंधित समझौते के सभी साक्ष्य खोजने की गारंटी नहीं है। यदि सिस्टम पर समझौते के संकेत पहचाने जाते हैं, तो संगठनों को घटना के दायरे और सीमा को निर्धारित करने के लिए समझौता किए गए सिस्टम की फोरेंसिक जांच करनी चाहिए। यह उपकरण 'जैसा है' और बिना किसी वारंटी के प्रदान किया जाता है।
आपको इस रिपॉजिटरी के रिलीज़ टैब से स्टैंडअलोन Bash स्क्रिप्ट डाउनलोड करनी चाहिए। स्रोत निर्देशिका को Citrix ADC उपकरण पर कॉपी करना संभव है लेकिन अनुशंसित नहीं है।
IoC स्कैनर सीधे Citrix ADC उपकरण पर चलाया जा सकता है। इस मोड में, उपकरण ज्ञात संकेतकों के लिए फ़ाइलों, प्रक्रियाओं और पोर्ट को स्कैन करेगा। उपकरण नैदानिक संदेशों को STDERR स्ट्रीम पर और परिणामों को STDOUT स्ट्रीम पर लिखता है। सामान्य उपयोग में, आपको समीक्षा के लिए STDOUT को एक फ़ाइल पर रीडायरेक्ट करना चाहिए। उपकरण को Citrix ADC उपकरण पर लाइव मोड में root के रूप में चलाया जाना चाहिए।
उदाहरण के लिए:
$ sudo bash ./ioc-scanner-CVE-2019-19781-v1.1.sh > "/tmp/results-$(date).txt"
उपकरण निम्नलिखित उत्पादों के साथ उपयोग के लिए डिज़ाइन किया गया है:
IoC स्कैनर एक माउंटेड फोरेंसिक इमेज का भी निरीक्षण कर सकता है। इस परिदृश्य में, इमेज रूट निर्देशिका के पथ को निर्दिष्ट करने वाला एक कमांड लाइन तर्क पास करें। ऑफलाइन मोड में चलाने के लिए आपको रूट होने की आवश्यकता नहीं है।
उदाहरण के लिए:
$ bash ./ioc-scanner-CVE-2019-19781-v1.1.sh /mnt/path/to/evidence/root/
दोनों मोड में, उपकरण सहायक कोड को एक अस्थायी निर्देशिका में निकालेगा; स्क्रिप्ट की समाप्ति पर यह निर्देशिका हटा दी जाएगी। उपकरण सिस्टम में और परिवर्तन नहीं करता है, हालांकि इससे लॉग प्रविष्टियाँ उत्पन्न हो सकती हैं। सभी फोरेंसिक विश्लेषण की तरह, लाइव प्रतिक्रिया की तुलना में dd इमेज के विरुद्ध ऑफलाइन विश्लेषण को प्राथमिकता दें। इससे यह संभावना समाप्त हो जाएगी कि उपकरण प्रासंगिक साक्ष्य को अधिलेखित कर दे।
कृपया अधिक विवरण के लिए अक्सर पूछे जाने वाले प्रश्न की समीक्षा करें।
जैसे-जैसे आप समझौते की पहचान करने के और तरीके ईजाद करते हैं, कृपया इस IoC स्कैनर में योगदान करने पर विचार करें। हम यथासंभव सबसे गहन, सही स्कैनर प्रदान करना चाहते हैं। प्राथमिक लक्ष्य उच्च विश्वास वाले समझौता संकेतकों की रिपोर्ट करना है। चूंकि उपयोगकर्ता आगे की जांच शुरू करने के लिए इस उपकरण के आउटपुट पर भरोसा कर सकते हैं, इसलिए यह महत्वपूर्ण है कि हम उन्हें गलत दिशा में न भेजें। इसलिए, डिफ़ॉल्ट मोड में साधारण स्कैनिंग जैसी गतिविधि की रिपोर्ट नहीं की जानी चाहिए। सिस्टम तक पहुँच प्राप्त करने, जानकारी प्राप्त करने, या सामग्री बनाने वाले किसी भी अभिनेता के किसी भी साक्ष्य की हमेशा रिपोर्ट की जानी चाहिए।
हम इस उपकरण को Bash स्क्रिप्ट के रूप में प्रदान करते हैं क्योंकि यह Citrix ADC उपकरणों में एक सामान्य हर है। यहाँ Citrix ADC रिलीज़ के लिए फीचर मैट्रिक्स है:
हालांकि हमने मैलवेयर को FreeBSD/NetScaler को लक्षित करने के लिए Go का उपयोग करते देखा है, Go FreeBSD 6.x का समर्थन नहीं करता है।
हम ./tests/ निर्देशिका में समझौते के साक्ष्य वाली स्पार्स फ़ाइल सिस्टम इमेज बनाए रखते हैं। जैसे-जैसे आप इस उपकरण में IoCs जोड़ते हैं, जैसे ज्ञात पथ या ब्लैकलिस्टेड सामग्री, कृपया परीक्षण के लिए साक्ष्य के उदाहरण प्रदान करें।
आप लिनक्स या मैकओएस सिस्टम पर यूनिट परीक्षण इस प्रकार चला सकते हैं:
$ bash ./tests/test.sh
runnning test: access-logs
runnning test: xml-template
runnning test: crontab
runnning test: var-cron-tabs-nobody
runnning test: error-logs
runnning test: file-system
runnning test: netscalerd
runnning test: notrobin-tmp-init
runnning test: notrobin-var-nstmp-nscache
runnning test: ns-content
runnning test: chr-encoded-template
runnning test: copied-ns-conf
runnning test: curl-in-template
runnning test: perms
runnning test: var-tmp-netscaler-portal-templates
runnning test: var-vpn-bookmark
runnning test: webshell-in-scripts
runnning test: shell-history
runnning test: bash_log
runnning test: notice_log
एक बार जब आप स्रोत रिपॉजिटरी चेकआउट कर लेते हैं, तो आप ./build.sh उपकरण का उपयोग करके एक स्टैंडअलोन स्क्रिप्ट बना सकते हैं। यह प्राथमिक स्क्रिप्ट और सहायक संसाधनों को एक एकल बंडल में पैकेज करता है। निष्पादन पर, यह एक अस्थायी निर्देशिका में निकालेगा, वहाँ से निष्पादित करेगा, और फिर साफ करेगा।
निर्माण करने के लिए:
$ bash ./build.sh > ioc-scanner-CVE-2019-19781-rev$(git rev-parse HEAD | cut -c 1-8).sh
CVE-2019-19781 और वास्तविक दुनिया में शोषण के बारे में FireEye से अतिरिक्त जानकारी के लिए, कृपया देखें:
CVE-2019-19781 की प्रतिक्रिया सुरक्षा उद्योग में एक महत्वपूर्ण प्रयास रहा है और ये ब्लॉग अतिरिक्त योगदानों का भारी हवाला देते हैं जो इस उपकरण के उपयोगकर्ताओं के लिए मूल्यवान होंगे। हम आपके वातावरण में गतिविधि को सर्वोत्तम रूप से समझने के लिए इन पोस्टों से लिंक की गई सामग्री को पढ़ने की सलाह देते हैं। हमेशा की तरह, FireEye Mandiant टीम अनुवर्ती प्रश्नों का उत्तर देने या किसी जांच में आगे सहायता करने के लिए यहाँ हमसे संपर्क करके उपलब्ध है।
| NetScaler संस्करण | OS | उपलब्ध भाषाएँ |
|---|
| 13.0 | FreeBSD 8.4 | Bash, Perl, Python |
| 12.1 | FreeBSD 8.4 | Bash, Perl, Python |
| 12.0 | FreeBSD 8.4 | Bash, Perl, Python |
| 11.1 | FreeBSD 8.4 | Bash, Perl |
| 10.5 | FreeBSD 8.4 | Bash, Perl |
| 10.1 | FreeBSD 6.3 | Bash, Perl |
| 9.3 | FreeBSD 6.3 | Bash, Perl |