
PS4 6.20 पर RCE प्राप्त करने के लिए CVE-2018-4441 का उपयोग करने वाला एक WebKit शोषण।
इस रिपॉजिटरी में PlayStation 4 के फर्मवेयर 6.20 पर लक्षित एक प्रूफ-ऑफ-कॉन्सेप्ट (PoC) RCE एक्सप्लॉइट शामिल है, जो CVE-2018-4441 का उपयोग करता है। एक्सप्लॉइट पहले wkexploit.js में एक मनमाना रीड/राइट प्रिमिटिव और एक मनमाना ऑब्जेक्ट पता लीक स्थापित करता है। फिर यह index.html में ROP चेन चलाने के लिए एक फ्रेमवर्क सेट करता है और डिफ़ॉल्ट रूप से टेस्ट ROP चेन चलाने के लिए दो हाइपरलिंक प्रदान करेगा - एक sys_getpid() सिस्कॉल चलाने के लिए, और दूसरा sys_getuid() सिस्कॉल चलाने के लिए, ताकि प्रक्रिया का PID और उपयोगकर्ता ID प्राप्त हो सके।
प्रत्येक फ़ाइल के शीर्ष पर एक टिप्पणी है जो संक्षेप में बताती है कि फ़ाइल में क्या है और एक्सप्लॉइट कैसे काम करता है। बग की खोज का श्रेय Google प्रोजेक्ट ज़ीरो (p0) के lokihardt को जाता है। बग रिपोर्ट यहाँ पाई जा सकती है।
नोट: इसे 6.50 फर्मवेयर अपडेट में पैच किया गया है।
फ़ाइलें वर्णमाला क्रम में;
index.html - पोस्ट-एक्सप्लॉइट कोड शामिल है, arb. R/W से कोड निष्पादन तक।rop.js - ROP चेन के लिए एक फ्रेमवर्क शामिल है।syscalls.js - पोस्ट-एक्सप्लॉइट सामग्री के लिए उपयोग करने के लिए सिस्टम कॉल्स की एक (अपूर्ण) सूची शामिल है।wkexploit.js - WebKit एक्सप्लॉइट का मुख्य भाग शामिल है।p.launchchain() विधि को बदलने की आवश्यकता हो सकती है।syscalls.js में केवल कुछ ही सिस्टम कॉल्स हैं।इन फ़ाइलों को xampp या अपनी पसंद के किसी अन्य प्रोग्राम का उपयोग करके localhost पर होस्ट करने वाला वेब-सर्वर सेट करें। इसके अतिरिक्त, आप इसे सर्वर पर होस्ट कर सकते हैं। आप PS4 पर इसे निम्नलिखित में से किसी एक तरीके से एक्सेस कर सकते हैं;
फर्जी DNS स्पूफिंग द्वारा मैनुअल पेज को एक्सप्लॉइट पेज पर रीडायरेक्ट करना, या
एक्सप्लॉइट पेज पर जाने के लिए वेब ब्राउज़र का उपयोग करना (हमेशा संभव नहीं)।
मैंने एक्सप्लॉइट लिखा है, लेकिन मैंने भेद्यता नहीं खोजी, जैसा कि ऊपर उल्लेख किया गया है, बग (CVE-2018-4441) Google प्रोजेक्ट ज़ीरो (p0) के lokihardt द्वारा पाया गया था और इसे क्रोमियम सार्वजनिक बग ट्रैकर के माध्यम से प्रकट किया गया था।
क्रोमियम बग रिपोर्ट - भेद्यता।
Phrack: Attacking JavaScript Engines by saelo - एक जीवन रक्षक। इस दिव्य पेपर के बिना इसका शोषण करना लगभग 1500x अधिक कठिन होता।
lokihardt - भेद्यता
st4rk - एक्सप्लॉइट में मदद
qwertyoruiop - WebKit School
saelo - Phrack पेपर