3.5 KiB

Use After Free

{{#include ../../../banners/hacktricks-training.md}}

Basic Information

जैसा कि नाम से स्पष्ट है, यह सुरक्षा कमजोरी तब होती है जब एक प्रोग्राम हीप में एक ऑब्जेक्ट के लिए कुछ स्थान स्टोर करता है, वहां कुछ जानकारी लिखता है, फिर इसे फ्री करता है क्योंकि यह अब आवश्यक नहीं है और फिर इसे फिर से एक्सेस करता है

यहां समस्या यह है कि जब फ्री की गई मेमोरी को एक्सेस किया जाता है तो यह अवैध नहीं है (यहां कोई त्रुटियां नहीं होंगी)। इसलिए, यदि प्रोग्राम (या हमलावर) ने फ्री की गई मेमोरी को आवंटित किया और मनमाना डेटा स्टोर किया, जब फ्री की गई मेमोरी को प्रारंभिक पॉइंटर से एक्सेस किया जाता है तो डेटा को ओवरराइट किया जा सकता है, जिससे एक कमजोरी उत्पन्न होती है जो उस डेटा की संवेदनशीलता पर निर्भर करती है जो मूल रूप से स्टोर किया गया था (यदि यह एक फ़ंक्शन का पॉइंटर था जिसे कॉल किया जाने वाला था, तो एक हमलावर इसे नियंत्रित कर सकता है)।

First Fit attack

एक फर्स्ट फिट हमला उन तरीकों को लक्षित करता है जिनसे कुछ मेमोरी आवंटक, जैसे कि glibc में, फ्री की गई मेमोरी का प्रबंधन करते हैं। जब आप मेमोरी के एक ब्लॉक को फ्री करते हैं, तो इसे एक सूची में जोड़ा जाता है, और नए मेमोरी अनुरोध उस सूची से अंत से खींचते हैं। हमलावर इस व्यवहार का उपयोग किस मेमोरी ब्लॉकों को फिर से उपयोग किया जाता है, इसे नियंत्रित करने के लिए कर सकते हैं। इससे "use-after-free" समस्याएं उत्पन्न हो सकती हैं, जहां एक हमलावर फिर से आवंटित की गई मेमोरी की सामग्री को बदल सकता है, जिससे सुरक्षा जोखिम उत्पन्न होता है।
अधिक जानकारी के लिए देखें:

{{#ref}} first-fit.md {{#endref}}

{{#include ../../../banners/hacktricks-training.md}}