티스토리 뷰

Pwnable/정리

SROP(Sigreturn ROP)

xxvd 2018. 7. 11. 01:23

우선 시스템 콜(system call)이 뭔지부터 알아보자면 커널안에 구현되어있는 API로 FILE I/O, SOCKET, read, write, printf, scanf와 같은 POSIX C 함수들 모두 다, 즉 OS에서 제공하는 기본적인 기능들이 시스템 콜로 구현되어 있다.


일반적인 rop가 인자 세팅해주고 마지막에 함수 call 해서 하는 것이라면 srop는 eax(64bit 이면 rax)에 해당 함수의 시스콜 넘버를 주고,


rop에서 인자 세팅 해주는것 처럼 세팅해 주고 int 0x80으로 콜 해주면 된다. 근데 가젯이 없을 수도 있거나 찾고싶은 인스트럭션이 있는데


다른 인스트럭션도 딸려나오는 경우가 있다. 보통 syscall rop는 스태틱 컴파일 돼있을 때, got, plt 가 없어서 rop를 못하기 때문에 한다.



'Pwnable > 정리' 카테고리의 다른 글

to understand heap  (0) 2018.07.21
signal handler  (0) 2018.07.11
ㅠㅠ  (0) 2018.05.07
assembly 정리,  (0) 2018.04.24
AT&T 랑 Intel 차이(?)  (0) 2018.04.24
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
TAG
more
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함