시스템 해킹에서 ROP 기법이 뭔지 설명해주세요. 어려워서 이해가 안 됩니다.
ROP는 DEP(NX bit)로 스택에서 코드 실행이 불가능할 때 기존 코드 조각(gadget)을 연결하여 공격하는 기법입니다.
원리:
pop rdi; ret
예시 (system("/bin/sh") 호출):
[buffer overflow][pop rdi; ret] ← gadget 1["/bin/sh" 주소] ← rdi에 들어갈 값[system() 주소] ← 다음 ret로 점프
도구:
댓글 2
ROP는 DEP(NX bit)로 스택에서 코드 실행이 불가능할 때 기존 코드 조각(gadget)을 연결하여 공격하는 기법입니다.
원리:
pop rdi; ret같은 조각예시 (system("/bin/sh") 호출):
도구: