
PoC for Dirty COW (CVE-2016-5195)
Dirty COW (CVE-2016-5195) के लिए PoC।
यह PoC vDSO को पैच करने के लिए /proc/self/mem के बजाय ptrace पर निर्भर करता है। फ़ाइल सिस्टम बाइनरी को संशोधित करने वाले PoCs की तुलना में इसके कुछ लाभ हैं:
और कुछ नुकसान:
वर्तमान पेलोड लगभग The Sea Watcher के समान है और जब भी कोई प्रक्रिया clock_gettime() पर कॉल करती है तो निष्पादित होता है। यदि प्रक्रिया के पास रूट विशेषाधिकार हैं और /tmp/.x मौजूद नहीं है, तो यह फोर्क करता है, /tmp/.x बनाता है और अंत में एक्सप्लॉइट के लिए TCP रिवर्स शेल बनाता है। यह सुंदर नहीं है लेकिन इसका उपयोग कंटेनर एस्केप के लिए किया जा सकता है।
vDSO के सफलतापूर्वक पैच होने का पता लगाना बुलेटप्रूफ नहीं है। पुनर्स्थापना चरण के दौरान, vDSO प्रभावी रूप से बहाल हो जाता है लेकिन एक्सप्लॉइट इसे सही ढंग से रिपोर्ट करने में विफल रहता है। वास्तव में, vDSO परिवर्तन एक्सप्लॉइट प्रक्रिया को प्रभावित नहीं करते हैं।