(IDE/Editor) Shortcut + Setup
| | | | | | — | — | — | — | | 기능 | VScode | IntelliJ | Visual Studio | | 에디터로 포커스 | Ctrl + 1 | Esc | | | goto match brace | Ctrl + Shift + \ | | | | 전체 정렬 | Alt + Shift + F | Ctr...
| | | | | | — | — | — | — | | 기능 | VScode | IntelliJ | Visual Studio | | 에디터로 포커스 | Ctrl + 1 | Esc | | | goto match brace | Ctrl + Shift + \ | | | | 전체 정렬 | Alt + Shift + F | Ctr...
분명 돼야 하는데 안된다면 i r로 레지스터 모두가 정상인 상태로 설정되어 있는지 확인해본다. Sigreturn int instruction을 실행하면, kernel mode로 진입하면서 user mode context를 kernel stack에 push 해놓는다. signal을 감지하는 것은 kernel mode에서 수행된다. k...
The House of Einherjar https://github.com/umbum/pwn/blob/master/how2heap/house_of_einherjar.c **off-by-one( null) Force 응용( huge consolidate ) + unlink check 회피.** fake chunk까지 consolidate 하...
The House of Force https://github.com/shellphish/how2heap/blob/master/house_of_force.c 존내 큰 chunk를 할당해버린다! top chunk size를 -1로 만들어 mmap() 호출을 방지하고, target addr이 있는 곳 까지의 차 만큼의 커다란 chunk를 할당하면 그 ...
The House of Mind http://phrack.org/issues/66/10.html https://gbmaster.wordpress.com/2015/06/15/x86-exploitation-101-house-of-mind-undead-and-loving-it/ unlink와 반대로, chunk가 free되면서 bins와 link하는 ...
https://github.com/shellphish/how2heap/blob/master/unsorted_bin_attack.c unsorted bin에 있는 chunk가 할당될 때, 역시 unsorted bin에서 chunk를 제거하기 위해 unlink가 일어난다. 단, 여기서는 unlink macro를 사용하지 않고 처리한다. [malloc...
unlink unlink는 consolidate가 발생할 때 연결되어 있던 bins list에서 chunk를 제거하기 위해 호출된다. PREV\_INUSE를 체크해 호출하기 때문에 fastbin chunk에 PREV_INUSE unset한다고 해서 회피할 수 있는 것이 아니다. glibc 2.25’s unlink macro #define unlin...
The House of Lore free’d small/fast chunk의 bk를 fake_chunk addr로 overwrite. https://github.com/umbum/pwn/blob/master/how2heap/house_of_lore_fast.c https://github.com/umbum/pwn/blob/master/how2heap...
fastbin attack free’d fast chunk의 fd를 fake_chunk addr로 overwrite. 다음 malloc(fast)때 overwrited fast chunk가 반환되면서 fastbin에 ` fake_chunkaddr이 추가되므로, 그 다음 반환 chunk는 fake_chunk`. fake\_chunk[1] = FAST...
The House of Spirit stack overflow로 stack에 있는 포인터 변수 hptr을fake_chunk addr로 overwrite. 이후 free(hptr)하면 fastbin에는 fake\_chunkaddr이 추가되므로, 그 다음 반환 chunk는 ` fake_chunk` /\* set fake\_chunk \*/ fake\_...