डर्टी पाईप: एक भेद्यता जी डेटा ओव्हरराईट करण्यास अनुमती देते

अलीकडेच बातमीने ती फोडली लिनक्स कर्नलमध्ये भेद्यता ओळखली गेली आणि जे आधीच CVE-2022-0847 अंतर्गत सूचीबद्ध आहे आणि ज्याला त्यांनी नाव दिले आहे "डर्टी पाईप".

या असुरक्षिततेला "डर्टी पाईप" असे म्हणतात.कॅशेची सामग्री अधिलिखित करण्यास अनुमती देते O_RDONLY ध्वजासह उघडलेल्या, किंवा केवळ-वाचनीय माउंट केलेल्या फाइल सिस्टीमवर स्थित असलेल्या, केवळ-वाचण्यासाठी सेट केलेल्या फाइल्ससह कोणत्याही फाइलसाठी पृष्ठाचे.

व्यावहारिक बाजूवर, असुरक्षितता अनियंत्रित प्रक्रियांमध्ये कोड इंजेक्ट करण्यासाठी वापरला जाऊ शकतो किंवा खुल्या फायलींमधील दूषित डेटा. उदाहरणार्थ, तुम्ही sshd प्रक्रियेसाठी अधिकृत_की फाइलची सामग्री बदलू शकता.

डर्टी पाईप बद्दल

हे गंभीर असुरक्षा डर्टी गाय सारखे आहे 2016 मध्ये ओळखले गेले आणि डर्टी पाईप धोक्याच्या दृष्टीने डर्टी गाय सारख्याच पातळीवर असल्याचे नमूद केले आहे, परंतु हे ऑपरेट करणे खूप सोपे आहे.

संग्रहणांना नियतकालिक नुकसान झाल्याच्या तक्रारींच्या विश्लेषणादरम्यान डर्टी पाईप ओळखले गेले लॉगिंग सर्व्हरवरून संकुचित फायली डाउनलोड करणार्‍या सिस्टमवर नेटवर्कवर डाउनलोड केले (लोड केलेल्या सिस्टमवर 37 महिन्यांत 3 नुकसान), जे स्प्लिस() ऑपरेशन आणि अनामित पाईप्स वापरून तयार केले गेले.

असुरक्षितता Linux कर्नल आवृत्ती 5.8 पासून प्रकट होत आहे, ऑगस्ट 2020 मध्ये रिलीज झाला.

डेबियन 11 मध्ये ते उपस्थित आहे असे आपण म्हणू शकतो असे आणखी एक मार्ग पाहिले परंतु ते Ubuntu 20.04 LTS मधील बेस कर्नलवर परिणाम करत नाही, तर RHEL 8.x आणि openSUSE/SUSE 15 कर्नलसाठी जे मूळतः जुन्या शाखांवर आधारित आहेत, परंतु ते शक्य आहे. की समस्या निर्माण करणारा बदल त्यांच्याकडे हस्तांतरित केला गेला आहे (अद्याप कोणताही अचूक डेटा नाही).

संरचनेचे वाटप केल्यावर मेमरी साफ केली जात नसतानाही, आणि अज्ञातासह काही फेरफार करूनही, copy_page_to_iter_pipe() आणि push_pipe() या फंक्शन्सच्या कोडमधील "buf->flags" मूल्याच्या प्रारंभाच्या अभावामुळे असुरक्षा आहे. पाईप्स, "buf->ध्वज" मध्ये दुसर्‍या ऑपरेशनचे मूल्य असू शकते. या वैशिष्ट्यासह, एक विशेषाधिकार नसलेला स्थानिक वापरकर्ता ध्वजात PIPE_BUF_FLAG_CAN_MERGE मूल्याचा देखावा साध्य करू शकतो, त्यांना पृष्ठ कॅशेमध्ये डेटा ओव्हरराइट करण्याची परवानगी देतो फक्त एका खास तयार केलेल्या अनामित पाईपवर नवीन डेटा लिहून.

