क्या एक एकल यूएसी बाइनरी है?


27

क्या Windows UAC फ़ंक्शंस के लिए जिम्मेदार System32 फ़ोल्डर में एक बाइनरी (.exe) है? (जैसे, uac.exe)। यदि उस फ़ाइल को जबरदस्ती हटा दिया गया तो क्या होगा? क्या विंडोज टूटेगा या बूट करने में विफल होगा?

यहाँ कोई XY समस्या नहीं है; मैं यह जानने के लिए उत्सुक हूं कि यदि यूएसी को एक पीसी से जबरदस्ती हटा दिया गया तो क्या होगा।


1
आप आसानी से यूएसी को निष्क्रिय कर सकते हैं। यूएसी कर्नेल का एक कार्य है। आप जो चाहते हैं वह संभव नहीं है
रामहुंड

वहाँ एक फ़ाइल win32k.sys technize.net/… है और जाहिरा तौर पर उस फ़ाइल को पहले से पैच किए गए विंडो में, हेरफेर किया जा सकता है / परिवर्तित किया जा सकता है। वैकल्पिक रूप से एक UAC को सामान्य तरीके से निष्क्रिय कर सकता है, हालाँकि यह EXE फ़ाइल नहीं है
बार्लोप

आप UAC को विभिन्न तरीकों का उपयोग करके अक्षम कर सकते हैं, उदाहरण के लिए superuser.com/questions/1013702/… । मैं सोच रहा हूं कि यदि आप इसे किसी अन्य हैक-ईश तरीके से हटा देते हैं, तो आपको अधिकतर समान प्रभाव मिलेगा, जो कि गुम बायनेरिज़ के बारे में नीचे दिए गए उत्तरों में त्रुटियों के साथ है।
येटनऑनरेमग्रैंडयूजर

@barlop, win32k.sys विंडोज सबसिस्टम का कर्नेल पक्ष है। दूसरे शब्दों में, कोर कोड सब कुछ द्वारा उपयोग किया जाता है। मैं इसे बदलने की कोशिश नहीं करूंगा। pasotech.altervista.org/windows_internals/Win32KSYS.pdf
डार्क फाल्कन

@DarkFalcon शायद "विंडो सबसिस्टम के कर्नेल साइड" से अधिक है। और मैं यह सलाह नहीं दे रहा था कि एक "इसे बदलें"! आपको क्या लगता है कि कोई क्या करने जा रहा है? इसे नोटपैड में खोलें? मैंने कभी इस तरह का सुझाव नहीं दिया! एक हेक्स संपादक खोलें? बेहतर है, लेकिन मैंने सुझाव नहीं दिया कि या तो! और कोई भी ऐसा नहीं करेगा और तब तक कुछ भी नहीं बदलेगा जब तक कि उन्हें कुछ पता न हो कि वे क्या बदलना चाहते हैं, जो एक निश्चित कौशल स्तर लेगा!
बार्लोप

जवाबों:


56

यूएसी एक बहु-घटक आर्किटेकचर है जो कई बायनेरिज़ द्वारा कार्यान्वित किया जाता है

उपयोगकर्ता खाता नियंत्रण (यूएसी) कई घटकों को संदर्भित करता है जो एक साथ यूएसी वास्तुकला बनाते हैं । मैं उनके कार्यान्वयन के लिए ज़िम्मेदार बायनेरिज़ के साथ उनमें से कुछ की समीक्षा करूँगा, लेकिन पहले यहाँ Microsoft डॉक्स लेख से यूएसी वास्तुकला का अवलोकन है कि उपयोगकर्ता खाता नियंत्रण कैसे काम करता है :

यहाँ छवि विवरण दर्ज करें

स्थानीय सुरक्षा प्राधिकरण (LSA) / फ़िल्टर किया गया टोकन

