본문 바로가기

분류 전체보기

(154)
return to csu 잘되어있는 곳 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의 함수가 호출 된다.
웹-파이썬 모듈 잘 되어 있는 곳 https://dgkim5360.tistory.com/entry/python-requests
빡머리인 나를 위한 해당주소를 가르키고 있는 주소를 찾기 예를 들어 puts의 got를 가르키고 있는 주소를 찾을려고 하면gdb 내에서 [find got주소(해당주소)]를 통해 찾을 수있다
바이너리 분석도구 정리되어 있는 곳 http://grayfieldbox.tistory.com/entry/%EB%B0%94%EC%9D%B4%EB%84%88%EB%A6%AC-%EB%B6%84%EC%84%9D%EC%9A%A9-%EB%8F%84%EA%B5%AC
원샷가젯 잘 되어 있는 곳 https://xerxes-break.tistory.com/313
빡머리인 나를 위한 puts에 관한 팁 leak하려는 실제 주소에 (0x00 ->NULL)값이 들어가면 NULL로 인식되면서 출력이 끊긴다.
빡머리인 나를 위한 offset구하기 주소 보기 readelf -r ./실행파일 System(함수)의 오프셋 구하기 nm -D /lib/i386-linux-gnu/libc.so.6 | grep "system" ->nm -D libc | grep "찾을 함수" Bin/sh(string)의 오프셋 구하기 strings -tx /lib/i386-linux-gnu/libc.so.6 | grep "/bin/sh" 자꾸까먹네; readelf -s /lib/i386-linux-gnu/libc.so.6 | grep scanf
시스템 각종 툴 사용법 모음 http://tribal1012.tistory.com/143