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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
xfg_analyzer — एक Binary Ninja प्लगइन जो ब्रूटफोर्स किए गए XFG हैश का उपयोग करके सटीक फ़ंक्शन प्रोटोटाइप प्राप्त करता है। | Kitploit
उपकरण/GitHubGitHub/ea/xfg_analyzer
स्थैतिक विश्लेषणरिवर्स इंजीनियरिंगबाइनरी विश्लेषण
GitHubea/xfg_analyzer

xfg_analyzer

एक Binary Ninja प्लगइन जो ब्रूटफोर्स किए गए XFG हैश का उपयोग करके सटीक फ़ंक्शन प्रोटोटाइप प्राप्त करता है।

रिपॉजिटरी देखें
1622 साल पहलेअभी तक समीक्षित नहीं

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

सभी देखें →

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

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

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

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

XFG हैशों को ब्रूटफोर्स करके फ़ंक्शन प्रोटोटाइप पुनर्प्राप्त करना

इस रिपॉज़िटरी में eXtended Flow Guard हैशों को जनरेट करने और खोजने के लिए स्क्रिप्ट्स शामिल हैं।

इसके काम करने के तरीके का एक विस्तृत लेख International Jouranl Of Proof Of Concept || GTFO के अंक 22 में उपलब्ध है।

इस PoC पर मेरा काम Quarkslab के लोगों द्वारा काफी सरल बना दिया गया था, जिन्होंने MS के कंपाइलर के प्रासंगिक हिस्सों का व्यापक रिवर्स इंजीनियरिंग किया है। XFG हैशों की गणना कैसे की जाती है, इस पर उनका गहन लेख यहाँ पढ़ा जा सकता है: https://blog.quarkslab.com/how-the-msvc-compiler-generates-xfg-function-prototype-hashes.html

नोट: यह किसी भी तरह से एक्सप्लॉइट मिटिगेशन के रूप में XFG को "तोड़ता" नहीं है, यह केवल बिना सिंबल वाले फ़ंक्शनों को उजागर करने के लिए इसके साइड इफेक्ट्स का दुरुपयोग करता है।

संक्षेप में, Windows पर लागू किया गया XFG, Control Flow Guard एक्सप्लॉइट मिटिगेशन का विस्तार करता है और उसे और कठोर बनाता है, अप्रत्यक्ष फ़ंक्शन कॉल के संभावित लक्ष्यों को केवल वैध फ़ंक्शन एंट्री पॉइंट्स तक ही सीमित नहीं करता, बल्कि मेल खाते सिग्नेचर वाले फ़ंक्शनों तक सीमित करता है। ऐसा करने के लिए, प्रत्येक फ़ंक्शन के लिए एक XFG हैश की गणना की जाती है और रनटाइम के दौरान इसके विरुद्ध जाँच की जाती है। हैश केवल फ़ंक्शन प्रोटोटाइप (अर्थात् कॉलिंग कन्वेंशन, तर्क और उनके प्रकार) पर आधारित होते हैं। इस प्रकार, हम उन्हें ज्ञात प्रकारों के लिए पहले से संगणित कर सकते हैं और बाद में अज्ञात बाइनरीज़ में फ़ंक्शनों के लिए उन्हें खोज सकते हैं।

यदि खोज सफल रहती है, तो हम सभी तर्कों की सटीक संख्या और प्रकारों के साथ-साथ फ़ंक्शन के रिटर्न वैल्यू के बारे में 100% निश्चित हो सकते हैं। यह उन बाइनरीज़ और फ़ंक्शनों के लिए अत्यंत उपयोगी हो सकता है जिनमें कोई सार्वजनिक सिंबल नहीं होते।

मैं आपको पास के मिरर से परोसे गए PoC||GTFO में पूरा लेख पढ़ने के लिए आमंत्रित करता हूँ।

स्क्रिप्ट्स हैं:

  • gen_function_prototypes.py - केवल दिए गए प्रकारों के साथ सभी संभावित प्रोटोटाइप वाली एक फ़ाइल आउटपुट करती है
  • gen_hash_from_ast.py - एक .c फ़ाइल पढ़ती है, उसे पार्स करती है, हैश की गणना करती है और उसे डेटाबेस में सहेजती है (gen_function_prototypes.py द्वारा जनरेट की गई फ़ाइलों पर उपयोग के लिए अभिप्रेत है)
  • xfg_analyzer.py - Binary Ninja प्लगइन जो बाइनरी में XFG हैशों को खोजता है, उन्हें डेटाबेस में देखता है
  • find_hash.py - डेटाबेस में दिए गए हैशों को खोजने के लिए सरल शॉर्टकट

इन स्क्रिप्ट्स का उपयोग करने के लिए, आपको पहले gen_function_prototypes.py को संशोधित करना होगा ताकि आप उस लक्ष्य के लिए विशिष्ट "प्रिमिटिव टाइप्स", structs या enums जोड़ सकें जिसे आप देख रहे हैं। साथ ही, आप यह चुनना चाहेंगे कि आप कितने तर्कों तक ब्रूटफोर्स करना चाहते हैं। 3 तक एक मिनट लगता है, 4 तक एक दिन...

सभी संयोजनों के फ़ंक्शन प्रोटोटाइप जनरेट हो जाने के बाद, आप gen_hash_from_ast.py चलाना चाहेंगे, जो पहले जनरेट की गई फ़ाइल को पंक्ति दर पंक्ति पार्स करेगा और संबंधित XFG हैश उत्पन्न करेगा। जब यह पूरा हो जाएगा, तो आपके पास उनके मेल खाते XFG हैशों के साथ फ़ंक्शन प्रोटोटाइप का एक SQLite डेटाबेस होगा। xfg_analyzer.py में एक बहुत ही सरल Binary Ninja प्लगइन शामिल है। जब इसे XFG-संरक्षित बाइनरी पर चलाया जाता है, तो यह सभी XFG हैशों को ढूंढेगा, उन्हें डेटाबेस में खोजेगा और, यदि कोई मेल मिल जाता है, तो नए फ़ंक्शन प्रोटोटाइप को परिभाषित फ़ंक्शन पर लागू करेगा।

जान लें कि यह केवल एक PoC है। वास्तव में उपयोगी होने के लिए, हैशों का एक विशाल डेटाबेस (संभवतः Windows की हेडर फ़ाइलों के सभी struct/enum नामों से सीड किया हुआ) जनरेट किया जाना चाहिए और ऑनलाइन लुकअप के लिए उपलब्ध कराया जाना चाहिए। इसके अतिरिक्त, इस विचार को C++ XFG हैशों तक विस्तारित करना एक बहुत मज़ेदार प्रोजेक्ट होगा।

इस रिपॉज़िटरी में कोड का उपयोग किसी भी तरह से करने के लिए स्वतंत्र महसूस करें। यदि आप इसे उपयोगी पाते हैं, तो मुझे आपसे सुनना अच्छा लगेगा।

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