वैचारिक रूप से यूएसी का "पहला" घटक स्थानीय सुरक्षा प्राधिकरण सबसिस्टम द्वारा कार्यान्वित किया जाता है जो लॉगऑन प्रक्रिया के दौरान उपयोगकर्ता के एक्सेस टोकन के निर्माण को संभालता है। Windows Vista से शुरू होकर, लॉगऑन प्रक्रिया को संशोधित किया गया था ताकि जब कोई व्यवस्थापक UAC के साथ लॉग ऑन करे, तो LSA सबसिस्टम उपयोगकर्ता के लिए दो अलग-अलग एक्सेस टोकन उत्पन्न करता है:

  1. पूर्ण व्यवस्थापक पहुंच के साथ एक, और
  2. मानक उपयोगकर्ता पहुंच के साथ एक दूसरा "फ़िल्टर्ड टोकन"

जैसा कि यहां दिखाया गया है कि यह प्रक्रिया मानक उपयोगकर्ता लॉगऑन से भिन्न है:

यहाँ छवि विवरण दर्ज करें

एलएसए सबसिस्टम सेवा lsass.exeप्रक्रिया में रहती है ।

वर्चुअलाइजेशन

विंडोज 7 में जोड़ा गया, फ़ाइल और रजिस्ट्री वर्चुअलाइजेशन यूएसी के एक घटक है कि शिम्स पुराने अनुप्रयोगों है कि नहीं-यूएसी अनुपालन किया जा रहा है, लेकिन केवल फाइल सिस्टम या रजिस्ट्री का उपयोग कर सकते कुछ संरक्षित क्षेत्रों के लिए व्यवस्थापकीय अधिकार की आवश्यकता होती है:

जब एक प्रशासनिक अनुप्रयोग जो यूएसी के अनुरूप नहीं है, तो एक संरक्षित निर्देशिका में लिखने का प्रयास करता है, जैसे प्रोग्राम फाइल्स, यूएसी उस एप्लिकेशन को संसाधन का अपना वर्चुअलाइज्ड दृश्य देता है जिसे वह बदलने का प्रयास कर रहा है। उपयोगकर्ता की प्रोफ़ाइल में वर्चुअलाइज्ड प्रतिलिपि बनाए रखी जाती है।

स्रोत

उन क्षेत्रों तक पहुंच को पुनर्निर्देशित करके, जिनके लिए व्यवस्थापक अनुमतियों की आवश्यकता नहीं है, ये एप्लिकेशन UAC सिस्टम पर सक्षम होने के बावजूद कार्य करना जारी रखते हैं।

यह वर्चुअलाइजेशन कर्नेल में लागू किया गया है

आवेदन सूचना सेवा

एप्लिकेशन सूचना सेवा (AIS) एक एप्लिकेशन के प्रकटीकरण को पढ़ता है और यह निर्धारित करने के लिए UAC सहमति प्रॉम्प्ट के साथ काम करता है कि क्या किसी एप्लिकेशन को उन्नत अधिकारों के साथ निष्पादित करने की अनुमति है (अर्थात लॉगऑन में बनाए गए गैर-फ़िल्टर किए गए प्रशासनिक-स्तरीय पहुँच टोकन के संदर्भ में) । यह ब्लॉग पोस्ट UAC प्रक्रिया में अपनी भूमिका का एक अच्छा अवलोकन प्रदान करता है:

AIS अतिरिक्त प्रशासनिक विशेषाधिकारों के साथ संवादात्मक अनुप्रयोगों के चलने की सुविधा देता है। यदि यह सेवा बंद कर दी जाती है, तो उपयोगकर्ता उन अतिरिक्त प्रशासनिक विशेषाधिकारों के साथ एप्लिकेशन लॉन्च करने में असमर्थ होंगे जिनकी उन्हें आवश्यकता हो सकती है .... जब यह एप्लिकेशन लॉन्च करता है तो शेल इस सेवा के साथ जांच करता है। एआईएस वह होता है जो प्रकट होता है और 'TrustInfo' xml सेक्शन जिसे 'RequestExecutionLevel' के लिए आवश्यकताएं होती हैं ...

यहां एक ग्राफ़िक है जो UAC सहमति प्रॉम्प्ट प्रक्रिया में AIS की भूमिका का विस्तार करते हुए उपरोक्त उद्धरण का अनुसरण करता है:

यहाँ छवि विवरण दर्ज करें

एआईएल को डीएलएल में कार्यान्वित कियाappinfo.dll जाता है जिसे निष्पादित किया जाता है svchost.exe

सहमति शीघ्र

