-
malloc chunk2memHack/Pwnable 2016. 12. 1. 01:30
#define chunk2mem(p) ((void*)((char*)(p) + 2*SIZE_SZ))
chunk2mem은 여기저기 많이 사용되는데, p를 인자로 받는다.
p는 해당 청크를 나타내는데, define으로 뒤에 인자를 받아들인다.
저 값이 무엇인지 대충봐도, p의 실제 주소를 갖고오고 거기에 16을 더한다. 그니까, prev_size와 size,fd,bk 이후에 장되는 영역 주소를
나타내주는 함수이다.
test.c
123456789main(){//((void*)((char*)(p) + 2*SIZE_SZ))char *p1 = malloc(256);printf("%p\n",((void*)((char*)(p1) + 2*8)));return 0;}cs 'Hack > Pwnable' 카테고리의 다른 글
malloc - do_check_chunk() (0) 2016.12.01 malloc - unlink (0) 2016.12.01 malloc분석 (0) 2016.12.01 [BlackHat Heap] GNU libc's double free() protection (0) 2016.11.30 [BlackHat Heap] Traditional double free() exploitation (0) 2016.11.30