
एक नकली होस्ट जिसे Dell OMSA द्वारा 'प्रबंधित' किया जा सकता है, जो आपको लॉगिन स्क्रीन से आगे ले जाता है।
एक नकली होस्ट जिसे Dell OMSA द्वारा "प्रबंधित" किया जा सकता है, जो आपको लॉगिन स्क्रीन से आगे ले जाता है, और संभवतः फ़ज़िंग या अन्य परीक्षण के लिए शुरुआती बिंदु के रूप में कार्य करता है।
Dell के OpenManage Server Administrator में संभावित कमजोरियों¹ पर शोध करते समय, मुझे दोनों में रुचि थी:
एक Dell सर्वर को अपने साथ नहीं ढोना पड़े, जिसके लिए मेरे पास एडमिन क्रेडेंशियल थे, ताकि मैं उन कमजोरियों का आसानी से फायदा उठा सकूं जिनके लिए केवल लॉगिन स्क्रीन से आगे जाना आवश्यक था¹, और
यह देखना कि क्या मेरे नियंत्रण वाले "नकली" सर्वर (प्रबंधित नोड) से नई कमजोरियाँ उत्पन्न हो सकती हैं, जो OMSA के अनुरोधों पर अप्रत्याशित और दुर्भावनापूर्ण तरीकों से प्रतिक्रिया करेगा।
¹जैसे https://www.exploit-db.com/exploits/39486/ और कम से कम एक XXE
वास्तव में बहुत ही जल्दबाजी और मोटा-मोटा Java कोड का एक छोटा सा टुकड़ा, जो OMSA द्वारा अनुरोधों को सुनने और आपकी इच्छानुसार प्रतिक्रिया देने के लिए बनाया गया है। जब मैंने इसे पहली बार लिखा था, तो इसमें केवल लॉगिन प्रक्रिया के दौरान किए गए दो अनुरोधों के लिए प्रतिक्रिया थी, जो आपको एक "सच्चे"³ एडमिन के रूप में² OMSA इंस्टेंस में प्रवेश कराने के लिए पर्याप्त थी। यदि आप अन्य प्रकार के अनुरोधों को लक्षित करना चाहते हैं, तो एप्लिकेशन के चारों ओर टटोलें, देखें कि OMSA कौन सा POST डेटा भेजता है, अंदाज़ा लगाएं कि बदले में क्या अपेक्षित है, अपनी पसंद का प्रतिक्रिया तैयार करें, और उस तर्क को इस कोड में बनाएँ।
²सफल लॉगिन के ठीक बाद, OMSA आपको एक स्टार्ट पेज पर रीडायरेक्ट करेगा जो अन्य अनुरोधों की बाढ़ शुरू कर देगा। आप अपने ब्राउज़र को रोकना चाहेंगे, क्योंकि OMSA में त्रुटियों का सामना करने पर आपको लॉगिन स्क्रीन पर वापस रीडायरेक्ट करने की प्रवृत्ति होती है, और यह तब होगा जब इस कोड को उन बाद के अनुरोधों से निपटने के लिए संशोधित नहीं किया गया है, और उचित तरीके से प्रतिक्रिया नहीं देता है।
³स्पष्ट रूप से अधिकारों के दो अलग-अलग सेट हैं, और आप किस कोड के साथ छेड़छाड़ कर रहे हैं, इसके आधार पर यह भिन्न हो सकता है कि यह किस सेट का उपयोग करता है। ऐसा लगता है कि प्रति सेट केवल तीन बिट्स उपयोग किए जाते हैं, इसलिए 7 (4 + 2 + 1) प्रत्येक सेट में अधिकतम अधिकारों को दर्शाता है। एक सेट 32-बिट पूर्णांक के ऊपरी 16 बिट्स पर कब्जा करता है, जबकि दूसरा सेट निचले हिस्से पर। अंततः, नकली प्रबंधित नोड 7 + (7 << 16) के साथ प्रतिक्रिया करता है। यदि आपका इरादा यह परीक्षण करना है कि क्या OMSA उपयोगकर्ता अधिकारों के आधार पर कुछ संसाधनों तक पहुंच प्रतिबंधित करता है, तो आप इस मान को बदलना चुन सकते हैं।
31 मई 2016 तक, XXE का लाभ उठाने के लिए भी एक प्रतिक्रिया है। OMSA दुर्भावनापूर्ण दिखने वाले URL अनुरोधों को फ़िल्टर करने की कोशिश करता है, लेकिन प्रबंधित किए जा रहे नोड से वापस मिलने वाले डेटा के बारे में उतना संदिग्ध नहीं लगता।
यह आपके Dell सर्वरों या किसी अन्य सर्वर को प्रबंधित करने में आपकी मदद करने के लिए बिल्कुल भी नहीं है। जबकि आप Dell के सभी गुप्त ज्ञान को फिर से लागू करने की कोशिश कर सकते हैं, यह इस कोड के इरादे से बहुत दूर है। यदि, इस कोड के विपरीत, आप Dell-डिज़ाइन किए गए क्वेरी के जवाब में Dell व्यवहारों को ईमानदारी से पुन: पेश करने का इरादा रखते हैं, तो आप एक वकील से परामर्श करना चाह सकते हैं, क्योंकि Oracle v Google ( https://www.eff.org/cases/oracle-v-google ) या अन्य कानूनी मुद्दे लागू हो सकते हैं।
अंतिम परिणाम यह है कि fakedell.XMLResponder सर्वलेट https://[yourIP]:5986/wsman पर सुलभ होना चाहिए
पुराने संस्करणों के OMSA के साथ आगे के परीक्षण से पता चलता है कि आप इस सर्वलेट को https://[yourIP]:443/wsman पर भी सुलभ बनाना चाहेंगे
सर्वर को एक सेल्फ-साइन्ड सर्टिफिकेट का उपयोग करना चाहिए, और OMSA में लॉग इन करते समय, आप प्रबंधित करने के लिए अपना IP रिमोट होस्ट के रूप में प्रदान करेंगे, और सर्टिफिकेट चेतावनियों को अनदेखा करना चुनेंगे।
यहाँ web.xml मानता है कि यह रूट एप्लिकेशन है, और सर्वलेट को /wsman पर मैप करता है। आपको इसे अपने कॉन्फ़िगरेशन के साथ काम करने के लिए समायोजित करने की आवश्यकता हो सकती है।
आप Java सर्वर, या किसी अन्य टूल को सभी इन/आउट ट्रैफ़िक लॉग करने के लिए चुन सकते हैं। उदाहरण के लिए, मैंने Tomcat को पोर्ट 8080 पर सुनने के लिए, stunnel को पोर्ट 5986 पर सुनने के लिए रखा था, और लूपबैक डिवाइस पर सभी पोर्ट 8080 ट्रैफ़िक को कैप्चर करने के लिए Wireshark का उपयोग किया।
मज़े करें~
यदि आपके पास वैकल्पिक लाइसेंस के लिए एक मजबूत कारण है, तो मुझे लिखें और हम बात कर सकते हैं। (हालाँकि, ईमानदारी से, यह सबसे बढ़कर एक छोटा सा PoC और कंकाल ढांचा होने के कारण, आप शायद इसे काफी आसानी से फिर से बना सकते हैं।)
अन्यथा,
FakeDellOM
Copyright (C) 2016 Harrison Neal, [email protected]
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.