@ बेनएन के जवाब में (इन) प्रसिद्ध यूएसी कंसेंट प्रॉम्प्ट की प्रमुख भूमिका बताई गई है । यह consent.exeप्रशासक के अधिकारों की आवश्यकता वाले एप्लिकेशन को लॉन्च करने की अनुमति देने के लिए उपयोगकर्ता की सहमति या एक प्रशासनिक उपयोगकर्ता की साख प्राप्त करने के लिए लागू किया जाता है।

सुरक्षित डेस्कटॉप

सुरक्षित डेस्कटॉप वह जगह है जहां डिफ़ॉल्ट रूप से UAC सहमति संकेत प्रदर्शित होता है। उपयोगकर्ता के डेस्कटॉप की तुलना में Microsoft का UACBlog हमें बताता है कि इस डेस्कटॉप के बारे में क्या अनोखा है:

जब आप लॉगऑन UI पर सुरक्षित डेस्कटॉप पर चलते हैं, तो आप आमतौर पर विंडोज पर लॉग इन करते हैं। उपयोगकर्ता डेस्कटॉप से ​​सुरक्षित डेस्कटॉप का प्राथमिक अंतर यह है कि केवल सिस्टम के रूप में चलने वाली विश्वसनीय प्रक्रियाओं को यहां चलाने की अनुमति है (यानी उपयोगकर्ता के विशेषाधिकार स्तर के रूप में कुछ भी नहीं चल रहा है) और उपयोगकर्ता डेस्कटॉप से ​​सुरक्षित डेस्कटॉप पर जाने के लिए मार्ग पर भी भरोसा किया जाना चाहिए पूरी श्रृंखला।

एलीवेटेड अनुमतियों के साथ एप्लिकेशन चलाने के लिए उपयोगकर्ता की सहमति मांगने पर इसका उपयोग करने के पीछे का विचार यह है कि मैलवेयर सिक्योर डेस्कटॉप की नकल नहीं कर सकता है जब तक कि उसके पास पहले से ही प्रशासनिक अधिकार न हों, ऐसे में किसी उपयोगकर्ता को उसे देने के मामले में बरगलाया जाना गलत है।


निष्कर्ष: यूएसी केवल एक बाइनरी नहीं है। यह इंटरवॉवन सबसिस्टम का एक कपड़ा है।

यूएसी आर्किटेक्चर के अन्य पहलू अभी भी यहां कवर नहीं किए गए हैं, लेकिन इससे तथ्यों के लिए पर्याप्त सबूत मिल सकते हैं:

  1. यूएसी एकल बाइनरी में लागू नहीं है।
  2. यदि सक्षम है, तो यह प्रशासनिक कार्यों को करने का एक अभिन्न अंग है।

विंडोज विस्टा में इसकी शुरुआत के बाद से इसे ऑपरेटिंग सिस्टम के प्रमुख भागों में गहराई से एकीकृत किया गया है, जिससे यह अन्य चीजों (जैसे कि आपकी लॉगऑन की क्षमता!) को तोड़े बिना यूएसी के लिए जिम्मेदार सभी कोड को हटाने योग्य बना देता है!

मुझे लगता है कि यह कहना सुरक्षित है कि यदि आप "जबरदस्ती हटाए गए" यूएसी से आप विंडोज को तोड़ देंगे।


1
FWIW Technize.net/… उस लिंक के आधार पर, ऐसा लगता है कि फ़ाइल win32k.sys को एक भूमिका निभाने में लगता है कि मैं नोटिस करता हूं कि file.exe इसे MS Windows के लिए "PE32 + निष्पादन योग्य (मूल) x86-64 के रूप में
पहचानता है

win32k.sys है - अनिवार्य रूप से - कर्नेल का एक बड़ा हिस्सा। बेशक यह यूएसी में एक भूमिका निभाता है। यह है विंडोज।
रोजर लिप्सकॉम्ब

25

जैसा कि ट्विस्टी ने उत्कृष्ट रूप से समझाया , बहुत सारे घटक हैं जो यूएसी को लागू करने में मदद करते हैं। यूएसी का वह हिस्सा जिससे लोग सबसे अधिक परिचित हैं, वह है ऊंचाई / सहमति संवाद:

यह consent.exe"प्रशासनिक अनुप्रयोगों के लिए सहमति यूआई" द्वारा प्रदान किया गया है । मैंने एक वीएम में इसका नाम बदलने और यह देखने की कोशिश की कि क्या होता है। जैसा कि अपेक्षित था, "एडमिनिस्ट्रेटर के रूप में रन" का उपयोग करते समय कोई ऊँचाई का संकेत नहीं मिलता है - इसके बजाय, आपको एक फ़ाइल-नहीं-मिली त्रुटि मिलती है जो उस चीज़ को दोष देती है जिसे आप ऊंचा करने की कोशिश कर रहे हैं:

नहीं मिला

किसी भी कंट्रोल पैनल यूआई तत्व का उपयोग करने की कोशिश करना जिसमें ऊंचाई की आवश्यकता होती है (यानी ढाल आइकन है), भले ही एक व्यवस्थापक के रूप में लॉग इन किया हो, समान त्रुटियों के कारण विफल हो जाता है। स्टार्ट मेनू से प्रशासनिक चीजों को लॉन्च करने की कोशिश करने से थोड़ी अलग त्रुटि उत्पन्न होती है:

कोई ऐप संबद्ध नहीं है

एसीएल सेट के आधार पर जब सब कुछ टूट गया, तो नाम बदलना ओएस के भीतर से इसे ठीक करना असंभव हो सकता है, क्योंकि फ़ाइल संचालन को ऊंचाई की आवश्यकता हो सकती है (भले ही वे आम तौर पर सहमति संवाद का उत्पादन नहीं करते हैं)। सामान्य-उपयोगकर्ता-जैसी गतिविधियाँ हालांकि अपमानित नहीं लगतीं।


3
@ muru, मुझे लगता है कि सहमति होगी। केवल सही या गलत वापसी नहीं होती है, बल्कि इसके तहत निष्पादित करने के लिए टोकन है। जिसका अर्थ है कि आप सामान्य उपयोगकर्ता से व्यवस्थापक टोकन प्राप्त नहीं कर सकते हैं, वास्तव में व्यवस्थापक के रूप में प्रमाणित किए बिना।
जॉय

6
@ एमआरयू विंडोज कई सिस्टम फाइलों को सत्यापित और प्रतिस्थापित करता है, यह सुनिश्चित नहीं है कि यह शामिल है या नहीं। हालाँकि, सुरक्षा के दृष्टिकोण से, बिंदु moot है - सहमति को बदलने के लिए। आपको पहली जगह में प्रशासक के विशेषाधिकारों की आवश्यकता है, इसलिए यदि आप इसकी कल्पना करना चाहते हैं, तो इसे बदलना संभव नहीं है, भले ही इसमें कोई विशेषाधिकार वृद्धि न हो।
लुअन

3
बस इसे शामिल करने के लिए जब से विचार मेरे दिमाग में आया था। आप अभी भी फ़ाइल को बदलने के लिए मशीन को लिनक्स या कुछ में बूट कर सकते हैं। लेकिन इसके लिए मशीन तक भौतिक पहुंच की आवश्यकता होती है, जो मूल रूप से प्रशासनिक पहुंच भी है। इसलिए यह अभी भी सुरक्षा चिंता का विषय नहीं है
डेडचेक्स

1
@EricTowers हाँ, पर के बाद से प्रशासनिक विशेषाधिकार को बदलने के लिए आवश्यक हैं consent.exe, किसी हमलावर के दूसरे पक्ष पर है पहले से ही ऐसा कर सकते हैं वायुरुद्ध नौका-पृष्ठ का द्वार और बुरे काम करने के और अधिक सरल तरीके हैं।
बेन एन

1
@TwistyImpersonator दिलचस्प सवाल! एक सामान्य व्यवस्थापक खाते के तहत किए जाने पर साइलेंट एलिवेशन भी एक कंसेंट रन (प्रति प्रक्रिया मॉनिटरिंग ) शुरू करता है । अंतर्निहित व्यवस्थापक खाता UAC के अधीन नहीं है, इसलिए इसके सभी कार्यक्रम पहले से ही उन्नत हैं और सहमति शामिल नहीं होती है। आप इस सुरक्षा नीति का उपयोग करके उस व्यवहार को बदल सकते हैं ।
बेन एन
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.