हल्ल्यासाठी केले जाऊ शकते, आपल्याला लक्ष्य फाइल आवश्यक आहे जी वाचनीय असावी आणि पाईपवर लिहिताना प्रवेश अधिकार तपासले जात नसल्यामुळे, पृष्ठ कॅशेवर बदली केली जाऊ शकते, अगदी वाचनीय विभाजनांवर असलेल्या फाइल्ससाठी (उदाहरणार्थ, c CD-ROM फाइल्ससाठी).

यासह, पृष्ठ कॅशेमधील माहिती बदलल्यानंतर, फाइलमधील डेटा वाचताना, प्रक्रिया वास्तविक डेटा प्राप्त करणार नाही, परंतु बदललेली डेटा प्राप्त करेल.

असे नमूद केले आहे डर्टी पाईप ऑपरेशन एक अनामित पाईप तयार करणे आणि अनियंत्रित डेटाने भरणे यासाठी उकळते त्याच्याशी संबंधित सर्व रिंग स्ट्रक्चर्सवर PIPE_BUF_FLAG_CAN_MERGE ध्वज सेट करणे.

नंतर डेटा पाईपमधून वाचला जातो, परंतु पाईप_इनोड_इन्फो रिंग स्ट्रक्चर्समधील पाईप_बफर स्ट्रक्चरच्या सर्व उदाहरणांवर ध्वज सेट केला जातो. मग आवश्यक ऑफसेटपासून सुरू होऊन, गंतव्य फाइलमधील डेटा अज्ञात पाईपमध्ये वाचण्यासाठी splice() ला कॉल केला जातो. या अनामित पाईपवर डेटा लिहिताना, PIPE_BUF_FLAG_CAN_MERGE ध्वज पाईप_बफर संरचनेचा नवीन उदाहरण तयार करण्याऐवजी पृष्ठ कॅशेमधील डेटा अधिलिखित करेल.

शेवटी आपल्याला त्याबद्दल अधिक जाणून घेण्यात स्वारस्य असल्यास, तुम्ही मूळ नोटमधील तपशील तपासू शकता पुढील लिंकवर

तसेच, तुम्हाला स्वारस्य असल्यास अद्यतनांच्या प्रकाशनाचे अनुसरण करण्यास किंवा त्याबद्दल जाणून घेण्यास सक्षम व्हा मुख्य वितरणातील पॅकेजेस, तुम्ही ते या पृष्ठांवरून करू शकता: डेबियनSUSEउबंटूरहेलFedoraगेन्टूआर्क लिनक्स.

असे नमूद केले आहे की प्रस्तावित भेद्यता निराकरण लिनक्स कर्नल आवृत्ती 5.16.11, 5.15.25 आणि 5.10.102 मध्ये उपलब्ध आहे आणि निराकरण Android प्लॅटफॉर्मवर वापरल्या जाणार्‍या कर्नलमध्ये देखील समाविष्ट आहे.


आपली टिप्पणी द्या

आपला ई-मेल पत्ता प्रकाशित केला जाणार नाही. आवश्यक फील्ड चिन्हांकित केले आहेत *

*

*

  1. डेटासाठी जबाबदार: AB इंटरनेट नेटवर्क 2008 SL
  2. डेटाचा उद्देशः नियंत्रण स्पॅम, टिप्पणी व्यवस्थापन.
  3. कायदे: आपली संमती
  4. डेटा संप्रेषण: कायदेशीर बंधन वगळता डेटा तृतीय पक्षास कळविला जाणार नाही.
  5. डेटा संग्रहण: ओकेन्टस नेटवर्क (EU) द्वारा होस्ट केलेला डेटाबेस
  6. अधिकारः कोणत्याही वेळी आपण आपली माहिती मर्यादित, पुनर्प्राप्त आणि हटवू शकता.