Pointer Redirecting
Last updated
Last updated
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
यदि एक फ़ंक्शन कॉल एक स्ट्रिंग के पते का उपयोग करने जा रहा है जो स्टैक में स्थित है, तो बफर ओवरफ्लो का दुरुपयोग करके इस पते को ओवरराइट करना और बाइनरी के अंदर एक अलग स्ट्रिंग का पता डालना संभव है।
यदि उदाहरण के लिए एक system
फ़ंक्शन कॉल एक कमांड निष्पादित करने के लिए स्ट्रिंग के पते का उपयोग करने जा रहा है, तो एक हमलावर स्टैक में एक अलग स्ट्रिंग का पता रख सकता है, export PATH=.:$PATH
और वर्तमान निर्देशिका में नई स्ट्रिंग के पहले अक्षर के नाम वाला एक स्क्रिप्ट बना सकता है क्योंकि इसे बाइनरी द्वारा निष्पादित किया जाएगा।
आप इसका उदाहरण यहाँ पा सकते हैं:
32bit, स्टैक में फ्लैग्स स्ट्रिंग के पते को बदलें ताकि इसे puts
द्वारा प्रिंट किया जा सके
स्ट्रिंग पॉइंटर के समान लेकिन फ़ंक्शंस पर लागू होता है, यदि स्टैक में एक फ़ंक्शन का पता है जिसे कॉल किया जाएगा, तो इसे बदलना संभव है (जैसे system
को कॉल करना)।
आप इसका उदाहरण यहाँ पा सकते हैं:
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)