Skip to content
KitploitKITPLOIT
उपकरणब्लॉग
जमा करें
उपकरणब्लॉग
जमा करें

हैकिंग, पेनटेस्ट और साइबर सुरक्षा उपकरण आपके सुरक्षा शस्त्रागार के लिए!

Kitploit हैकिंग, साइबर सुरक्षा और पेंटेस्टिंग टूल्स की एक निर्देशिका है। कमजोरियों को खोजने, सिस्टम का विश्लेषण करने, परीक्षण को स्वचालित करने और अपनी सुरक्षा को मजबूत करने के लिए नवीनतम प्रोजेक्ट अपडेट खोजें।

··फ़ीड·संपर्क·गोपनीयता·© 2026 Kitploit

टूल निर्देशिका

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
Byepervisor — 1.xx-2xx फ़र्मवेयर के लिए एक PS5 हाइपरवाइज़र एक्सप्लॉइट। | Kitploit
उपकरण/GitHubGitHub/ps5dev/byepervisor
एम्बेडेड सिस्टम सुरक्षाविशेषाधिकार वृद्धिभेद्यता विश्लेषणशोषणरिवर्स इंजीनियरिंगसुरक्षा वर्चुअलाइजेशनबाइनरी शोषण
GitHubps5dev/byepervisor

Byepervisor

1.xx-2xx फ़र्मवेयर के लिए एक PS5 हाइपरवाइज़र एक्सप्लॉइट।

रिपॉजिटरी देखें
355231 साल पहलेKitploit द्वारा समीक्षित

सबसे लोकप्रिय

सभी देखें →

हमारे समुदाय द्वारा सबसे अधिक उपयोग किए जाने वाले उपकरण खोजें।

सभी उपकरण खोजें

हमारे उपकरणों का संग्रह ब्राउज़ करें

सभी उपकरण देखें →
साझा करें

Byepervisor


सारांश

PS5 हाइपरवाइज़र एक्सप्लॉइट <= 2.xx फ़र्मवेयर के लिए। रिपॉजिटरी में दो कमजोरियाँ और एक्सप्लॉइट चेन शामिल हैं, वे एक-दूसरे से स्वतंत्र हैं और दोनों में से कोई भी इस्तेमाल की जा सकती है। एक एक्सप्लॉइट मुख्य रूप से संरक्षण के लिए दिया गया है (/_old_jump_table_exploit), केवल प्राथमिक एक्सप्लॉइट चेन का उपयोग करने की आवश्यकता है (QA फ़्लैग्स एक्सप्लॉइट)।

यह शोध hardwear.io NL 2024 में प्रस्तुत किया गया था, स्लाइड्स यहाँ मिल सकती हैं। यह वार्ता जल्द ही प्रकाशित की जाएगी।

जंप टेबल एक्सप्लॉइट

पहला एक्सप्लॉइट एक ऐसी कमजोरी का उपयोग करता है जहाँ हाइपरवाइज़र कोड जंप टेबल अतिथि कर्नेल के साथ साझा की जाती हैं, और यह /_old_jump_table_exploit/ में स्थित है। VMMCALL_HV_SET_CPUID_PS4 हाइपरकॉल के लिए जंप टेबल प्रविष्टि को हाईजैक करके, हाइपरवाइज़र में कोड निष्पादन प्राप्त किया जा सकता है। हम एक ROP चेन चलाते हैं जो नेस्टेड पेजिंग (NPT) और गेस्ट मोड एक्सिक्यूट ट्रैप (GMET) को अक्षम करती है, जिससे हम कर्नेल पेज टेबल एंट्रीज़ (PTEs) में eXecute Only Memory (XOM) उर्फ xotext को अक्षम करके उसे डंप कर सकते हैं, साथ ही PTEs में राइट सक्षम करके कर्नेल को हुक/पैच भी कर सकते हैं।

इस विधि के लिए काफी संख्या में गैजेट्स और ऑफसेट्स की आवश्यकता होती है, जो मुख्य कारण है कि यह एक्सप्लॉइट प्राथमिक नहीं है। यह वर्तमान में केवल उस कोर पर हाइपरवाइज़र को तोड़ता है जिस पर ROP चेन चलती है, हाइपरवाइज़र अन्य कोर पर अभी भी सक्रिय रहता है और उसे अक्षम करने की आवश्यकता होगी।

QA फ़्लैग्स एक्सप्लॉइट

