http://st4nw.tistory.com/101
libc_csu_init 부분을 이용하는 기술로
위의 블로그에서 써져있는 것처럼 gadget1 부분에서 r15, r14, r13에 1, 2, 3번째 인자를 넣고 , r12에는 함수의 주소를, rbx에는 0을 넣어주면(gadget1부분과 gadget2부분 사이에 cmp부분이 걸리므로 [rbp를 rbx에 넣은값+1]로 설정해줘야 한다.)
gadget2에서 mov으로 레지스터가 세팅되고 call (r12 + rbx * 8)->rbx를 0으로 넣어줬으니 r12의 함수가 호출 된다.
'꿀팁!' 카테고리의 다른 글
angr 정리 잘되어있는 곳 (0) | 2019.01.18 |
---|---|
이미지 비교 잘되어 있는 곳(탬플릿 매칭) (0) | 2019.01.07 |
웹-파이썬 모듈 잘 되어 있는 곳 (0) | 2018.11.30 |
빡머리인 나를 위한 해당주소를 가르키고 있는 주소를 찾기 (0) | 2018.11.26 |
바이너리 분석도구 정리되어 있는 곳 (0) | 2018.11.18 |