Heap Functions Security Checks
Reading time: 6 minutes
tip
AWS हैकिंग सीखें और अभ्यास करें:
HackTricks Training AWS Red Team Expert (ARTE)
GCP हैकिंग सीखें और अभ्यास करें:
HackTricks Training GCP Red Team Expert (GRTE)
Azure हैकिंग सीखें और अभ्यास करें:
HackTricks Training Azure Red Team Expert (AzRTE)
HackTricks का समर्थन करें
- सदस्यता योजनाओं की जांच करें!
- हमारे 💬 Discord समूह या टेलीग्राम समूह में शामिल हों या हमें Twitter 🐦 @hacktricks_live** पर फॉलो करें।**
- हैकिंग ट्रिक्स साझा करें और HackTricks और HackTricks Cloud गिटहब रिपोजिटरी में PRs सबमिट करें।
unlink
अधिक जानकारी के लिए देखें:
यह किए गए चेक का सारांश है:
- जांचें कि चंक का निर्दिष्ट आकार अगले चंक में
prev_sizeके समान है - त्रुटि संदेश:
corrupted size vs. prev_size - यह भी जांचें कि
P->fd->bk == PऔरP->bk->fw == P - त्रुटि संदेश:
corrupted double-linked list - यदि चंक छोटा नहीं है, तो जांचें कि
P->fd_nextsize->bk_nextsize == PऔरP->bk_nextsize->fd_nextsize == P - त्रुटि संदेश:
corrupted double-linked list (not small)
_int_malloc
अधिक जानकारी के लिए देखें:
- फास्ट बिन खोज के दौरान चेक:
- यदि चंक गलत संरेखित है:
- त्रुटि संदेश:
malloc(): unaligned fastbin chunk detected 2 - यदि आगे का चंक गलत संरेखित है:
- त्रुटि संदेश:
malloc(): unaligned fastbin chunk detected - यदि लौटाया गया चंक उसका इंडेक्स के कारण सही आकार नहीं है:
- त्रुटि संदेश:
malloc(): memory corruption (fast) - यदि tcache को भरने के लिए उपयोग किया गया कोई चंक गलत संरेखित है:
- त्रुटि संदेश:
malloc(): unaligned fastbin chunk detected 3 - छोटे बिन खोज के दौरान चेक:
- यदि
victim->bk->fd != victim: - त्रुटि संदेश:
malloc(): smallbin double linked list corrupted - कंसोलिडेट के दौरान चेक प्रत्येक फास्ट बिन चंक के लिए किए गए:
- यदि चंक गलत संरेखित है तो ट्रिगर करें:
- त्रुटि संदेश:
malloc_consolidate(): unaligned fastbin chunk detected - यदि चंक का आकार उस आकार से भिन्न है जो इसे होना चाहिए:
- त्रुटि संदेश:
malloc_consolidate(): invalid chunk size - यदि पिछले चंक का उपयोग नहीं हो रहा है और पिछले चंक का आकार
prev_chunkद्वारा निर्दिष्ट आकार से भिन्न है: - त्रुटि संदेश:
corrupted size vs. prev_size in fastbins - अनसॉर्टेड बिन खोज के दौरान चेक:
- यदि चंक का आकार अजीब है (बहुत छोटा या बहुत बड़ा):
- त्रुटि संदेश:
malloc(): invalid size (unsorted) - यदि अगले चंक का आकार अजीब है (बहुत छोटा या बहुत बड़ा):
- त्रुटि संदेश:
malloc(): invalid next size (unsorted) - यदि अगले चंक द्वारा निर्दिष्ट पिछले आकार चंक के आकार से भिन्न है:
- त्रुटि संदेश:
malloc(): mismatching next->prev_size (unsorted) - यदि
victim->bck->fd == victimनहीं है याvictim->fd == av (arena)नहीं है: - त्रुटि संदेश:
malloc(): unsorted double linked list corrupted - चूंकि हम हमेशा अंतिम एक की जांच कर रहे हैं, इसका fd हमेशा arena संरचना की ओर इशारा करना चाहिए।
- यदि अगला चंक यह नहीं बता रहा है कि पिछले का उपयोग हो रहा है:
- त्रुटि संदेश:
malloc(): invalid next->prev_inuse (unsorted) - यदि
fwd->bk_nextsize->fd_nextsize != fwd: - त्रुटि संदेश:
malloc(): largebin double linked list corrupted (nextsize) - यदि
fwd->bk->fd != fwd: - त्रुटि संदेश:
malloc(): largebin double linked list corrupted (bk) - लार्ज बिन (इंडेक्स द्वारा) खोज के दौरान चेक:
bck->fd-> bk != bck:- त्रुटि संदेश:
malloc(): corrupted unsorted chunks - लार्ज बिन (अगले बड़े) खोज के दौरान चेक:
bck->fd-> bk != bck:- त्रुटि संदेश:
malloc(): corrupted unsorted chunks2 - टॉप चंक उपयोग के दौरान चेक:
chunksize(av->top) > av->system_mem:- त्रुटि संदेश:
malloc(): corrupted top size
tcache_get_n
tcache_get_nमें चेक:- यदि चंक गलत संरेखित है:
- त्रुटि संदेश:
malloc(): unaligned tcache chunk detected
tcache_thread_shutdown
tcache_thread_shutdownमें चेक:- यदि चंक गलत संरेखित है:
- त्रुटि संदेश:
tcache_thread_shutdown(): unaligned tcache chunk detected
__libc_realloc
__libc_reallocमें चेक:- यदि पुराना पॉइंटर गलत संरेखित है या आकार गलत था:
- त्रुटि संदेश:
realloc(): invalid pointer
_int_free
अधिक जानकारी के लिए देखें:
_int_freeकी शुरुआत में चेक:- पॉइंटर संरेखित है:
- त्रुटि संदेश:
free(): invalid pointer - आकार
MINSIZEसे बड़ा और आकार भी संरेखित है: - त्रुटि संदेश:
free(): invalid size _int_freetcache में चेक:- यदि
mp_.tcache_countसे अधिक प्रविष्टियाँ हैं: - त्रुटि संदेश:
free(): too many chunks detected in tcache - यदि प्रविष्टि संरेखित नहीं है:
- त्रुटि संदेश:
free(): unaligned chunk detected in tcache 2 - यदि मुक्त किया गया चंक पहले से ही मुक्त किया गया था और tcache में चंक के रूप में मौजूद है:
- त्रुटि संदेश:
free(): double free detected in tcache 2 _int_freeफास्ट बिन में चेक:- यदि चंक का आकार अमान्य है (बहुत बड़ा या छोटा) ट्रिगर करें:
- त्रुटि संदेश:
free(): invalid next size (fast) - यदि जोड़ा गया चंक पहले से ही फास्ट बिन के शीर्ष पर था:
- त्रुटि संदेश:
double free or corruption (fasttop) - यदि शीर्ष पर चंक का आकार उस चंक के आकार से भिन्न है जिसे हम जोड़ रहे हैं:
- त्रुटि संदेश:
invalid fastbin entry (free)
_int_free_merge_chunk
_int_free_merge_chunkमें चेक:- यदि चंक शीर्ष चंक है:
- त्रुटि संदेश:
double free or corruption (top) - यदि अगला चंक एरेना की सीमाओं के बाहर है:
- त्रुटि संदेश:
double free or corruption (out) - यदि चंक को उपयोग में नहीं चिह्नित किया गया है (अगले चंक से prev_inuse में):
- त्रुटि संदेश:
double free or corruption (!prev) - यदि अगले चंक का आकार बहुत छोटा या बहुत बड़ा है:
- त्रुटि संदेश:
free(): invalid next size (normal) - यदि पिछले चंक का उपयोग नहीं हो रहा है, तो यह कंसोलिडेट करने की कोशिश करेगा। लेकिन, यदि
prev_sizeपिछले चंक में निर्दिष्ट आकार से भिन्न है: - त्रुटि संदेश:
corrupted size vs. prev_size while consolidating
_int_free_create_chunk
_int_free_create_chunkमें चेक:- अनसॉर्टेड बिन में चंक जोड़ते समय, जांचें कि
unsorted_chunks(av)->fd->bk == unsorted_chunks(av): - त्रुटि संदेश:
free(): corrupted unsorted chunks
do_check_malloc_state
do_check_malloc_stateमें चेक:- यदि गलत संरेखित फास्ट बिन चंक:
- त्रुटि संदेश:
do_check_malloc_state(): unaligned fastbin chunk detected
malloc_consolidate
malloc_consolidateमें चेक:- यदि गलत संरेखित फास्ट बिन चंक:
- त्रुटि संदेश:
malloc_consolidate(): unaligned fastbin chunk detected - यदि गलत फास्ट बिन चंक आकार:
- त्रुटि संदेश:
malloc_consolidate(): invalid chunk size
_int_realloc
_int_reallocमें चेक:- आकार बहुत बड़ा या बहुत छोटा है:
- त्रुटि संदेश:
realloc(): invalid old size - अगले चंक का आकार बहुत बड़ा या बहुत छोटा है:
- त्रुटि संदेश:
realloc(): invalid next size
tip
AWS हैकिंग सीखें और अभ्यास करें:
HackTricks Training AWS Red Team Expert (ARTE)
GCP हैकिंग सीखें और अभ्यास करें:
HackTricks Training GCP Red Team Expert (GRTE)
Azure हैकिंग सीखें और अभ्यास करें:
HackTricks Training Azure Red Team Expert (AzRTE)
HackTricks का समर्थन करें
- सदस्यता योजनाओं की जांच करें!
- हमारे 💬 Discord समूह या टेलीग्राम समूह में शामिल हों या हमें Twitter 🐦 @hacktricks_live** पर फॉलो करें।**
- हैकिंग ट्रिक्स साझा करें और HackTricks और HackTricks Cloud गिटहब रिपोजिटरी में PRs सबमिट करें।
HackTricks