प्राथमिक और अनुशंसित एक्सप्लॉइट इस तथ्य का लाभ उठाता है कि सिस्टम क्वालिटी एश्योरेंस (QA) फ़्लैग हाइपरवाइज़र और अतिथि कर्नेल के बीच साझा किए जाते हैं। जब हाइपरवाइज़र इनिशियलाइज़ होता है, तो नेस्टेड पेज टेबल बनाने के लिए init कोड सिस्टम लेवल (SL) डिबगिंग फ़्लैग के लिए QA फ़्लैग्स की जाँच करेगा। यदि यह फ़्लैग सेट है, तो नेस्टेड पेज टेबल एंट्रीज़ (PTEs) में कर्नेल .text पेजों के लिए xotext बिट सेट नहीं होगा, और इसके अलावा कर्नेल .text पेजों पर राइट बिट भी सेट होगा।

स्लीप मोड से रिज़्यूम करने पर ये फ़्लैग सिक्योर लोडर द्वारा पुनः इनिशियलाइज़ नहीं किए जाते, हालाँकि हाइपरवाइज़र पुनः इनिशियलाइज़ होता है। SL फ़्लैग सेट करके, सिस्टम को स्लीप में डालकर, और रिज़्यूम करके, हम अतिथि कर्नेल के पेजटेबल्स को संपादित कर सकते हैं ताकि कर्नेल .text पेज रीड/राइट करने योग्य बन जाएँ, जिससे कर्नेल की डंपिंग और हुक/पैच संभव हो सकें।

महत्वपूर्ण नोट्स

  • वर्तमान में होमब्रू एनेबलर (HEN) के लिए केवल 2.50 FW समर्थित है, अन्य फ़र्मवेयर संस्करणों के लिए समर्थन बाद में जोड़ा जाएगा।
  • एक्सप्लॉइट पेलोड (byepervisor.elf) को दो बार भेजना होगा, एक बार सिस्टम को सस्पेंड करने से पहले और फिर रिज़्यूम करने के बाद।
  • आपको सिस्टम को मैन्युअल रूप से रेस्ट मोड में डालना होगा
  • QA फ़्लैग्स एक्सप्लॉइट से कर्नेल डंप में फ़िलहाल हाइपरवाइज़र का .data क्षेत्र शामिल नहीं होगा, यदि यह आपके लिए महत्वपूर्ण है, तो पोर्टिंग के बाद जंप टेबल एक्सप्लॉइट का उपयोग करके डंप करें या पहले नेस्टेड पेजिंग अक्षम करें (यह एक TODO है)

वर्तमान में शामिल

  • कर्नेल डंपिंग कोड (कमेंट किया हुआ, इस कोड को चलाने से सिस्टम पैनिक हो जाएगा क्योंकि यह अनमैप्ड मेमोरी तक पहुँचने से पहले जितना संभव हो उतना डंप करने की कोशिश करेगा)
  • TCP पर सिस्टम लाइब्रेरी SELFs को डिक्रिप्ट करने के लिए कोड
  • 2.50 फ़र्मवेयर के लिए होमब्रू एनेबलर (HEN) (fself+fpkg)

बिल्ड नोट्स

यह एक्सप्लॉइट पेलोड PS5-Payload-Dev SDK का उपयोग करके बनाया गया है। यह भी ध्यान दें कि hen/ के लिए बिल्ड थोड़ा विशेष है, क्योंकि इसे एक फ्लैट बाइनरी में संकलित किया जाता है जिसे कर्नेल कोड केव में कॉपी किया जाता है। hen/ में मौजूद सारा कोड सुपरवाइज़र/कर्नेल मोड में चलता है।

उपयोग कैसे करें

  1. वेबकिट या BD-J में UMTX एक्सप्लॉइट चेन चलाएँ और एक ELF लोडर चलाएँ
  2. byepervisor.elf भेजें
  3. सिस्टम को रेस्ट मोड में डालें
  4. सिस्टम को फिर से चालू करें
  5. byepervisor.elf फिर से भेजें (यदि आप John Tornblom का ELF लोडर उपयोग करते हैं, तो ELF लोडर को रिज़्यूम के बाद पेलोड स्वीकार करना जारी रखना चाहिए, यदि नहीं, तो UMTX एक्सप्लॉइट को फिर से चलाने की आवश्यकता होगी)

भविष्य का कार्य

  • अधिक फ़र्मवेयर (ऑफसेट्स) के लिए समर्थन
  • ऐसा बनाना कि byepervisor.elf को केवल एक बार भेजने की आवश्यकता हो
  • सिस्टम को स्वचालित रूप से सस्पेंड करें?
  • हाइपरवाइज़र डेटा डंप करने के लिए QA फ़्लैग्स एक्सप्लॉइट से vmcbs को पैच करें

क्रेडिट्स / शाउट्स

  • ChendoChap
  • flatz
  • fail0verflow
  • Znullptr
  • kiwidog
  • sleirsgoevy

डिस्कॉर्ड

PS5 अनुसंधान/डेवलपमेंट में योगदान देने में रुचि रखने वाले लोग मेरे द्वारा सेटअप किए गए डिस्कॉर्ड यहाँ से जुड़ सकते हैं।

टूल डाउनलोड करें