4.5 KiB

House of Lore | Small bin Attack

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

Basic Information

Code

Goal

  • एक फर्जी छोटे चंक को छोटे बिन में डालें ताकि इसे आवंटित करना संभव हो सके
    ध्यान दें कि जो छोटा चंक जोड़ा गया है वह फर्जी है जिसे हमलावर बनाता है और यह किसी मनमाने स्थान में नहीं है।

Requirements

  • 2 फर्जी चंक्स बनाएं और उन्हें एक साथ और छोटे बिन में वैध चंक के साथ लिंक करें:
  • fake0.bk -> fake1
  • fake1.fd -> fake0
  • fake0.fd -> legit (आपको किसी अन्य कमजोरियों के माध्यम से मुक्त छोटे बिन चंक में एक पॉइंटर को संशोधित करने की आवश्यकता है)
  • legit.bk -> fake0

फिर आप fake0 को आवंटित करने में सक्षम होंगे।

Attack

  • एक छोटा चंक (legit) आवंटित किया जाता है, फिर एक और आवंटित किया जाता है ताकि शीर्ष चंक के साथ समेकन को रोका जा सके। फिर, legit को मुक्त किया जाता है (इसे असंरचित बिन सूची में ले जाना) और एक बड़ा चंक आवंटित किया जाता है, legit को छोटे बिन में ले जाना।
  • एक हमलावर कुछ फर्जी छोटे चंक्स उत्पन्न करता है, और आवश्यक लिंक बनाता है ताकि सैनीटी चेक को बायपास किया जा सके:
  • fake0.bk -> fake1
  • fake1.fd -> fake0
  • fake0.fd -> legit (आपको किसी अन्य कमजोरियों के माध्यम से मुक्त छोटे बिन चंक में एक पॉइंटर को संशोधित करने की आवश्यकता है)
  • legit.bk -> fake0
  • एक छोटा चंक आवंटित किया जाता है ताकि वैध प्राप्त किया जा सके, fake0 को छोटे बिन की शीर्ष सूची में बना दिया जाए
  • एक और छोटा चंक आवंटित किया जाता है, fake0 को एक चंक के रूप में प्राप्त करते हुए, जिससे इसके अंदर पॉइंटर्स को पढ़ने/लिखने की अनुमति मिलती है।

References

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