728x90
BOF(Buffer Over Flow)
메모리에 할당된 버퍼의 양을 초과하는 데이터를 입력하여 프로그램의 복귀 주소(return address)를 조작, 궁극적으로 해커가 원하는 코드를 실행한다.
▶이런식으로 8칸의 메모리가 4칸 짜리 버퍼가 있을 때 , 버퍼를 초과하는 값을 입력하면 버퍼 이후의 값이 바뀌게 된다.
BOF공격원리는 내가 생각하기에 이 그림으로 설명이 가능할 거 같다
Buffer부터 값을 채워 다 채운후 SFP까지 값을 채운뒤에
RET
까지 접근하도록 넘치게 값을 넣어주면
RET = POP eip
이기 때문에 다음 실행해야 할 명령어가 존재하는 메모리 주소를 변경하여
해커가 원하는 명령을 실행 할 수 있도록 해준다.
반응형