티스토리 뷰
반응형
unlink_chunk()함수에서는 우선 요청된 Chunk p와, p->prev->next와 같은 사이즈인지 비교한다.
두번째로,
if ( FD->bk != p || BK->fd != p )
기존에 없었던, 이부분을 검사한다. 이 부분을 우회하는 기법이 unsafe unlink이다.
위에 두 조건을 통과하면,
FD->bk = BK,
BK->fd = FD
를 통해 unlink 하고, large bin의 경우 fd_nextsize와 bk_nextsizxe를 unlink해준다.
나머지 bin의 경우는 그대로 종료한다.
반응형
'Pwnable > Heap' 카테고리의 다른 글
[Heap Exploit] Fastbin_dup Consolidate (0) | 2019.05.22 |
---|---|
[Heap Exploit] Fastbin_dup (Feat. how2heap) (0) | 2019.05.22 |
[Heap] malloc.c 분석(4) - malloc() (0) | 2019.05.06 |
[Heap] malloc.c 분석(2) - struct & etc (0) | 2019.05.05 |
[Heap] malloc.c 분석(1) (0) | 2019.05.04 |