malloc檢查
fastbin中堆塊的結(jié)構(gòu)如圖
其中size of previous chunk 和 size of chunk各占去8bytes(x64)。
在進行malloc分配堆塊的時候踏志,會進行對待分配內(nèi)存的檢查轿秧,但只是檢查堆塊大小標志位和將分配的堆塊的大小是否符合胖缤,所以只需在構(gòu)造時利用字節(jié)錯位等当辐,找到合適的位置较鼓,保證這個地址的數(shù)據(jù)滿足是0x******** 000000××的形式醋闭。"xx" + 0x10在fastbin的范圍內(nèi)便能夠通過檢驗窄驹。
?1.因為在比較中,后者是4bytes证逻,所以只要保證選取的size of data的低4bytes滿足0x000000xx即可乐埠,而前面無所謂即為0x********。
2.沒有對其檢查,所以可以隨意搞偏移丈咐,而不必要找8的倍數(shù)作為地址瑞眼。